diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/jemalloc.xml.in | 88 |
1 files changed, 83 insertions, 5 deletions
diff --git a/doc/jemalloc.xml.in b/doc/jemalloc.xml.in index 21e401a..3f9ba20 100644 --- a/doc/jemalloc.xml.in +++ b/doc/jemalloc.xml.in @@ -916,6 +916,20 @@ mallctl("arena." STRINGIFY(MALLCTL_ARENAS_ALL) ".decay", </para></listitem> </varlistentry> + <varlistentry id="opt.metadata_thp"> + <term> + <mallctl>opt.metadata_thp</mallctl> + (<type>const char *</type>) + <literal>r-</literal> + </term> + <listitem><para>Controls whether to allow jemalloc to use transparent + huge page (THP) for internal metadata (see <link + linkend="stats.metadata">stats.metadata</link>). <quote>always</quote> + allows such usage. <quote>auto</quote> uses no THP initially, but may + begin to do so when metadata usage reaches certain level. The default + is <quote>disabled</quote>.</para></listitem> + </varlistentry> + <varlistentry id="opt.retain"> <term> <mallctl>opt.retain</mallctl> @@ -996,9 +1010,12 @@ mallctl("arena." STRINGIFY(MALLCTL_ARENAS_ALL) ".decay", (<type>const bool</type>) <literal>r-</literal> </term> - <listitem><para>Internal background worker threads enabled/disabled. See - <link linkend="background_thread">background_thread</link> for dynamic - control options and details. This option is disabled by + <listitem><para>Internal background worker threads enabled/disabled. + Because of potential circular dependencies, enabling background thread + using this option may cause crash or deadlock during initialization. For + a reliable way to use this feature, see <link + linkend="background_thread">background_thread</link> for dynamic control + options and details. This option is disabled by default.</para></listitem> </varlistentry> @@ -1022,7 +1039,7 @@ mallctl("arena." STRINGIFY(MALLCTL_ARENAS_ALL) ".decay", The default decay time is 10 seconds. See <link linkend="arenas.dirty_decay_ms"><mallctl>arenas.dirty_decay_ms</mallctl></link> and <link - linkend="arena.i.muzzy_decay_ms"><mallctl>arena.<i>.muzzy_decay_ms</mallctl></link> + linkend="arena.i.dirty_decay_ms"><mallctl>arena.<i>.dirty_decay_ms</mallctl></link> for related dynamic control options. See <link linkend="opt.muzzy_decay_ms"><mallctl>opt.muzzy_decay_ms</mallctl></link> for a description of muzzy pages.</para></listitem> @@ -1052,6 +1069,22 @@ mallctl("arena." STRINGIFY(MALLCTL_ARENAS_ALL) ".decay", for related dynamic control options.</para></listitem> </varlistentry> + <varlistentry id="opt.lg_extent_max_active_fit"> + <term> + <mallctl>opt.lg_extent_max_active_fit</mallctl> + (<type>size_t</type>) + <literal>r-</literal> + </term> + <listitem><para>When reusing dirty extents, this determines the (log + base 2 of the) maximum ratio between the size of the active extent + selected (to split off from) and the size of the requested allocation. + This prevents the splitting of large active extents for smaller + allocations, which can reduce fragmentation over the long run + (especially for non-active extents). Lower value may reduce + fragmentation, at the cost of extra active extents. The default value + is 6, which gives a maximum ratio of 64 (2^6).</para></listitem> + </varlistentry> + <varlistentry id="opt.stats_print"> <term> <mallctl>opt.stats_print</mallctl> @@ -1666,6 +1699,22 @@ malloc_conf = "xmalloc:true";]]></programlisting> for additional information.</para></listitem> </varlistentry> + <varlistentry id="arena.i.retain_grow_limit"> + <term> + <mallctl>arena.<i>.retain_grow_limit</mallctl> + (<type>size_t</type>) + <literal>rw</literal> + </term> + <listitem><para>Maximum size to grow retained region (only relevant when + <link linkend="opt.retain"><mallctl>opt.retain</mallctl></link> is + enabled). This controls the maximum increment to expand virtual memory, + or allocation through <link + linkend="arena.i.extent_hooks"><mallctl>arena.<i>extent_hooks</mallctl></link>. + In particular, if customized extent hooks reserve physical memory + (e.g. 1G huge pages), this is useful to control the allocation hook's + input size. The default is no limit.</para></listitem> + </varlistentry> + <varlistentry id="arena.i.extent_hooks"> <term> <mallctl>arena.<i>.extent_hooks</mallctl> @@ -2187,7 +2236,24 @@ struct extent_hooks_s { metadata structures (see <link linkend="stats.arenas.i.base"><mallctl>stats.arenas.<i>.base</mallctl></link>) and internal allocations (see <link - linkend="stats.arenas.i.internal"><mallctl>stats.arenas.<i>.internal</mallctl></link>).</para></listitem> + linkend="stats.arenas.i.internal"><mallctl>stats.arenas.<i>.internal</mallctl></link>). + Transparent huge page (enabled with <link + linkend="opt.metadata_thp">opt.metadata_thp</link>) usage is not + considered.</para></listitem> + </varlistentry> + + <varlistentry id="stats.metadata_thp"> + <term> + <mallctl>stats.metadata_thp</mallctl> + (<type>size_t</type>) + <literal>r-</literal> + [<option>--enable-stats</option>] + </term> + <listitem><para>Number of transparent huge pages (THP) used for + metadata. See <link + linkend="stats.metadata"><mallctl>stats.metadata</mallctl></link> and + <link linkend="opt.metadata_thp">opt.metadata_thp</link>) for + details.</para></listitem> </varlistentry> <varlistentry id="stats.resident"> @@ -2506,6 +2572,18 @@ struct extent_hooks_s { profiles.</para></listitem> </varlistentry> + <varlistentry id="stats.arenas.i.metadata_thp"> + <term> + <mallctl>stats.arenas.<i>.metadata_thp</mallctl> + (<type>size_t</type>) + <literal>r-</literal> + [<option>--enable-stats</option>] + </term> + <listitem><para>Number of transparent huge pages (THP) used for + metadata. See <link linkend="opt.metadata_thp">opt.metadata_thp</link> + for details.</para></listitem> + </varlistentry> + <varlistentry id="stats.arenas.i.resident"> <term> <mallctl>stats.arenas.<i>.resident</mallctl> |