code and then links it with a non-trivial runtime system (RTS),
which handles storage management, profiling, etc.</para>
code and then links it with a non-trivial runtime system (RTS),
which handles storage management, profiling, etc.</para>
you have some control over the behaviour of the RTS, by giving
special command-line arguments to your program.</para>
you have some control over the behaviour of the RTS, by giving
special command-line arguments to your program.</para>
- <para>Giving a <literal>+RTS -f</literal>
- <indexterm><primary><option>-f</option></primary><secondary>RTS option</secondary></indexterm> option
+ <para>Giving a <literal>+RTS -?</literal>
+ <indexterm><primary><option>-?</option></primary><secondary>RTS option</secondary></indexterm> option
will print out the RTS options actually available in your program
(which vary, depending on how you compiled).</para>
will print out the RTS options actually available in your program
(which vary, depending on how you compiled).</para>
<indexterm><primary>environment variable</primary><secondary>for
setting RTS options</secondary></indexterm>
<indexterm><primary>environment variable</primary><secondary>for
setting RTS options</secondary></indexterm>
RTS options are also taken from the environment variable
<envar>GHCRTS</envar><indexterm><primary><envar>GHCRTS</envar></primary>
</indexterm>. For example, to set the maximum heap size
RTS options are also taken from the environment variable
<envar>GHCRTS</envar><indexterm><primary><envar>GHCRTS</envar></primary>
</indexterm>. For example, to set the maximum heap size
<para>The hook <literal>ghc_rts_opts</literal><indexterm><primary><literal>ghc_rts_opts</literal></primary>
</indexterm>lets you set RTS
<para>The hook <literal>ghc_rts_opts</literal><indexterm><primary><literal>ghc_rts_opts</literal></primary>
</indexterm>lets you set RTS
to give your program a default heap and/or stack size that is
greater than the default. For example, to set <literal>-H128m
-K1m</literal>, place the following definition in a C source
to give your program a default heap and/or stack size that is
greater than the default. For example, to set <literal>-H128m
-K1m</literal>, place the following definition in a C source