tuned-profiles-cpu-partitioning - Man Page

Partition CPUs into isolated and housekeeping.

Description

The cpu-partitioning* profiles partition the system CPUs into isolated and housekeeping CPUs. These profiles are intended for latency-sensitive workloads.

An isolated CPU incurs reduced jitter and reduced interruptions by the kernel. This is achieved by clearing the CPU from user-space processes, movable kernel threads, interruption handlers, kernel timers, etc. The only fixed source of interruptions is the 1Hz tick maintained by the kernel to keep CPU usage statistics. Otherwise, the incurred jitter and interruptions, if any, depend on the kernel services used by the thread running on the isolated CPU. Threads that run a busy loop without doing system calls, such as user-space drivers that access the hardware directly, are only expected to be interrupted once a second by the 1Hz tick.

A housekeeping CPU is the opposite of an isolated CPU. Housekeeping CPUs run all daemons, shell processes, kernel threads, interruption handlers and work that can be dispatched from isolated CPUs such as disk I/O, RCU work, timers, etc.

Profiles

The following profiles are provided:

cpu-partitioning

Profile partitioning the system CPUs into isolated and housekeeping CPUs.

cpu-partitioning-powersave

Profile similar to the cpu-partitioning profile, but with more flexibility on the C-states configuration.

Configuration

The cpu-partitioning profile is configured by editing the /etc/tuned/cpu-partitioning-variables.conf file. There are two configuration options:

isolated_cores=<CPU-LIST>

List of CPUs to isolate. This option is mandatory. Any CPUs not in this list is automatically considered a housekeeping CPU.

no_balance_cores=<CPU-LIST>

List of CPUs not be considered by the kernel when doing system wide process load-balancing. Usually, this list should be the same as isolated_cores=. This option is optional.

The cpu-partitioning-powersave profile is configured by editing the /etc/tuned/cpu-partitioning-powersave-variables.conf file. It supports the same options as the cpu-partitioning profile and one additional option:

max_power_state=<MAX_CSTATE>

Maximum c-state the cores are allowed to enter. Can be expressed as it's name (C1E) or minimum wake-up latency, in micro-seconds. This parameter is provided as-is to `force_latency`. Default is set to "cstate.name:C1|10" to behave as cpu-partitioning profile.

Important Notes

Files

/etc/tuned/cpu-partitioning-variables.conf
/etc/tuned/cpu-partitioning-powersave-variables.conf
/etc/tuned/tuned-main.conf

See Also

tuned(8) tuned-adm(8) tuned-profiles(7) tuned-profiles-atomic(7) tuned-profiles-sap(7) tuned-profiles-sap-hana(7) tuned-profiles-mssql(7) tuned-profiles-oracle(7) tuned-profiles-realtime(7) tuned-profiles-nfv-host(7) tuned-profiles-nfv-guest(7) tuned-profiles-compat(7) tuned-profiles-postgresql(7) tuned-profiles-openshift(7) tuned-profiles-spectrumscale-ece(7)

Author

Jaroslav Škarvada <jskarvad@redhat.com>
Luiz Capitulino <lcapitulino@redhat.com>
Andrew Theurer <atheurer@redhat.com>

Referenced By

tuned-adm(8), tuned-profiles(7), tuned-profiles-atomic(7), tuned-profiles-compat(7), tuned-profiles-mssql(7), tuned-profiles-nfv-guest(7), tuned-profiles-nfv-host(7), tuned-profiles-openshift(7), tuned-profiles-oracle(7), tuned-profiles-postgresql(7), tuned-profiles-realtime(7), tuned-profiles-sap(7), tuned-profiles-sap-hana(7), tuned-profiles-spectrumscale-ece(7).

22 Feb 2018 TuneD