diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 4dc1277..0006090 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -1128,10 +1128,7 @@ include 'filename'
The use of huge TLB pages results in smaller page tables and
less CPU time spent on memory management, increasing performance. For
more details, see
- the Debian wiki.
- Remember that you will need at least shared_buffers / huge page size +
- 1 huge TLB pages. So for example for a system with 6GB shared buffers
- and a hugepage size of 2kb of you will need at least 3156 huge pages.
+ .
diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml
index bbb808f..f172526 100644
--- a/doc/src/sgml/runtime.sgml
+++ b/doc/src/sgml/runtime.sgml
@@ -1307,6 +1307,55 @@ echo -1000 > /proc/self/oom_score_adj
+
+
+ Linux huge TLB pages
+
+
+ To enable this feature in PostgreSQL you need a
+ kernel with CONFIG_HUGETLBFS=y and
+ CONFIG_HUGETLB_PAGE=y. You also have to tune the system
+ setting vm.nr_hugepages. To calculate the number of
+ necessary huge pages start PostgreSQL without
+ huge pages enabled and check the VmPeak value from the
+ proc filesystem:
+
+$ head -1 /path/to/data/directory/postmaster.pid
+4170
+$ grep ^VmPeak /proc/4170/status
+VmPeak: 6490428 kB
+
+ 6490428 / 2048
+ (PAGE_SIZE is 2MB in this case) are
+ roughly 3169.154 huge pages, so you will need at
+ least 3170 huge pages:
+
+$ sysctl -w vm.nr_hugepages=3170
+
+ Sometimes the kernel is not able to allocate the desired number of huge
+ pages, so it might be necessary to repeat that command or to reboot. Don't
+ forget to add an entry to /etc/sysctl.conf to persist
+ this setting through reboots.
+
+
+
+ The default behavior for huge pages in
+ PostgreSQL is to use them when possible and
+ to fallback to normal pages when failing. To enforce the use of huge
+ pages, you can set
+ huge_tlb_pages
+ to on. Note that in this case
+ PostgreSQL will fail to start if not enough huge
+ pages are available.
+
+
+
+ For a detailed description of the Linux huge
+ pages feature have a look
+ at https://www.kernel.org/doc/Documentation/vm/hugetlbpage.txt.
+
+
+