On Fri, Dec 01, 2017 at 04:01:24PM +1300, Thomas Munro wrote:
> Hi hackers,
> 
> The manual implies that only Linux can use huge pages.  That is not
> true: FreeBSD, Illumos and probably others support larger page sizes
> using transparent page coalescing algorithms.  On my FreeBSD box
> procstat -v often shows PostgreSQL shared buffers in "S"-flagged
> memory.  I think we should adjust the manual to make clear that it's
> the *explicit request for huge pages* that is supported only on Linux
> (and hopefully soon Windows).  Am I being too pedantic?

I suggest to remove "other" and include Linux in the enumeration, since it also
supports "transparent" hugepages.

Justin
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 3060597..98d42e5 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -1363,7 +1363,7 @@ include_dir 'conf.d'
       </term>
       <listitem>
        <para>
-        Enables/disables the use of huge memory pages. Valid values are
+        Controls whether huge memory pages are explicitly requested. Valid 
values are
         <literal>try</literal> (the default), <literal>on</literal>,
         and <literal>off</literal>.
        </para>
@@ -1371,6 +1371,9 @@ include_dir 'conf.d'
        <para>
         At present, this feature is supported only on Linux. The setting is
         ignored on other systems when set to <literal>try</literal>.
+        Note that some operating systems including Linux, FreeBSD and Illumos
+        support huge pages (also known as "super" pages or "large" pages)
+        automatically without an explicit request from PostgreSQL.
        </para>
 
        <para>
@@ -1384,7 +1387,7 @@ include_dir 'conf.d'
         the server will try to use huge pages, but fall back to using
         normal allocation if that fails. With <literal>on</literal>, failure
         to use huge pages will prevent the server from starting up. With
-        <literal>off</literal>, huge pages will not be used.
+        <literal>off</literal>, huge pages will not be specifically requested.
        </para>
       </listitem>
      </varlistentry>

Reply via email to