From: Simon Marlow Date: Wed, 16 Sep 2009 15:28:15 +0000 (+0000) Subject: document -eventlog and the associated runtime options X-Git-Tag: 2009-11-15~311 X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=f2b113c66ee688dc4249098c08a3dfab93b99f1d document -eventlog and the associated runtime options --- diff --git a/docs/users_guide/phases.xml b/docs/users_guide/phases.xml index 1249a15..fdcb4eb 100644 --- a/docs/users_guide/phases.xml +++ b/docs/users_guide/phases.xml @@ -964,6 +964,29 @@ $ cat foo.hspp + + + + + + Link the program with the "eventlog" version of the + runtime system. A program linked in this way can generate + a runtime trace of events (such as thread start/stop) to a + binary file + program.eventlog, + which can then be interpreted later by various tools. See + for more information. + + + can be used + with . It is implied + by . + + + + + + diff --git a/docs/users_guide/runtime_control.xml b/docs/users_guide/runtime_control.xml index 2783daf..2b16234 100644 --- a/docs/users_guide/runtime_control.xml +++ b/docs/users_guide/runtime_control.xml @@ -817,6 +817,92 @@ + + Tracing + + tracing + events + eventlog files + + + When the program is linked with the + option (), runtime events can + be logged in two ways: + + + + + + In binary format to a file for later analysis by a + variety of tools. One such tool + is ThreadScopeThreadScope, + which interprets the event log to produce a visual parallel + execution profile of the program. + + + + + As text to standard output, for debugging purposes. + + + + + + + + + RTS option + + + + Log events in binary format to the + file program.eventlog, + where type indicates the type + of events to log. Currently there is only one type + supported: -ls, for scheduler events. + + + + The format of the log file is described by the header + EventLogFormat.h that comes with + GHC, and it can be parsed in Haskell using + the ghc-events + library. To dump the contents of + a .eventlog file as text, use the + tool show-ghc-events that comes with + the ghc-events + package. + + + + + + + + RTS option + + + + Log events as text to standard output, instead of to + the .eventlog file. + + + + + + + + The debugging + options also + generate events which are logged using the tracing framework. + By default those events are dumped as text to stdout + ( + implies ), but they may instead be stored in + the binary eventlog file by using the + option. + + + RTS options for hackers, debuggers, and over-interested souls @@ -853,14 +939,28 @@ - num + x -DRTS option - An RTS debugging flag; varying quantities of output - depending on which bits are set in - num. Only works if the RTS was - compiled with the option. + + An RTS debugging flag; only availble if the program was + linked with the option. Various + values of x are provided to + enable debug messages and additional runtime sanity checks + in different subsystems in the RTS, for + example +RTS -Ds -RTS enables debug + messages from the scheduler. + Use +RTS -? to find out which + debug flags are supported. + + + + Debug messages will be sent to the binary event log file + instead of stdout if the option is + added. This might be useful for reducing the overhead of + debug tracing. +