duog (Doug Wilson)
User

Projects

User does not belong to any projects.

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Thursday

  • Clear sailing ahead.

User Details

User Since
Feb 28 2017, 2:27 PM (51 w, 1 h)
Availability
Available

Recent Activity

Sun, Feb 11

duog added a comment to D4404: StgLint overhaul.

Wonderful. Does the test suite pass with EXTRA_HC_OPTS=-dstg-lint? If so, should this be enabled by default?

Sun, Feb 11, 1:09 PM

Tue, Feb 6

duog updated the diff for D4391: Several fixes to work with ghc-head.

Actually fix threads006

Tue, Feb 6, 7:14 PM
duog updated the diff for D4303: rts, base: Refactor stats.c to improve --machine-readable report.

Rebase

Tue, Feb 6, 6:39 PM
duog updated the diff for D4302: rts: Add --internal-counters RTS flag and several counters.

Add PROF_SPIN guards to CMM

Tue, Feb 6, 6:39 PM
duog created D4392: rts: fix barf format attribute.
Tue, Feb 6, 5:35 PM
duog added a comment to D4392: rts: fix barf format attribute.

Sorry for the spam @bgamari I don't actually have a windows box to test these on.

Tue, Feb 6, 5:35 PM
duog created D4391: Several fixes to work with ghc-head.
Tue, Feb 6, 5:09 PM
duog created D4390: rts: fix some barf format specifiers..
Tue, Feb 6, 4:20 PM
duog updated the diff for D4303: rts, base: Refactor stats.c to improve --machine-readable report.
  • Rebased;
  • Fixed reported avg/max pause time;
  • Add TODO comment in mut_user_time_until.
Tue, Feb 6, 3:30 PM
duog retitled D4303: rts, base: Refactor stats.c to improve --machine-readable report from [rts] Refactor stats.c, adding all information from '+RTS -s' to '+RTS -t --machine-readable' to rts, base: Refactor stats.c to improve --machine-readable report.
Tue, Feb 6, 3:30 PM
duog added a comment to D4389: testsuite: Add newline to test output.

The end of line whitespace cleanup was unintentional, but stand I by it.

Tue, Feb 6, 3:30 PM
duog retitled D4302: rts: Add --internal-counters RTS flag and several counters from [rts] [base] Add --internal-counters RTS flag and several counters to rts: Add --internal-counters RTS flag and several counters.
Tue, Feb 6, 3:30 PM
duog added inline comments to D4302: rts: Add --internal-counters RTS flag and several counters.
Tue, Feb 6, 3:30 PM
duog updated the diff for D4302: rts: Add --internal-counters RTS flag and several counters.
  • Rebase;
  • Remove counters from RTSStats;
  • Update Note;
  • Do counter increments in StgMiscClosures.cmm;
  • Remove REVEIWERS comments.
Tue, Feb 6, 3:30 PM
duog created D4389: testsuite: Add newline to test output.
Tue, Feb 6, 2:33 PM

Sun, Feb 4

duog planned changes to D4303: rts, base: Refactor stats.c to improve --machine-readable report.
Sun, Feb 4, 2:52 PM
duog added a comment to D4302: rts: Add --internal-counters RTS flag and several counters.

I like the idea of having a local counter with an atomic update to keep the counter values accurate. Maybe a future change?

Yes, there's enough here already.

Sun, Feb 4, 2:43 PM

Tue, Jan 23

duog added a comment to D4339: [rts] Add instrumentation to look for threads getting stuck in gc.

Thank you for your help!

Tue, Jan 23, 3:44 PM
duog abandoned D4339: [rts] Add instrumentation to look for threads getting stuck in gc.
Tue, Jan 23, 3:43 PM
duog updated the diff for D4339: [rts] Add instrumentation to look for threads getting stuck in gc.

Correct entered/exit counts.

Tue, Jan 23, 3:42 PM
duog added a comment to D4339: [rts] Add instrumentation to look for threads getting stuck in gc.

So there's a bug somewhere? That's interesting! Does the program actually crash or just hang?

Tue, Jan 23, 3:38 AM

Mon, Jan 22

duog updated the diff for D4339: [rts] Add instrumentation to look for threads getting stuck in gc.

Improve test

Mon, Jan 22, 5:49 PM
duog created D4339: [rts] Add instrumentation to look for threads getting stuck in gc.
Mon, Jan 22, 4:41 PM

Jan 16 2018

duog added a comment to D4303: rts, base: Refactor stats.c to improve --machine-readable report.

The diff has changed too much for these inline comment to be useful, but nevertheless.

Jan 16 2018, 9:25 PM
duog updated the summary of D4303: rts, base: Refactor stats.c to improve --machine-readable report.
Jan 16 2018, 9:22 PM
duog added a dependency for D4302: rts: Add --internal-counters RTS flag and several counters: D4300: [rts] Adjust whitehole_spin.
Jan 16 2018, 9:21 PM
duog added a dependent revision for D4300: [rts] Adjust whitehole_spin: D4302: rts: Add --internal-counters RTS flag and several counters.
Jan 16 2018, 9:21 PM
duog retitled D4302: rts: Add --internal-counters RTS flag and several counters from [rts] Add spin and yield counters for reallyLockClosure and waitForGcThreads to [rts] [base] Add --internal-counters RTS flag and several counters.
Jan 16 2018, 9:20 PM
duog removed a dependency for D4302: rts: Add --internal-counters RTS flag and several counters: D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats..
Jan 16 2018, 9:18 PM
duog removed a dependent revision for D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats.: D4302: rts: Add --internal-counters RTS flag and several counters.
Jan 16 2018, 9:18 PM
duog removed a dependency for D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats.: D4300: [rts] Adjust whitehole_spin.
Jan 16 2018, 9:18 PM
duog removed a dependent revision for D4300: [rts] Adjust whitehole_spin: D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats..
Jan 16 2018, 9:18 PM
duog abandoned D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats..

Squashing this into D4302, with the promised Note

Jan 16 2018, 9:18 PM
duog updated the diff for D4303: rts, base: Refactor stats.c to improve --machine-readable report.
  • Rebased
  • Remove unnecessary fields from RTSSummaryStats
  • Add init times to RTSStats
Jan 16 2018, 9:17 PM
duog updated the diff for D4302: rts: Add --internal-counters RTS flag and several counters.
  • Rebased.
  • Absorbed D4301.
  • Added --internal-counters flag
  • Added a Note
  • Added several more counters.
  • Several comments marked REVEIWERS where I'm unsure
Jan 16 2018, 9:04 PM
duog updated the diff for D4300: [rts] Adjust whitehole_spin.

Rebased.

Jan 16 2018, 8:36 PM
duog planned changes to D4303: rts, base: Refactor stats.c to improve --machine-readable report.

Okay, I'll make the changes.

Jan 16 2018, 10:30 AM

Jan 15 2018

duog added a comment to D4303: rts, base: Refactor stats.c to improve --machine-readable report.

I think I need to remove all conditional compilation in RTSStatsSummary to facilitate adding it to GHC.Stats, will that be ok?

Jan 15 2018, 3:39 PM
duog added inline comments to D4303: rts, base: Refactor stats.c to improve --machine-readable report.
Jan 15 2018, 3:39 PM
duog added a comment to D4303: rts, base: Refactor stats.c to improve --machine-readable report.

I'm a bit concerned about the duplication between RTSSummaryStats and RTSStats. I suggest:

  • Let's add things to RTSStats where it makes sense
  • Remove things from RTSSummaryStats that are already in RTSStats
Jan 15 2018, 3:07 PM
duog added a comment to D4302: rts: Add --internal-counters RTS flag and several counters.

Some thoughts on spin lock counters:
I am a bit concerned that the spin counter can grossly undercount spins. I think in the worst case we can undercount by a factor of (n_capabilites -1). Highlighting the worst case is one of the primary purposes of these counters!

Jan 15 2018, 3:01 PM
duog planned changes to D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats..

They should be documented somewhere. Whether this be in a Note or the users guide, I think it's important that their semantics are defined somewhere besides the source code.

Jan 15 2018, 1:40 PM

Jan 14 2018

duog updated the diff for D4303: rts, base: Refactor stats.c to improve --machine-readable report.

Fix spelling.

Jan 14 2018, 8:56 PM
duog retitled D4303: rts, base: Refactor stats.c to improve --machine-readable report from [rts] [WIP] [RFC] Add all information from '+RTS -s' to '+RTS -t --machine-readable' to [rts] Refactor stats.c, adding all information from '+RTS -s' to '+RTS -t --machine-readable'.
Jan 14 2018, 8:51 PM
duog updated the diff for D4303: rts, base: Refactor stats.c to improve --machine-readable report.

Fix num_gcs

Jan 14 2018, 8:51 PM
duog updated the diff for D4303: rts, base: Refactor stats.c to improve --machine-readable report.

Huge refactoring. (Almost) No long lines.

Jan 14 2018, 8:45 PM

Jan 12 2018

duog added a comment to D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats..

Yes, this sounds quite useful. I do wish, however, that the meanings of these statistics were better documented.

Jan 12 2018, 4:09 PM

Jan 11 2018

duog updated the diff for D4303: rts, base: Refactor stats.c to improve --machine-readable report.

bytes_allocated -> bytes allocated

Jan 11 2018, 2:01 PM

Jan 10 2018

duog added a dependency for D4303: rts, base: Refactor stats.c to improve --machine-readable report: D4302: rts: Add --internal-counters RTS flag and several counters.
Jan 10 2018, 11:02 PM
duog added a dependent revision for D4302: rts: Add --internal-counters RTS flag and several counters: D4303: rts, base: Refactor stats.c to improve --machine-readable report.
Jan 10 2018, 11:02 PM
duog updated the summary of D4303: rts, base: Refactor stats.c to improve --machine-readable report.
Jan 10 2018, 11:01 PM
duog updated the Trac tickets for D4303: rts, base: Refactor stats.c to improve --machine-readable report.
Jan 10 2018, 11:01 PM
duog created D4303: rts, base: Refactor stats.c to improve --machine-readable report.
Jan 10 2018, 10:54 PM
duog added inline comments to D4302: rts: Add --internal-counters RTS flag and several counters.
Jan 10 2018, 10:45 PM
duog added a dependency for D4302: rts: Add --internal-counters RTS flag and several counters: D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats..
Jan 10 2018, 8:01 PM
duog added a dependent revision for D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats.: D4302: rts: Add --internal-counters RTS flag and several counters.
Jan 10 2018, 8:01 PM
duog added a dependency for D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats.: D4300: [rts] Adjust whitehole_spin.
Jan 10 2018, 8:00 PM
duog added a dependent revision for D4300: [rts] Adjust whitehole_spin: D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats..
Jan 10 2018, 8:00 PM
duog created D4302: rts: Add --internal-counters RTS flag and several counters.
Jan 10 2018, 8:00 PM
duog updated the summary of D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats..
Jan 10 2018, 7:35 PM
duog updated the diff for D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats..

Remove accidental inclusion from next diff.

Jan 10 2018, 7:30 PM
duog created D4301: [rts] Count yieldThread() calls in spin-locks, and show them in stats..
Jan 10 2018, 7:09 PM
duog created D4300: [rts] Adjust whitehole_spin.
Jan 10 2018, 6:52 PM

Jan 7 2018

duog added a comment to D4290: Haddock needs to pass visible modules for instance filtering.

Looks great, thanks!

Jan 7 2018, 3:29 PM

Jan 1 2018

duog abandoned D3833: Add HscYield callbacks to HscEnv.
Jan 1 2018, 4:31 PM
duog added a comment to D3833: Add HscYield callbacks to HscEnv.

Reworking See D3836

Jan 1 2018, 4:30 PM
duog abandoned D3832: Change HscEnv.hsc_HPT from HomePackageTable to IORef HomePackageTable.

Reworking. See D3836

Jan 1 2018, 4:30 PM
duog abandoned D3836: Add module ParUpsweep, and leverage it in GhcMake.parUpsweep to enable better parallelism.

I'm going to rework this. We can get most of the benefit by reorganising DriverPipeline a bit to allow GhcMake to parallelise hscIncrementalCompile and hscGenHardCode.

Jan 1 2018, 4:29 PM
duog added inline comments to D4279: Look through casts when calculating dict arg discount.
Jan 1 2018, 4:14 PM

Nov 29 2017

duog planned changes to D4242: StgLint: Don't lint the type of a unboxed tuple scrutinee after it's unarised.

Looks good. Could you add a Note to explain? Referring to the ticket is useful, but an explanation in the file is better!

Will do.

Nov 29 2017, 11:05 AM

Nov 28 2017

duog added a comment to D4123: Allow users to ignore optimization changes.

EDIT: Oh, I see you've already got a note to do this.

Nov 28 2017, 3:40 PM
duog created D4242: StgLint: Don't lint the type of a unboxed tuple scrutinee after it's unarised.
Nov 28 2017, 2:52 PM

Nov 21 2017

duog added a comment to D4220: FileCleanup: Eliminate non-determinism from temporary directory names.

To continue in the tradition of bikeshedding likely trivialities: ghc environment files and perhaps ghc version?

Nov 21 2017, 2:46 PM
duog added a comment to D4220: FileCleanup: Eliminate non-determinism from temporary directory names.

There is GHC_PACKAGE_PATH.

Nov 21 2017, 1:30 PM
duog added a comment to D4220: FileCleanup: Eliminate non-determinism from temporary directory names.

I may be paranoid, but I am a little concerned that two ghc's may run with the same command line arguments at the same time. It seems easy to include the environment and pwd in the hash?

Nov 21 2017, 12:57 PM

Nov 17 2017

duog added inline comments to D4121: Relocatable GHC.
Nov 17 2017, 8:53 PM
duog added a comment to D4155: Don't complain about UNPACK in -fno-code..

This seems great to me, but then I don't understand why -O0 suppressed this originally.

Nov 17 2017, 11:05 AM

Nov 15 2017

duog added a comment to D4201: testsuite: Add test for #14257.

Adding -rtsopts to the compilation command and -G1 to the RTS options of the invocation command gives a much larger sampleValue discrepancy using the instrumentation here.

Nov 15 2017, 5:56 PM
duog added a comment to D4201: testsuite: Add test for #14257.

Nice awk!

Nov 15 2017, 4:32 PM

Nov 12 2017

duog updated the summary of D4184: rts: Fix gc timing.
Nov 12 2017, 11:54 PM
duog updated the summary of D4184: rts: Fix gc timing.
Nov 12 2017, 11:53 PM
duog added a comment to D4184: rts: Fix gc timing.

This seems to fix at least Trac #14257 and Trac #14445. Reproducing the latter was a bit of a pain on master, I'll post a link to my setup tomorrow.

Nov 12 2017, 11:52 PM
duog updated the summary of D4184: rts: Fix gc timing.
Nov 12 2017, 11:50 PM
duog updated the diff for D4184: rts: Fix gc timing.

Improve commit message.

Nov 12 2017, 11:49 PM
duog created D4185: rts: Fix some inconsistencies in how retainer profiling and heap censuses are timed..
Nov 12 2017, 7:01 PM
duog abandoned D4183: rts: call stat_endGC prior to heapCensus.

This is wrong, see the ticket and D4184

Nov 12 2017, 6:48 PM
duog created D4184: rts: Fix gc timing.
Nov 12 2017, 6:47 PM
duog added a comment to D4183: rts: call stat_endGC prior to heapCensus.

This fixes the issue on the ticket, but may very well break something else. Relying on CI to validate.

Nov 12 2017, 3:54 PM
duog created D4183: rts: call stat_endGC prior to heapCensus.
Nov 12 2017, 3:48 PM

Nov 8 2017

duog updated the diff for D4170: Store ModIface exports in an array.

Typo

Nov 8 2017, 3:59 PM
duog planned changes to D4170: Store ModIface exports in an array.

Let's see how this looks on gipedia.

Nov 8 2017, 3:59 PM
duog created D4170: Store ModIface exports in an array.
Nov 8 2017, 3:18 PM

Nov 7 2017

duog added a comment to D4156: Change `OPTIONS_GHC -O` to `OPTIONS_GHC -O2`.

Gipedia diff here.

Nov 7 2017, 11:15 AM

Nov 6 2017

duog added a comment to D4156: Change `OPTIONS_GHC -O` to `OPTIONS_GHC -O2`.

Thanks!

Nov 6 2017, 4:00 PM
duog updated the diff for D4158: testsuite: Add test for #5889.

Oops

Nov 6 2017, 3:26 PM
duog updated the diff for D4158: testsuite: Add test for #5889.

Simplify a bit, and add more comments

Nov 6 2017, 3:25 PM
duog planned changes to D4158: testsuite: Add test for #5889.

Please hold off on merging this, I think I can simplify it somewhat.

Nov 6 2017, 2:18 PM

Nov 5 2017

duog updated the diff for D4156: Change `OPTIONS_GHC -O` to `OPTIONS_GHC -O2`.

Typo

Nov 5 2017, 6:53 PM
duog created D4158: testsuite: Add test for #5889.
Nov 5 2017, 5:11 PM
duog added a comment to D4155: Don't complain about UNPACK in -fno-code..

I'm not sure this is right. When using -fno-code to quickly check code one has written, surely we DO want to see this warning.

Nov 5 2017, 3:53 PM