Ticket #5727 (closed bug: worksforme)

Opened 18 months ago

Last modified 14 months ago

Unclear documentation about .eventlog's spark information flag

Reported by: shelarcy Owned by: duncan
Priority: high Milestone: 7.4.2
Component: Documentation Version: 7.3
Keywords: Cc: shelarcy@…
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Difficulty: Unknown
Test Case: Blocked By:
Blocking: Related Tickets:

Description

Unclear documentation about .eventlog's spark information flag

GHC 7.4.1 RC 1 User's Guide just describes that -l option's p flag enable/disable sampled result and f enable/disable flag fully accurate result.

But when enabled f without enabled p flag, .eventlog file doesn't have any useful information about sparks.

$ ./ParallelTest +RTS -l-af
$ ./ParallelTest +RTS -l-pf

If f flag requires p flag, please document that or change f flag's behavior.

Change History

Changed 18 months ago by shelarcy

  • cc shelarcy@… added

Changed 18 months ago by igloo

  • priority changed from normal to high
  • difficulty set to Unknown
  • milestone set to 7.4.1

Thanks for the report

Changed 17 months ago by igloo

  • milestone changed from 7.4.1 to 7.4.2

Changed 14 months ago by duncan

  • status changed from new to closed
  • resolution set to worksforme

I cannot reproduce the behaviour. It works correctly for me with ghc-7.4.1.

Using +RTS -l-af means we get no events (-a) except for the detailed spark events (f) (and default ones like capset) and indeed that's what we get with ghc-7.4.1.

e.g.

./parlist +RTS  -l-af
ghc-events show parlist.eventlog | less

[..snip...]
  1841000: cap 0: spark created
  1842000: cap 0: spark created
  1843000: cap 0: spark created
  1844000: cap 0: spark created
  1845000: cap 0: spark created

Using +RTS -l-pf means we get the default set of events, though without sampled spark events (-p), and with detailed spark events (f) and again, that's just what we do see with ghc-7.4.1.

./parlist +RTS  -l-pf
ghc-events show parlist.eventlog | less

[..snip...]
  2471000: cap 0: thread 2 is runnable
  2504000: cap 0: running thread 3
  2729000: cap 0: spark created
  2733000: cap 0: spark created

If you're seeing something different, or you still think the behaviour or documentation are confusing then please reopen the ticket. Thanks.

This is only a guess, but perhaps you've got an old version of ghc-events that does not show the detailed spark events. Does the ghc-events show produce this header:

  34: Spark counters (size 56)
  35: Spark create (size 0)
  36: Spark dud (size 0)
  37: Spark overflow (size 0)
  38: Spark run (size 0)
  39: Spark steal (size 2)
  40: Spark fizzle (size 0)
  41: Spark GC (size 0)

Where my log says cap 0: spark created, perhaps yours says something like cap 0: event 35.

Note: See TracTickets for help on using tickets.