Lines Matching full:of
8 The intent of this file is to give a brief summary of hugetlbpage support in
9 the Linux kernel. This support is built on top of multiple page size support
13 256M and ppc64 supports 4K and 16M. A TLB is a cache of virtual-to-physical
15 Operating systems try to make best use of limited number of TLB resources.
27 The ``/proc/meminfo`` file provides information about the total number of
29 default huge page size and information about the number of free, reserved
30 and surplus huge pages in the pool of huge pages of default size.
32 size of the arguments to system calls that map huge page regions.
34 The output of ``cat /proc/meminfo`` will include lines like::
46 is the size of the pool of huge pages.
48 is the number of huge pages in the pool that are not yet
51 is short for "reserved," and is the number of huge pages for
55 huge page from the pool of huge pages at fault time.
57 is short for "surplus," and is the number of huge pages in
59 maximum number of surplus huge pages is controlled by
61 Note: When the feature of freeing unused vmemmap pages associated
62 with each hugetlb page is enabled, the number of surplus huge pages
63 may be temporarily larger than the maximum number of surplus huge
68 is the total amount of memory (in kB), consumed by huge
69 pages of all sizes.
70 If huge pages of different sizes are in use, this number
76 ``/proc/filesystems`` should also show a filesystem of type "hugetlbfs"
79 ``/proc/sys/vm/nr_hugepages`` indicates the current number of "persistent" huge
83 by increasing or decreasing the value of ``nr_hugepages``.
85 Note: When the feature of freeing unused vmemmap pages associated with each
93 Once a number of huge pages have been pre-allocated to the kernel huge page
95 or shared memory system calls to use the huge pages. See the discussion of
100 number of huge pages requested. This is the most reliable method of
104 of a specific size, one must precede the huge pages boot command parameters
113 parameter to preallocate a number of huge pages of the specified
123 Specify the number of huge pages to preallocate. This typically
126 implicitly specifies the number of huge pages of default size to
127 allocate. If the number of huge pages of default size is implicitly
130 node format. The node format specifies the number of huge pages
153 specific number of huge pages of default size. The number of default
169 indicates the current number of pre-allocated huge pages of the default size.
175 This command will try to adjust the number of default sized huge pages in the
179 over all the set of allowed nodes specified by the NUMA memory policy of the
185 of the interaction of task memory policy, cpusets and per node attributes
186 with the allocation and freeing of persistent huge pages.
188 The success or failure of huge page allocation depends on the amount of
189 physically contiguous memory that is present in system at the time of the
195 System administrators may want to put this command in one of the local rc
197 the boot process when the possibility of getting physical contiguous pages
198 is still very high. Administrators can verify the number of huge pages
200 distribution of huge pages in a NUMA system, use::
204 ``/proc/sys/vm/nr_overcommit_hugepages`` specifies how large the pool of
208 number of "surplus" huge pages from the kernel's normal page pool, when the
217 The administrator may shrink the pool of persistent huge pages for
219 smaller value. The kernel will attempt to balance the freeing of huge pages
220 across all nodes in the memory policy of the task modifying ``nr_hugepages``.
225 it becomes less than the number of huge pages in use will convert the balance
226 of the in-use huge pages to surplus huge pages. This will occur even if
227 the number of surplus pages would exceed the overcommit value. As long as
229 increased sufficiently, or the surplus huge pages go out of use and are freed--
232 With support for multiple huge page pools at run-time available, much of
241 will exist, of the form::
245 Inside each of these directories, the set of files contained in ``/proc``
265 is the size of demoted pages. When a page is demoted a corresponding
266 number of huge pages of demote_size will be created. By default,
268 multiple smaller huge page sizes, demote_size can be set to any of
273 is used to demote a number of huge pages. A user with root privileges
275 requested number of huge pages. To determine how many pages were
276 actually demoted, compare the value of nr_hugepages before and after
284 Interaction of Task Memory Policy with Huge Page Allocation/Freeing
290 NUMA memory policy of the task that modifies the ``nr_hugepages_mempolicy``
305 specified in <node-list>, depending on whether number of persistent huge pages
313 #. Regardless of mempolicy mode [see
320 undesirable imbalance in the distribution of the huge page pool, or
321 possibly, allocation of persistent huge pages on nodes not allowed by
332 Any of the other mempolicy modes may be used to specify a single node.
335 whether this policy was set explicitly by the task itself or one of its
338 node list of "all" with numactl --interleave or --membind [-m] to achieve
342 the resource limits of any cpuset in which the task runs. Thus, there will
344 subset of the system nodes to allocate huge pages outside the cpuset
345 without first moving to a cpuset that contains all of the desired nodes.
348 of huge pages over all on-lines nodes with memory.
353 A subset of the contents of the root huge page control directory in sysfs,
354 described above, will be replicated under each the system device of each
367 of free and surplus [overcommitted] huge pages, respectively, on the parent
370 The ``nr_hugepages`` attribute returns the total number of huge pages on the
371 specified node. When this attribute is written, the number of persistent huge
373 resources exist, regardless of the task's mempolicy or cpuset constraints.
375 Note that the number of overcommit and reserve pages remain global quantities,
385 call, then it is required that system administrator mount a file system of
392 This command mounts a (pseudo) filesystem of type hugetlbfs on the directory
395 The ``uid`` and ``gid`` options sets the owner and group of the root of the
396 file system. By default the ``uid`` and ``gid`` of the current process
399 The ``mode`` option sets the mode of root of file system to value & 01777.
407 The ``size`` option sets the maximum value of memory (huge pages) allowed
409 in bytes, or as a percentage of the specified huge page pool (``nr_hugepages``).
412 The ``min_size`` option sets the minimum value of memory (huge pages) allowed
414 either bytes or a percentage of the huge page pool.
415 At mount time, the number of huge pages specified by ``min_size`` are reserved
419 is adjusted so that the sum of allocated and reserved huge pages is always
422 The option ``nr_inodes`` sets the maximum number of inodes that ``/mnt/huge``
440 MAP_HUGETLB. For an example of how to use mmap with MAP_HUGETLB see
444 members of a supplementary group and system admin needs to configure that gid
446 applications to use any combination of mmaps and shm* calls, though the mount of
450 aligned to the native page size of the processor; they will normally fail with
470 The `libhugetlbfs`_ library provides a wide range of userspace tools