Increase wakeup granularity for a massive hackbench reduction

Signed-off-by: Tyler Nijmeh <tylernij@gmail.com>
latency
Tyler Nijmeh 4 years ago
parent 742ffb6439
commit 45bd4af72c

@ -101,8 +101,8 @@ When migrating tasks between CPUs, allow the scheduler to migrate twice as many
### kernel.sched_schedstats: 1 --> 0
Disable scheduler statistics accounting. This is just for debugging, but it adds overhead.
### kernel.sched_wakeup_granularity_ns: 1000000 (1ms) --> 5000000 (5ms)
Require the current task to be surpassing the new task in vmruntime by 5ms instead of 1ms before preemption occurs. This should reduce jitter due to less frequent task interruptions.
### kernel.sched_wakeup_granularity_ns: 1000000 (1ms) --> 10000000 (10ms)
Require the current task to be surpassing the new task in vmruntime by 10ms instead of 1ms before preemption occurs. In testing, `hackbench -pl 8000` times were reduced by ~94% (NOT a typo).
### net.ipv4.tcp_ecn: 2 --> 1
Enable Explicit Congestion Notification for incoming and outgoing negotiations. This reduces packet losses.

@ -122,7 +122,7 @@ write /proc/sys/kernel/sched_min_task_util_for_colocation 25
write /proc/sys/kernel/sched_min_task_util_for_boost_colocation 35
write /proc/sys/kernel/sched_nr_migrate 128
write /proc/sys/kernel/sched_schedstats 0
write /proc/sys/kernel/sched_wakeup_granularity_ns 5000000
write /proc/sys/kernel/sched_wakeup_granularity_ns 10000000
# Net
write /proc/sys/net/ipv4/tcp_ecn 1

Loading…
Cancel
Save