Lines Matching refs:to

4 options to control their OS jitter.  Note that non-per-CPU kthreads are
6 them to a "housekeeping" CPU dedicated to such work.
11 o Documentation/IRQ-affinity.txt: Binding interrupts to sets of CPUs.
13 o Documentation/cgroups: Using cgroups to bind tasks to sets of CPUs.
15 o man taskset: Using the taskset command to bind tasks to sets
19 call to bind tasks to sets of CPUs.
22 writing "0" to offline and "1" to online.
24 o In order to locate kernel-generated OS jitter on CPU N:
52 1. Use irq affinity to force the irq threads to execute on
60 2. Use irq affinity to force Bluetooth-related interrupts to
71 both kernel threads and interrupts to execute elsewhere.
74 recurring timers to migrate elsewhere. If you are concerned
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
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
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
102 calls to things like tasklet_schedule().)
103 2. Convert all drivers that you must use from tasklets to workqueues.
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
114 to be de-jittered is marked as an adaptive-ticks CPU using the
117 minimizing its chances of being selected to do the load balancing
121 forcing both kernel threads and interrupts to execute elsewhere.
127 kernel threads and interrupts to execute elsewhere.
130 timers to migrate elsewhere. If you are concerned with multiple
140 to be de-jittered is marked as an adaptive-ticks CPU using
142 to housekeeping CPUs, which can tolerate OS jitter.
146 to execute elsewhere.
147 2. Enable RCU to do its processing remotely via dyntick-idle by
151 CPUs to detect that it has passed through an RCU quiescent
153 userspace execution also allows other CPUs to detect that
158 to execute elsewhere.
166 by passing the WQ_SYSFS to that workqueue's alloc_workqueue().
167 Such a workqueue can be confined to a given subset of the
171 maintainer would like to caution people against indiscriminately
173 caution is that it is easy to add WQ_SYSFS, but because sysfs is
175 to remove it, even if its addition was a mistake.
176 3. Do any of the following needed to avoid jitter that your
180 use of each CPU's workqueues to run its cache_reap()
188 be able to build your kernel with CONFIG_CPU_FREQ=n to
191 WARNING: Please check your CPU specifications to
194 commit prevents OS jitter due to vmstat_update() on
196 to entirely get rid of the OS jitter, but you can
197 decrease its frequency by writing a large value to
208 e. Boot with "elevator=noop" to avoid workqueue use by
215 due to the rtas_event_scan() function.
216 WARNING: Please check your CPU specifications to
219 CBE_CPUFREQ_SPU_GOVERNOR=n to avoid OS jitter from
221 WARNING: Please check your CPU specifications to
224 CONFIG_PMAC_RACKMETER=n to disable the CPU-meter,
240 which offloads all RCU callbacks to kthreads that can be moved
241 off of CPUs susceptible to OS jitter. This approach prevents the
242 rcuc/%u kthreads from having any work to do, so that they are
248 to do.
253 1. Use affinity, cgroups, or other mechanism to force these kthreads
254 to execute on some other CPU.
258 shift it to RCU_SOFTIRQ.
269 3. Echo a zero to /proc/sys/kernel/watchdog to disable the
272 order to reduce the frequency of OS jitter due to the watchdog
273 timer down to a level that is acceptable for your workload.