X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=docs%2Fusers_guide%2Fruntime_control.xml;h=62a01acdda4b35b98dbe307c4a24c7fd48ff538d;hp=e15d5cc080b36e6d2b5095d0f3945c7d6279ea7a;hb=dcf739bd7fb7de140be3bafb4ce211e2e5c7bba9;hpb=93db1991b5cacf8357493a2e17fbbfb485f3205b diff --git a/docs/users_guide/runtime_control.xml b/docs/users_guide/runtime_control.xml index e15d5cc..62a01ac 100644 --- a/docs/users_guide/runtime_control.xml +++ b/docs/users_guide/runtime_control.xml @@ -90,14 +90,14 @@ - + RTS - option + option Sets the interval that the RTS clock ticks at. The runtime uses a single timer signal to count ticks; this timer signal is used to control the context switch timer () and the heap profiling + linkend="using-concurrent" />) and the heap profiling timer . Also, the time profiler uses the RTS timer signal directly to record time profiling samples. @@ -108,6 +108,26 @@ the or options. However, setting is required in order to increase the resolution of the time profiler. + + Using a value of zero disables the RTS clock + completely, and has the effect of disabling timers that + depend on it: the context switch timer and the heap profiling + timer. Context switches will still happen, but + deterministically and at a rate much faster than normal. + Disabling the interval timer is useful for debugging, because + it eliminates a source of non-determinism at runtime. + + + + + + RTS + option + + If yes (the default), the RTS installs signal handlers to catch + things like ctrl-C. This option is primarily useful for when + you are using the Haskell code as a DLL, and want to set your + own signal handlers. @@ -430,7 +450,7 @@ The RTS options related to profiling are described in , those for concurrency in - , and those for parallelism in + , and those for parallelism in . @@ -641,6 +661,29 @@ char *ghc_rts_opts = "-H128m -K1m"; ghc/compiler/parser/hschooks.c in a GHC source tree. + + + Getting information about the RTS + + RTS + + It is possible to ask the RTS to give some information about + itself. To do this, use the flag, e.g. + +$ ./a.out +RTS --info + [("GHC RTS", "Yes") + ,("GHC version", "6.7") + ,("RTS way", "rts_p") + ,("Host platform", "x86_64-unknown-linux") + ,("Build platform", "x86_64-unknown-linux") + ,("Target platform", "x86_64-unknown-linux") + ,("Compiler unregisterised", "NO") + ,("Tables next to code", "YES") + ] + + The information is formatted such that it can be read as a + of type [(String, String)]. +