android_kernel_oneplus_msm8998/kernel/sched
Patrick Bellasi 724d562ae0 sched/tune: add sysctl interface to define a boost value
The current (CFS) scheduler implementation does not allow "to boost"
tasks performance by running them at a higher OPP compared to the
minimum required to meet their workload demands.

To support tasks performance boosting the scheduler should provide a
"knob" which allows to tune how much the system is going to be optimised
for energy efficiency vs performance.

This patch is the first of a series which provides a simple interface to
define a tuning knob. One system-wide "boost" tunable is exposed via:
  /proc/sys/kernel/sched_cfs_boost
which can be configured in the range [0..100], to define a percentage
where:
  - 0%   boost requires to operate in "standard" mode by scheduling
         tasks at the minimum capacities required by the workload demand
  - 100% boost requires to push at maximum the task performances,
         "regardless" of the incurred energy consumption

A boost value in between these two boundaries is used to bias the
power/performance trade-off, the higher the boost value the more the
scheduler is biased toward performance boosting instead of energy
efficiency.

cc: Ingo Molnar <mingo@redhat.com>
cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
2016-09-14 14:58:22 +05:30
..
auto_group.c sched, timer: Convert usages of ACCESS_ONCE() in the scheduler to READ_ONCE()/WRITE_ONCE() 2015-05-08 12:11:32 +02:00
auto_group.h sched, timer: Convert usages of ACCESS_ONCE() in the scheduler to READ_ONCE()/WRITE_ONCE() 2015-05-08 12:11:32 +02:00
clock.c treewide: Remove old email address 2015-11-23 09:44:58 +01:00
completion.c sched/completion: Serialize completion_done() with complete() 2015-02-18 14:27:40 +01:00
core.c fixup! sched/fair: jump to max OPP when crossing UP threshold 2016-09-14 14:58:22 +05:30
cpuacct.c
cpuacct.h
cpudeadline.c sched/deadline: Unify dl_time_before() usage 2015-09-23 09:51:25 +02:00
cpudeadline.h sched/deadline: Unify dl_time_before() usage 2015-09-23 09:51:25 +02:00
cpufreq_sched.c fixup! sched: scheduler-driven cpu frequency selection 2016-09-14 14:58:22 +05:30
cpupri.c
cpupri.h
cputime.c sched/cputime: Fix steal_account_process_tick() to always return jiffies 2016-04-12 09:08:35 -07:00
deadline.c sched: deadline: use deadline bandwidth in scale_rt_capacity 2016-09-14 14:58:22 +05:30
debug.c sched/fair: Provide runnable_load_avg back to cfs_rq 2015-08-03 12:24:31 +02:00
energy.c sched: Support for extracting EAS energy costs from DT 2016-09-14 14:48:50 +05:30
fair.c sched: deadline: use deadline bandwidth in scale_rt_capacity 2016-09-14 14:58:22 +05:30
features.h sched: Make energy awareness a sched feature 2016-09-14 14:48:50 +05:30
idle.c sched, cpuidle: Track cpuidle state index in the scheduler 2016-09-14 14:48:50 +05:30
idle_task.c sched: Make sched_class::set_cpus_allowed() unconditional 2015-08-12 12:06:09 +02:00
loadavg.c sched/loadavg: Fix loadavg artifacts on fully idle and on fully loaded systems 2016-06-01 12:15:49 -07:00
Makefile sched/tune: add sysctl interface to define a boost value 2016-09-14 14:58:22 +05:30
rt.c sched: rt scheduler sets capacity requirement 2016-09-14 14:58:22 +05:30
sched.h sched: deadline: use deadline bandwidth in scale_rt_capacity 2016-09-14 14:58:22 +05:30
stats.c sched: use %*pb[l] to print bitmaps including cpumasks and nodemasks 2015-02-13 21:21:37 -08:00
stats.h sched/stat: Simplify the sched_info accounting dependency 2015-07-04 10:04:30 +02:00
stop_task.c sched: Make sched_class::set_cpus_allowed() unconditional 2015-08-12 12:06:09 +02:00
tune.c sched/tune: add sysctl interface to define a boost value 2016-09-14 14:58:22 +05:30
wait.c sched/wait: Fix the signal handling fix 2015-12-13 14:30:59 -08:00