Lines Matching +full:kernel +full:- +full:policy

26 requiring larger clear-page copy-page in page faults which is a
29 reducing the enter/exit kernel frequency by a 512 times factor). This
48 Modern kernels support "multi-size THP" (mTHP), which introduces the
50 but smaller than traditional PMD-size (as described above), in
51 increments of a power-of-2 number of pages. mTHP can back anonymous
53 PTE-mapped, but in many cases can still provide similar benefits to
56 prominent because the size of each page isn't as huge as the PMD-sized
66 collapses sequences of basic pages into PMD-sized huge pages.
91 possible to disable hugepages system-wide and to only have them inside
108 -------------------
113 system wide. This can be achieved per-supported-THP-size with one of::
115 echo always >/sys/kernel/mm/transparent_hugepage/hugepages-<size>kB/enabled
116 echo madvise >/sys/kernel/mm/transparent_hugepage/hugepages-<size>kB/enabled
117 echo never >/sys/kernel/mm/transparent_hugepage/hugepages-<size>kB/enabled
124 echo always >/sys/kernel/mm/transparent_hugepage/hugepages-2048kB/enabled
127 will inherit the top-level "enabled" value::
129 echo inherit >/sys/kernel/mm/transparent_hugepage/hugepages-<size>kB/enabled
133 echo inherit >/sys/kernel/mm/transparent_hugepage/hugepages-2048kB/enabled
135 The top-level setting (for use with "inherit") can be set by issuing
138 echo always >/sys/kernel/mm/transparent_hugepage/enabled
139 echo madvise >/sys/kernel/mm/transparent_hugepage/enabled
140 echo never >/sys/kernel/mm/transparent_hugepage/enabled
142 By default, PMD-sized hugepages have enabled="inherit" and all other
144 sizes, the kernel will select the most appropriate enabled size for a
158 echo always >/sys/kernel/mm/transparent_hugepage/defrag
159 echo defer >/sys/kernel/mm/transparent_hugepage/defrag
160 echo defer+madvise >/sys/kernel/mm/transparent_hugepage/defrag
161 echo madvise >/sys/kernel/mm/transparent_hugepage/defrag
162 echo never >/sys/kernel/mm/transparent_hugepage/defrag
190 should be self-explanatory.
192 By default kernel tries to use huge, PMD-mappable zero page on read
196 echo 0 >/sys/kernel/mm/transparent_hugepage/use_zero_page
197 echo 1 >/sys/kernel/mm/transparent_hugepage/use_zero_page
201 PMD-mappable transparent hugepage::
203 cat /sys/kernel/mm/transparent_hugepage/hpage_pmd_size
207 "underused". A THP is underused if the number of zero-filled pages in
212 echo 0 > /sys/kernel/mm/transparent_hugepage/shrink_underused
213 echo 1 > /sys/kernel/mm/transparent_hugepage/shrink_underused
215 khugepaged will be automatically started when PMD-sized THP is enabled
216 (either of the per-size anon control or the top-level control are set
218 PMD-sized THP is disabled (when both the per-size anon control and the
219 top-level control are "never")
222 -------------------
226 PMD-sized THP and no attempt is made to collapse to other THP
235 echo 0 >/sys/kernel/mm/transparent_hugepage/khugepaged/defrag
236 echo 1 >/sys/kernel/mm/transparent_hugepage/khugepaged/defrag
241 /sys/kernel/mm/transparent_hugepage/khugepaged/pages_to_scan
246 /sys/kernel/mm/transparent_hugepage/khugepaged/scan_sleep_millisecs
251 /sys/kernel/mm/transparent_hugepage/khugepaged/alloc_sleep_millisecs
262 /sys/kernel/mm/transparent_hugepage/khugepaged/pages_collapsed
266 /sys/kernel/mm/transparent_hugepage/khugepaged/full_scans
272 /sys/kernel/mm/transparent_hugepage/khugepaged/max_ptes_none
282 /sys/kernel/mm/transparent_hugepage/khugepaged/max_ptes_swap
293 /sys/kernel/mm/transparent_hugepage/khugepaged/max_ptes_shared
300 You can change the sysfs boot time default for the top-level "enabled"
303 kernel command line.
306 passing ``thp_anon=<size>[KMG],<size>[KMG]:<state>;<size>[KMG]-<size>[KMG]:<state>``,
315 thp_anon=16K-64K:always;128K,512K:inherit;256K:madvise;1M-2M:never
325 PMD_ORDER THP policy will be overridden. If the policy for PMD_ORDER
326 is not defined within a valid ``thp_anon``, its policy will default to
330 allocation policy for the internal shmem mount by using the kernel parameter
331 ``transparent_hugepage_shmem=<policy>``, where ``<policy>`` is one of the
336 hugepage allocation policy for the tmpfs mount by using the kernel parameter
337 ``transparent_hugepage_tmpfs=<policy>``, where ``<policy>`` is one of the
339 ``never``). The tmpfs mount default policy is ``never``.
343 has the same format as ``thp_anon``, but also supports the policy
354 user, the PMD_ORDER hugepage policy will be overridden. If the policy for
355 PMD_ORDER is not defined within a valid ``thp_shmem``, its policy will
363 to as "multi-size THP" (mTHP). Huge pages of any size are commonly
364 represented in the kernel as "large folios".
372 ------------
374 The THP allocation policy for tmpfs mounts can be adjusted using the mount
390 Remember, that the kernel may use huge pages of all available sizes, and
393 The default policy in the past was ``never``, but it can now be adjusted
394 using the kernel parameter ``transparent_hugepage_tmpfs=<policy>``.
396 ``mount -o remount,huge= /mountpoint`` works fine after mount: remounting
401 /sys/kernel/mm/transparent_hugepage/shmem_enabled will affect the
402 allocation policy of tmpfs mounts, when set to the following values:
408 Force the huge option on for all - very useful for testing;
411 ----------------------
415 To control the THP allocation policy for this internal tmpfs mount, the
416 sysfs knob /sys/kernel/mm/transparent_hugepage/shmem_enabled and the knobs
418 '/sys/kernel/mm/transparent_hugepage/hugepages-<size>kB/shmem_enabled'
424 per-size knob is set to 'inherit'.
433 Inherit the top-level "shmem_enabled" value. By default, PMD-sized hugepages
450 transparent_hugepage/hugepages-<size>kB/enabled values and tmpfs mount
458 The number of PMD-sized anonymous transparent huge pages currently used by the
460 To identify what applications are using PMD-sized anonymous transparent huge
463 PMD-sized THP for historical reasons and should have been called
528 is incremented if kernel fails to split huge
541 (/sys/kernel/mm/transparent_hugepage/khugepaged/max_ptes_none).
555 is incremented if kernel fails to allocate
567 In /sys/kernel/mm/transparent_hugepage/hugepages-<size>kB/stats, There are
591 is incremented every time a huge page is swapped in from a non-zswap
605 is incremented every time a huge page is swapped out to a non-zswap
632 is incremented if kernel fails to split huge
678 To be guaranteed that the kernel will map a THP immediately in any
685 You can use hugetlbfs on a kernel that has transparent hugepage