[GHC] #14886: Add max GC pause to GHC.Stats/-t --machine-readable
GHC
ghc-devs at haskell.org
Sat Mar 3 16:53:32 UTC 2018
#14886: Add max GC pause to GHC.Stats/-t --machine-readable
-------------------------------------+-------------------------------------
Reporter: Fuuzetsu | Owner: (none)
Type: feature | Status: new
request |
Priority: normal | Milestone:
Component: Compiler | Version: 8.2.2
Keywords: | Operating System: Unknown/Multiple
Architecture: | Type of failure: None/Unknown
Unknown/Multiple |
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
Sometimes we're interested in latency of our programs. Often the upper
highest percentiles are by garbage collector pauses due to stop-the-world
implementation.
It seems that currently the only way to see the highest pause is to use
the {{{-s}}} flag or alternatively {{{-S}}}. This is problematic in two
scenarios:
1. You don't have a human at the monitor parsing the {{{-s}}} output.
2. You are unable to get the maximum pause statistic programmatically
inside the program itself.
We do have {{{-t -machine-readable}}} which is nearly what I'd want but
missing the actual pause information. Either that should include all the
extra info from {{{-s}}} or {{{-s}}} should have machine-readable output
format too.
There is the {{{-S}}} option which will print garbage collections as they
happen. We could parse and manually track the highest pause time but it
requires an external process and a parser. If you want to get that
information back into the process then you have to do even more work.
{{{GHC.Stats}}} is of no help. It does not track or expose pause values.
Even the "last GC info" APIs don't provide this (and they are not a
solution anyway as you can only get info on last GC).
I would therefore like to request two similar features:
* Add relevant information from {{{-s}}} to {{{-t}}} machine readable
output or add machine readable format option to {{{-s}}}.
* Add maximum pause information to GHC.Stats interface.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14886>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list