@@ -4155,7 +4155,6 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
41554155 </listitem>
41564156 </varlistentry>
41574157
4158-
41594158 <varlistentry id="guc-jit-above-cost" xreflabel="jit_above_cost">
41604159 <term><varname>jit_above_cost</varname> (<type>floating point</type>)
41614160 <indexterm>
@@ -4164,48 +4163,49 @@ ANY <replaceable class="parameter">num_sync</replaceable> ( <replaceable class="
41644163 </term>
41654164 <listitem>
41664165 <para>
4167- Sets the planner's cutoff above which JIT compilation is used as part
4168- of query execution (see <xref linkend="jit"/>). Performing
4169- <acronym>JIT</acronym> costs time but can accelerate query execution.
4170-
4166+ Sets the query cost above which JIT compilation is activated, if
4167+ enabled (see <xref linkend="jit"/>).
4168+ Performing <acronym>JIT</acronym> costs planning time but can
4169+ accelerate query execution.
4170+ Setting this to <literal>-1</literal> disables JIT compilation.
41714171 The default is <literal>100000</literal>.
41724172 </para>
41734173 </listitem>
41744174 </varlistentry>
41754175
4176- <varlistentry id="guc-jit-optimize -above-cost" xreflabel="jit_optimize_above_cost ">
4177- <term><varname>jit_optimize_above_cost </varname> (<type>floating point</type>)
4176+ <varlistentry id="guc-jit-inline -above-cost" xreflabel="jit_inline_above_cost ">
4177+ <term><varname>jit_inline_above_cost </varname> (<type>floating point</type>)
41784178 <indexterm>
4179- <primary><varname>jit_optimize_above_cost </varname> configuration parameter</primary>
4179+ <primary><varname>jit_inline_above_cost </varname> configuration parameter</primary>
41804180 </indexterm>
41814181 </term>
41824182 <listitem>
41834183 <para>
4184- Sets the planner's cutoff above which JIT compiled programs (see <xref
4185- linkend="guc-jit-above-cost"/>) are optimized. Optimization initially
4186- takes time, but can improve execution speed. It is not meaningful to
4187- set this to a lower value than <xref linkend="guc-jit-above-cost"/ >.
4188-
4184+ Sets the query cost above which JIT compilation attempts to inline
4185+ functions and operators. Inlining adds planning time, but can
4186+ improve execution speed. It is not meaningful to set this to less
4187+ than <varname>jit_above_cost</varname >.
4188+ Setting this to <literal>-1</literal> disables inlining.
41894189 The default is <literal>500000</literal>.
41904190 </para>
41914191 </listitem>
41924192 </varlistentry>
41934193
4194- <varlistentry id="guc-jit-inline -above-cost" xreflabel="jit_inline_above_cost ">
4195- <term><varname>jit_inline_above_cost </varname> (<type>floating point</type>)
4194+ <varlistentry id="guc-jit-optimize -above-cost" xreflabel="jit_optimize_above_cost ">
4195+ <term><varname>jit_optimize_above_cost </varname> (<type>floating point</type>)
41964196 <indexterm>
4197- <primary><varname>jit_inline_above_cost </varname> configuration parameter</primary>
4197+ <primary><varname>jit_optimize_above_cost </varname> configuration parameter</primary>
41984198 </indexterm>
41994199 </term>
42004200 <listitem>
42014201 <para>
4202- Sets the planner's cutoff above which JIT compiled programs (see <xref
4203- linkend="guc-jit-above-cost"/>) attempt to inline functions and
4204- operators. Inlining initially takes time, but can improve execution
4205- speed. It is unlikely to be beneficial to set
4206- <varname>jit_inline_above_cost</varname> below
4207- <varname>jit_optimize_above_cost </varname>.
4208-
4202+ Sets the query cost above which JIT compilation applies expensive
4203+ optimizations. Such optimization adds planning time, but can improve
4204+ execution speed. It is not meaningful to set this to less
4205+ than <varname>jit_above_cost</varname>, and it is unlikely to be
4206+ beneficial to set it to more
4207+ than <varname>jit_inline_above_cost </varname>.
4208+ Setting this to <literal>-1</literal> disables expensive optimizations.
42094209 The default is <literal>500000</literal>.
42104210 </para>
42114211 </listitem>
@@ -4500,11 +4500,10 @@ SELECT * FROM parent WHERE key = 2400;
45004500 </term>
45014501 <listitem>
45024502 <para>
4503- Determines whether <acronym>JIT</acronym> may be used by
4503+ Determines whether <acronym>JIT</acronym> compilation may be used by
45044504 <productname>PostgreSQL</productname>, if available (see <xref
45054505 linkend="jit"/>).
4506-
4507- The default is <literal>on</literal>.
4506+ The default is <literal>off</literal>.
45084507 </para>
45094508 </listitem>
45104509 </varlistentry>
@@ -7552,16 +7551,17 @@ SET XML OPTION { DOCUMENT | CONTENT };
75527551 </term>
75537552 <listitem>
75547553 <para>
7555- Determines which JIT provider (see <xref linkend="jit-extensibility"/>) is
7556- used. The built-in default is <literal>llvmjit</literal>.
7554+ This variable is the name of the JIT provider library to be used
7555+ (see <xref linkend="jit-pluggable"/>).
7556+ The default is <literal>llvmjit</literal>.
7557+ This parameter can only be set at server start.
75577558 </para>
7559+
75587560 <para>
7559- If set to a non-existent library <acronym>JIT</acronym> will not be
7561+ If set to a non-existent library, <acronym>JIT</acronym> will not be
75607562 available, but no error will be raised. This allows JIT support to be
75617563 installed separately from the main
75627564 <productname>PostgreSQL</productname> package.
7563-
7564- This parameter can only be set at server start.
75657565 </para>
75667566 </listitem>
75677567 </varlistentry>
@@ -8840,9 +8840,8 @@ LOG: CleanUpLock: deleting: lock(0xb7acd844) id(24688,24696,0,0,0,1)
88408840 <para>
88418841 If LLVM has the required functionality, register generated functions
88428842 with <productname>GDB</productname>. This makes debugging easier.
8843-
8844- The default setting is <literal>off</literal>, and can only be set at
8845- server start.
8843+ The default setting is <literal>off</literal>.
8844+ This parameter can only be set at server start.
88468845 </para>
88478846 </listitem>
88488847 </varlistentry>
@@ -8858,9 +8857,8 @@ LOG: CleanUpLock: deleting: lock(0xb7acd844) id(24688,24696,0,0,0,1)
88588857 Writes the generated <productname>LLVM</productname> IR out to the
88598858 file system, inside <xref linkend="guc-data-directory"/>. This is only
88608859 useful for working on the internals of the JIT implementation.
8861-
8862- The default setting is <literal>off</literal>, and it can only be
8863- changed by a superuser.
8860+ The default setting is <literal>off</literal>.
8861+ This parameter can only be changed by a superuser.
88648862 </para>
88658863 </listitem>
88668864 </varlistentry>
@@ -8873,8 +8871,8 @@ LOG: CleanUpLock: deleting: lock(0xb7acd844) id(24688,24696,0,0,0,1)
88738871 </term>
88748872 <listitem>
88758873 <para>
8876- Determines whether expressions are JIT compiled, subject to costing
8877- decisions (see <xref linkend="jit-decision"/>). The default is
8874+ Determines whether expressions are JIT compiled, when JIT compilation
8875+ is activated (see <xref linkend="jit-decision"/>). The default is
88788876 <literal>on</literal>.
88798877 </para>
88808878 </listitem>
@@ -8888,13 +8886,12 @@ LOG: CleanUpLock: deleting: lock(0xb7acd844) id(24688,24696,0,0,0,1)
88888886 </term>
88898887 <listitem>
88908888 <para>
8891- If LLVM has the required functionality, emit required data to allow
8889+ If LLVM has the required functionality, emit the data needed to allow
88928890 <productname>perf</productname> to profile functions generated by JIT.
88938891 This writes out files to <filename>$HOME/.debug/jit/</filename>; the
88948892 user is responsible for performing cleanup when desired.
8895-
8896- The default setting is <literal>off</literal>, and can only be set at
8897- server start.
8893+ The default setting is <literal>off</literal>.
8894+ This parameter can only be set at server start.
88988895 </para>
88998896 </listitem>
89008897 </varlistentry>
@@ -8907,9 +8904,9 @@ LOG: CleanUpLock: deleting: lock(0xb7acd844) id(24688,24696,0,0,0,1)
89078904 </term>
89088905 <listitem>
89098906 <para>
8910- Determines whether tuple deforming is JIT compiled, subject to costing
8911- decisions (see <xref linkend="jit-decision"/>). The default is
8912- <literal>on</literal>.
8907+ Determines whether tuple deforming is JIT compiled, when JIT
8908+ compilation is activated (see <xref linkend="jit-decision"/>).
8909+ The default is <literal>on</literal>.
89138910 </para>
89148911 </listitem>
89158912 </varlistentry>
0 commit comments