8.2.4 cpuset Parameters

The following cpuset parameters are defined:

cpuset.cpu_exclusive

Specifies whether the CPUs specified by cpuset.cpus are exclusively allocated to this CPU set and cannot be shared with other CPU sets. The default value of 0 specifies that CPUs are not exclusively allocated. A value of 1 enables exclusive use of the CPUs by a CPU set.

cpuset.cpus

Specifies a list of CPU cores to which a cgroup has access. For example, the setting 0,1,5-8 allows access to cores 0, 1, 5, 6, 7, and 8. The default setting includes all the available CPU cores.

Note

If you associate the cpuset subsystem with a cgroup, you must specify a value for the cpuset.cpus parameter.

cpuset.mem_exclusive

Specifies whether the memory nodes specified by cpuset.mems are exclusively allocated to this CPU set and cannot be shared with other CPU sets. The default value of 0 specifies that memory nodes are not exclusively allocated. A value of 1 enables exclusive use of the memory nodes by a CPU set.

cpuset.mem_hardwall

Specifies whether the kernel allocates pages and buffers to the memory nodes specified by cpuset.mems exclusively to this CPU set and cannot be shared with other CPU sets. The default value of 0 specifies that memory nodes are not exclusively allocated. A value of 1 allows you to separate the memory nodes that are allocated to different cgroups.

cpuset.memory_migrate

Specifies whether memory pages are allowed to migrate between memory nodes if the value of cpuset.mems changes. The default value of 0 specifies that memory nodes are not allowed to migrate. A value of 1 allows pages to migrate between memory nodes, maintaining their relative position on the node list where possible.

cpuset.memory_pressure

If cpuset.memory_pressure_enabled has been set to 1, reports the memory pressure, which represents the number of attempts per second by processes to reclaim in-use memory. The reported value scales the actual number of attempts up by a factor of 1000.

cpuset.memory_pressure_enabled

Specifies whether the memory pressure statistic should be gathered. The default value of 0 disables the counter. A value of 1 enables the counter.

cpuset.memory_spread_page

Specifies whether file system buffers are distributed between the allocated memory nodes. The default value of 0 results in the buffers being placed on the same memory node as the process that owns them. A value of 1 allows the buffers to be distributed across the memory nodes of the CPU set.

cpuset.memory_spread_slab

Specifies whether I/O slab caches are distributed between the allocated memory nodes. The default value of 0 results in the caches being placed on the same memory node as the process that owns them. A value of 1 allows the caches to be distributed across the memory nodes of the CPU set.

cpuset.mems

Specifies the memory nodes to which a cgroup has access. For example, the setting 0-2,4 allows access to memory nodes 0, 1, 2, and 4. The default setting includes all available memory nodes. The parameter has a value of 0 on systems that do not have a NUMA architecture.

Note

If you associate the cpuset subsystem with a cgroup, you must specify a value for the cpuset.mems parameter.

cpuset.sched_load_balance

Specifies whether the kernel should attempt to balance CPU load by moving processes between the CPU cores allocated to a CPU set. The default value of 1 turns on load balancing. A value of 0 disables load balancing. Disabling load balancing for a cgroup has no effect if load balancing is enabled in the parent cgroup.

cpuset.sched_relax_domain_level

If cpuset.sched_load_balance is set to 1, specifies one of the following load-balancing schemes.

Setting

Description

-1

Use the system's default load balancing scheme. This is the default behavior.

0

Perform periodic load balancing. Higher numeric values enable immediate load balancing.

1

Perform load balancing for threads running on the same core.

2

Perform load balancing for cores of the same CPU.

3

Perform load balancing for all CPU cores on the same system.

4

Perform load balancing for a subset of CPU cores on a system with a NUMA architecture.

5

Perform load balancing for all CPU cores on a system with a NUMA architecture.