diff options
Diffstat (limited to '0002-constgran-vanilla-max.patch')
-rw-r--r-- | 0002-constgran-vanilla-max.patch | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/0002-constgran-vanilla-max.patch b/0002-constgran-vanilla-max.patch deleted file mode 100644 index 2685403496a2..000000000000 --- a/0002-constgran-vanilla-max.patch +++ /dev/null @@ -1,86 +0,0 @@ -From 6758adc6a354f18a32b704e8f8ef1f6021515e51 Mon Sep 17 00:00:00 2001 -From: Masahito S <firelzrd@gmail.com> -Date: Fri, 28 Apr 2023 01:07:13 +0900 -Subject: [PATCH] constgran v4 sched: Make latency / granularity constant - tunable_scaling = 1 (logarithmic) -> 0 (constant) latency_ns = variable - 6-24ms -> constant 12.8ms min_granularity_ns = variable 0.75-3ms -> constant - 1.6ms wakeup_granularity_ns = variable 1-4ms -> constant 6.4ms - ---- - kernel/sched/fair.c | 31 +++++++++++++++++++++++++++---- - 1 file changed, 27 insertions(+), 4 deletions(-) - -diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c -index f8f1efa5f..87923da0f 100644 ---- a/kernel/sched/fair.c -+++ b/kernel/sched/fair.c -@@ -70,10 +70,16 @@ - * (to see the precise effective timeslice length of your workload, - * run vmstat and monitor the context-switches (cs) field) - * -- * (default: 6ms * (1 + ilog(ncpus)), units: nanoseconds) -+ * (BORE default: 24ms constant, units: nanoseconds) -+ * (CFS default: 6ms * (1 + ilog(ncpus)), units: nanoseconds) - */ -+#ifdef CONFIG_SCHED_BORE -+unsigned int sysctl_sched_latency = 24000000ULL; -+static unsigned int normalized_sysctl_sched_latency = 24000000ULL; -+#else // CONFIG_SCHED_BORE - unsigned int sysctl_sched_latency = 6000000ULL; - static unsigned int normalized_sysctl_sched_latency = 6000000ULL; -+#endif // CONFIG_SCHED_BORE - - /* - * The initial- and re-scaling of tunables is configurable -@@ -84,17 +90,28 @@ static unsigned int normalized_sysctl_sched_latency = 6000000ULL; - * SCHED_TUNABLESCALING_LOG - scaled logarithmical, *1+ilog(ncpus) - * SCHED_TUNABLESCALING_LINEAR - scaled linear, *ncpus - * -- * (default SCHED_TUNABLESCALING_LOG = *(1+ilog(ncpus)) -+ * (BORE default SCHED_TUNABLESCALING_NONE = *1 constant) -+ * (CFS default SCHED_TUNABLESCALING_LOG = *(1+ilog(ncpus)) - */ -+#ifdef CONFIG_SCHED_BORE -+unsigned int sysctl_sched_tunable_scaling = SCHED_TUNABLESCALING_NONE; -+#else // CONFIG_SCHED_BORE - unsigned int sysctl_sched_tunable_scaling = SCHED_TUNABLESCALING_LOG; -+#endif // CONFIG_SCHED_BORE - - /* - * Minimal preemption granularity for CPU-bound tasks: - * -- * (default: 0.75 msec * (1 + ilog(ncpus)), units: nanoseconds) -+ * (BORE default: 3 msec constant, units: nanoseconds) -+ * (CFS default: 0.75 msec * (1 + ilog(ncpus)), units: nanoseconds) - */ -+#ifdef CONFIG_SCHED_BORE -+unsigned int sysctl_sched_min_granularity = 3000000ULL; -+static unsigned int normalized_sysctl_sched_min_granularity = 3000000ULL; -+#else // CONFIG_SCHED_BORE - unsigned int sysctl_sched_min_granularity = 750000ULL; - static unsigned int normalized_sysctl_sched_min_granularity = 750000ULL; -+#endif // CONFIG_SCHED_BORE - - /* - * Minimal preemption granularity for CPU-bound SCHED_IDLE tasks. -@@ -122,10 +139,16 @@ unsigned int sysctl_sched_child_runs_first __read_mostly; - * and reduces their over-scheduling. Synchronous workloads will still - * have immediate wakeup/sleep latencies. - * -- * (default: 1 msec * (1 + ilog(ncpus)), units: nanoseconds) -+ * (BORE default: 4 msec constant, units: nanoseconds) -+ * (CFS default: 1 msec * (1 + ilog(ncpus)), units: nanoseconds) - */ -+#ifdef CONFIG_SCHED_BORE -+unsigned int sysctl_sched_wakeup_granularity = 4000000UL; -+static unsigned int normalized_sysctl_sched_wakeup_granularity = 4000000UL; -+#else // CONFIG_SCHED_BORE - unsigned int sysctl_sched_wakeup_granularity = 1000000UL; - static unsigned int normalized_sysctl_sched_wakeup_granularity = 1000000UL; -+#endif // CONFIG_SCHED_BORE - - const_debug unsigned int sysctl_sched_migration_cost = 500000UL; - --- -2.25.1 - |