summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorSrivatsa Vaddagiri <vatsa@codeaurora.org>2016-09-09 19:38:03 +0530
committerPavankumar Kondeti <pkondeti@codeaurora.org>2016-12-16 16:50:52 +0530
commit0dee0d1411e4ba837089a769a5bcce57a5a14df2 (patch)
treef4d1423b387e4661efb73b32ba7489c48ecb494b /Documentation
parentf8c7c6ffdfb366efce72a4df93d124659a246b8c (diff)
sched: Avoid waking idle cpu for short-burst tasks
Introduce sched_short_burst tunable to classify "short-burst" tasks. These tasks are eligible for packing to avoid overhead associated with waking up an idle CPU. select_best_cpu() ignores power-cost and selects the CPU with least wakeup latency which is not loaded with IRQs and can accommodate this task without exceeding spill limits. The ties are broken with load followed by previous CPU. This policy does not affect cluster selection but only CPU selection in the selected cluster. The tasks eligible for "wakeup-up-idle" and "boost" are not considered for packing. This policy is applied for both "fair" and "rt" scheduling class tasks. Change-Id: I2a05493fde93f58636725f18d0ce8dbce4418a30 Signed-off-by: Srivatsa Vaddagiri <vatsa@codeaurora.org> Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/scheduler/sched-hmp.txt10
1 files changed, 10 insertions, 0 deletions
diff --git a/Documentation/scheduler/sched-hmp.txt b/Documentation/scheduler/sched-hmp.txt
index 091d49ea80cf..766c01d321b5 100644
--- a/Documentation/scheduler/sched-hmp.txt
+++ b/Documentation/scheduler/sched-hmp.txt
@@ -726,6 +726,16 @@ d. /proc/sys/kernel/sched_select_prev_cpu_us
Default value of sched_select_prev_cpu_us is 2000 (2ms). This can be
turned off by setting it to 0.
+e. /proc/sys/kernel/sched_short_burst_ns
+ This threshold controls whether a task is considered as "short-burst"
+ or not. "short-burst" tasks are eligible for packing to avoid overhead
+ associated with waking up an idle CPU. "non-idle" CPUs which are not
+ loaded with IRQs and can accommodate the waking task without exceeding
+ spill limits are considered. The ties are broken with load followed
+ by previous CPU. This tunable does not affect cluster selection.
+ It only affects CPU selection in a given cluster. This packing is
+ skipped for tasks that are eligible for "wake-up-idle" and "boost".
+
**** 5.2.4 Wakeup Logic for Task "p"
Wakeup task placement logic is as follows: