-
Notifications
You must be signed in to change notification settings - Fork 53.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Documentation: x86: convert x86_64/fake-numa-for-cpusets to reST
This converts the plain text documentation to reStructuredText format and add it to Sphinx TOC tree. No essential content change. Signed-off-by: Changbin Du <[email protected]> Reviewed-by: Mauro Carvalho Chehab <[email protected]> Signed-off-by: Jonathan Corbet <[email protected]>
- Loading branch information
1 parent
85a3bd4
commit f0339db
Showing
2 changed files
with
19 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,12 @@ | ||
.. SPDX-License-Identifier: GPL-2.0 | ||
===================== | ||
Fake NUMA For CPUSets | ||
===================== | ||
|
||
:Author: David Rientjes <[email protected]> | ||
|
||
Using numa=fake and CPUSets for Resource Management | ||
Written by David Rientjes <[email protected]> | ||
|
||
This document describes how the numa=fake x86_64 command-line option can be used | ||
in conjunction with cpusets for coarse memory management. Using this feature, | ||
|
@@ -20,7 +27,7 @@ you become more familiar with using this combination for resource control, | |
you'll determine a better setup to minimize the number of nodes you have to deal | ||
with. | ||
|
||
A machine may be split as follows with "numa=fake=4*512," as reported by dmesg: | ||
A machine may be split as follows with "numa=fake=4*512," as reported by dmesg:: | ||
|
||
Faking node 0 at 0000000000000000-0000000020000000 (512MB) | ||
Faking node 1 at 0000000020000000-0000000040000000 (512MB) | ||
|
@@ -34,7 +41,7 @@ A machine may be split as follows with "numa=fake=4*512," as reported by dmesg: | |
|
||
Now following the instructions for mounting the cpusets filesystem from | ||
Documentation/cgroup-v1/cpusets.txt, you can assign fake nodes (i.e. contiguous memory | ||
address spaces) to individual cpusets: | ||
address spaces) to individual cpusets:: | ||
|
||
[root@xroads /]# mkdir exampleset | ||
[root@xroads /]# mount -t cpuset none exampleset | ||
|
@@ -47,7 +54,7 @@ Now this cpuset, 'ddset', will only allowed access to fake nodes 0 and 1 for | |
memory allocations (1G). | ||
|
||
You can now assign tasks to these cpusets to limit the memory resources | ||
available to them according to the fake nodes assigned as mems: | ||
available to them according to the fake nodes assigned as mems:: | ||
|
||
[root@xroads /exampleset/ddset]# echo $$ > tasks | ||
[root@xroads /exampleset/ddset]# dd if=/dev/zero of=tmp bs=1024 count=1G | ||
|
@@ -57,9 +64,13 @@ Notice the difference between the system memory usage as reported by | |
/proc/meminfo between the restricted cpuset case above and the unrestricted | ||
case (i.e. running the same 'dd' command without assigning it to a fake NUMA | ||
cpuset): | ||
Unrestricted Restricted | ||
MemTotal: 3091900 kB 3091900 kB | ||
MemFree: 42113 kB 1513236 kB | ||
|
||
======== ============ ========== | ||
Name Unrestricted Restricted | ||
======== ============ ========== | ||
MemTotal 3091900 kB 3091900 kB | ||
MemFree 42113 kB 1513236 kB | ||
======== ============ ========== | ||
|
||
This allows for coarse memory management for the tasks you assign to particular | ||
cpusets. Since cpusets can form a hierarchy, you can create some pretty | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -11,3 +11,4 @@ x86_64 Support | |
uefi | ||
mm | ||
5level-paging | ||
fake-numa-for-cpusets |