Lines Matching refs:CPU
1 REDUCING OS JITTER DUE TO PER-CPU KTHREADS
3 This document lists per-CPU kthreads in the Linux kernel and presents
4 options to control their OS jitter. Note that non-per-CPU kthreads are
5 not listed here. To reduce OS jitter from non-per-CPU kthreads, bind
6 them to a "housekeeping" CPU dedicated to such work.
21 o /sys/devices/system/cpu/cpuN/online: Control CPU N's hotplug state,
24 o In order to locate kernel-generated OS jitter on CPU N:
39 that does not require per-CPU kthreads. This will prevent these
45 3. Rework the eHCA driver so that its per-CPU kthreads are
53 some other CPU.
61 occur on some other CPU and furthermore initiate all
62 Bluetooth activity on some other CPU.
69 1. To the extent possible, keep the CPU out of the kernel when it
73 the CPU offline, then bring it back online. This forces
82 3. Once your application has started, prevent CPU-hotplug operations
83 from being initiated from tasks that might run on the CPU to
84 be de-jittered. (It is OK to force this CPU offline and then
87 1. Force block-device interrupts onto some other CPU.
89 3. Once your application has started, prevent CPU-hotplug operations
90 from being initiated from tasks that might run on the CPU to
91 be de-jittered. (It is OK to force this CPU offline and then
94 1. Force block-device interrupts onto some other CPU.
96 3. Once your application has started, prevent CPU-hotplug operations
97 from being initiated from tasks that might run on the CPU to
98 be de-jittered. (It is OK to force this CPU offline and then
107 1. Avoid sending scheduler IPIs to the CPU to be de-jittered,
109 on that CPU. If a thread that expects to run on the de-jittered
110 CPU awakens, the scheduler will send an IPI that can result in
113 CONFIG_NO_HZ_FULL=y, and, in addition, ensure that the CPU
114 to be de-jittered is marked as an adaptive-ticks CPU using the
116 scheduler-clock interrupts that the de-jittered CPU receives,
119 3. To the extent possible, keep the CPU out of the kernel when it
123 received by the de-jittered CPU.
125 1. To the extent possible, keep the CPU out of the kernel when it
129 CPU offline, then bring it back online. This forces recurring
136 1. Offload callbacks and keep the CPU in either dyntick-idle or
139 CONFIG_NO_HZ_FULL=y, and, in addition ensure that the CPU
140 to be de-jittered is marked as an adaptive-ticks CPU using
143 b. To the extent possible, keep the CPU out of the kernel
150 b. Ensure that the CPU goes idle frequently, allowing other
154 the CPU in question has passed through a quiescent state.
155 c. To the extent possible, keep the CPU out of the kernel
180 use of each CPU's workqueues to run its cache_reap()
184 c. Limit your CPU frequency so that a CPU-frequency
187 correctly, and if you CPU architecture permits, you should
189 avoid the CPU-frequency governor periodically running
190 on each CPU, including cs_dbs_timer() and od_dbs_timer().
191 WARNING: Please check your CPU specifications to
203 but if your workload is CPU-bound, this is a bad idea.
212 daemon from running on each CPU every second or so.
216 WARNING: Please check your CPU specifications to
221 WARNING: Please check your CPU specifications to
224 CONFIG_PMAC_RACKMETER=n to disable the CPU-meter,
244 4. Ensure that the CPU never enters the kernel, and, in particular,
245 avoid initiating any CPU hotplug operations on this CPU. This is
247 CPU, again preventing the rcuc/%u kthreads from having any work
251 Purpose: Offload RCU callbacks from the corresponding CPU.
254 to execute on some other CPU.
261 Purpose: Detect software lockups on each CPU.