1TUNED_PROFILES_CPU_PARTIMTiIsOcNeIlNlGa(n7e)ous InformatTiUoNnEDM_aPnRuOaFlILES_CPU_PARTITIONING(7)
2
3
4
6 tuned-profiles-cpu-partitioning - Partition CPUs into isolated and
7 housekeeping.
8
9
11 The cpu-partitioning profile partitions the system CPUs into isolated
12 and housekeeping CPUs. This profile is intended to be used for
13 latency-sensitive workloads.
14
15 An isolated CPU incurs reduced jitter and reduced interruptions by the
16 kernel. This is achived by clearing the CPU from user-space processes,
17 movable kernel threads, interruption handlers, kernel timers, etc. The
18 only fixed source of interruptions is the 1Hz tick maintained by the
19 kernel to keep CPU usage statistics. Otherwise, the incurred jitter and
20 interruptions, if any, depend on the kernel services used by the thread
21 running on the isolated CPU. Threads that run a busy loop without doing
22 system calls, such as user-space drivers that access the hardware
23 directly, are only expected to be interrupted once a second by the 1Hz
24 tick.
25
26 A housekeeping CPU is the opposite of an isolated CPU. Housekeeping
27 CPUs run all daemons, shell processes, kernel threads, interruption
28 handlers and work that can be dispatched from isolated CPUs such as
29 disk I/O, RCU work, timers, etc.
30
31
33 The cpu-partitioning profile is configured by editing the
34 /etc/tuned/cpu-partitioning-variables.conf file. There are two configu‐
35 ration options:
36
37
38 isolated_cores=<CPU-LIST>
39 List of CPUs to isolate. This option is mandatory. Any CPUs not
40 in this list is automatically considered a housekeeping CPU.
41
42 no_balance_cores=<CPU-LIST>
43 List of CPUs not be considered by the kernel when doing system
44 wide process load-balancing. Usually, this list should be the
45 same as isolated_cores=. This option is optional.
46
47
49 * The system should be rebooted after applying the cpu-partitioning
50 profile for the first time or changing its configuration
51
52 * The cpu-partitioning profile can be used in bare-metal and virtual
53 machines
54
55 * The cpu-partitioning profile does not use the kernel's isolcpus= fea‐
56 ture
57
58 * On a NUMA system, it is recommended to have at least one housekeeping
59 CPU per NUMA node
60
61 * The cpu-partitioning profile does not support isolating the L3 cache.
62 This means that a housekeeping CPU can still thrash cache entries
63 pertaining to isolated CPUs. It is recommended to use cache isolation
64 technologies to remedy this problem, such as Intel's Cache Allocation
65 Technology
66
67 * Whether or not the kernel is going to be able to deactivate the tick
68 on isolated CPUs depend on a few factors concerning the running
69 thread behavior. Please, consult the nohz_full documentation in the
70 kernel to learn more
71
72 * The Linux real-time project has put together a document on the best
73 practices for writting real-time applications. Even though the
74 cpu-partitioning profile does not guarantee real-time response time,
75 much of the techniques for writting real-time applications also apply
76 for applications intended to run under the cpu-partitioning profile.
77 Please, refer to this document at https://rt.wiki.kernel.org
78
79
81 /etc/tuned/cpu-partitioning-variables.conf
82 /etc/tuned/tuned-main.conf
83
84
86 tuned(8) tuned-adm(8) tuned-profiles(7) tuned-profiles-realtime(7)
87 tuned-profiles-nfv-host(7) tuned-profiles-nfv-guest(7)
88
90 Jaroslav Škarvada <jskarvad@redhat.com>
91 Luiz Capitulino <lcapitulino@redhat.com>
92 Andrew Theurer <atheurer@redhat.com>
93
94
95
96tuned 22 Feb 2018TUNED_PROFILES_CPU_PARTITIONING(7)