From 8146dbaf2d450e9832144d7229b3e235bf4d77d5 Mon Sep 17 00:00:00 2001 From: tytydraco Date: Fri, 2 Oct 2020 11:30:59 -0700 Subject: [PATCH] Use constants for scheduler tunables Signed-off-by: tytydraco --- ktweak | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/ktweak b/ktweak index ad4992a..beb0690 100644 --- a/ktweak +++ b/ktweak @@ -4,6 +4,12 @@ # Maximum unsigned integer size in C UINT_MAX="4294967295" +# Duration in nnaoseconds of one scheduling period +SCHED_PERIOD="$((2 * 1000 * 1000))" + +# How many tasks should we have at a maximum in one scheduling period +SCHED_TASKS="10" + write() { # Bail out if file does not exist [[ ! -f "$1" ]] && return 1 @@ -60,13 +66,13 @@ write /proc/sys/kernel/sched_autogroup_enabled 0 write /proc/sys/kernel/sched_tunable_scaling 0 # Reduce the maximum scheduling period for lower latency -write /proc/sys/kernel/sched_latency_ns 2000000 +write /proc/sys/kernel/sched_latency_ns "$SCHED_PERIOD" # Schedule 10 tasks in the guarenteed sched period -write /proc/sys/kernel/sched_min_granularity_ns 200000 +write /proc/sys/kernel/sched_min_granularity_ns "$((SCHED_PERIOD / SCHED_TASKS))" # Require preeptive tasks to surpass half of a sched period in vmruntime -write /proc/sys/kernel/sched_wakeup_granularity_ns 1000000 +write /proc/sys/kernel/sched_wakeup_granularity_ns "$((SCHED_PERIOD / 2))" # Reduce the frequency of task migrations write /proc/sys/kernel/sched_migration_cost_ns 5000000