[GHC] #14886: Add max GC pause to GHC.Stats/-t --machine-readable

#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

#14886: Add max GC pause to GHC.Stats/-t --machine-readable -------------------------------------+------------------------------------- Reporter: Fuuzetsu | Owner: (none) Type: feature request | Status: new Priority: normal | Milestone: Component: Runtime System | Version: 8.2.2 Resolution: | Keywords: newcomer Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * keywords: => newcomer * component: Compiler => Runtime System Comment: Indeed having this information in a machine-readable form would be quite useful. Frankly, I wonder whether it might be helpful to just export everything from `-s` in JSON or some similarly ubiquitous format. This would greatly simplify parsing. Patches welcome! -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14886#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#14886: Add max GC pause to GHC.Stats/-t --machine-readable -------------------------------------+------------------------------------- Reporter: Fuuzetsu | Owner: (none) Type: feature request | Status: closed Priority: normal | Milestone: 8.6.1 Component: Runtime System | Version: 8.2.2 Resolution: fixed | Keywords: newcomer Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #14660 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by bgamari): * status: new => closed * resolution: => fixed * related: => #14660 * milestone: => 8.6.1 Comment: For the record, pause times were added to `-t` in #14660. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14886#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC