[PATCH RESEND v3 0/3] sched/rt: track rt rq utilization
From: Vincent Guittot
Date: Tue Jan 09 2018 - 08:53:21 EST
When both cfs and rt tasks compete to run on a CPU, we can see some frequency
drops with schedutil governor. In such case, the cfs_rq's utilization doesn't
reflect anymore the utilization of cfs tasks but only the remaining part that
is not used by rt tasks. We should monitor the stolen utilization and take
it into account when selecting OPP.
Patch 1 move pelt code in pelt.c file
Patch 2 tracks utilization of rt_rq.
Patch 3 adds the rt_rq's utilization when selection OPP for cfs tasks
This patchset doesn't change the OPP selection policy for RT tasks
Change since v2:
- move pelt code into a dedicated pelt.c file
- rebase on load tracking changes
Change since v1:
- Only a rebase. I have addressed the comments on previous version in
patch 1/2
Vincent Guittot (3):
sched/pelt: Move pelt related code in a dedicated file
sched/rt: add rt_rq utilization tracking
cpufreq/schedutil: add rt utilization tracking
kernel/sched/Makefile | 2 +-
kernel/sched/cpufreq_schedutil.c | 2 +-
kernel/sched/fair.c | 310 +-----------------------------------
kernel/sched/pelt.c | 331 +++++++++++++++++++++++++++++++++++++++
kernel/sched/pelt.h | 24 +++
kernel/sched/rt.c | 8 +
kernel/sched/sched.h | 21 +++
7 files changed, 389 insertions(+), 309 deletions(-)
create mode 100644 kernel/sched/pelt.c
create mode 100644 kernel/sched/pelt.h
--
2.7.4