Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions xml/book_tuning.xml
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,14 @@
<title>Kernel tuning</title>
<info>
<revhistory xml:id="rh-tuning-part-kerneltuning">
<revision>
<date>2026-03-31</date>
<revdescription>
<para>
Modified values and explanation for sched_min_granularity_ns and sched_wakeup_granularity_ns.
</para>
</revdescription>
</revision>
<revision>
<date>2024-03-12</date>
<revdescription>
Expand Down
18 changes: 9 additions & 9 deletions xml/tuning_taskscheduler.xml
Original file line number Diff line number Diff line change
Expand Up @@ -615,22 +615,22 @@ kernel.sched_wakeup_granularity_ns = 10000000</screen>
<term><systemitem>sched_min_granularity_ns</systemitem></term>
<listitem>
<para>
Minimal preemption granularity for CPU bound tasks. See
<systemitem>sched_latency_ns</systemitem> for details. The
default value is <literal>4000000</literal> (ns).
Minimal preemption granularity for CPU bound tasks. See
<systemitem>sched_latency_ns</systemitem> for details. The default value is calculated
as <literal>750000 * (1 + ilog(ncpus))</literal> nanoseconds, where
<literal>ilog(ncpus)</literal> is the integer <literal>base-2</literal> logarithm of
the number of online CPUs. For example, on a 2-CPU system the default is
<literal>1500000</literal> ns. The actual value reported by
<systemitem>sysctl</systemitem> is therefore machine-specific and varies with CPU count
and the value of <literal>sched_tunable_scaling</literal>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><systemitem>sched_wakeup_granularity_ns</systemitem></term>
<listitem>
<para>
The wake-up preemption granularity. Increasing this variable
reduces wake-up preemption, reducing disturbance of compute bound
tasks. Lowering it improves wake-up latency and throughput for
latency critical tasks, particularly when a short duty cycle load
component must compete with CPU bound components. The default
value is <literal>2500000</literal> (ns).
The wake-up preemption granularity. Increasing this variable reduces wake-up preemption, reducing disturbance of compute bound tasks. Lowering it improves wake-up latency and throughput for latency critical tasks, particularly when a short duty cycle load component must compete with CPU bound components. The default value is calculated as <literal>1000000 * (1 + ilog(ncpus))</literal> nanoseconds, where <literal>ilog(ncpus)</literal> is the integer <literal>base-2</literal> logarithm of the number of online CPUs. For example, on a 2-CPU system the default is <literal>2000000</literal> ns. The actual value reported by <systemitem>sysctl</systemitem> is therefore machine-specific and varies with CPU count and the value of <literal>sched_tunable_scaling</literal>.
</para>
<warning>
<title>Setting the right wake-up granularity value</title>
Expand Down
Loading