mbox series

[RESEND,v3,0/3] sched/rt: track rt rq utilization

Message ID 1515505986-21997-1-git-send-email-vincent.guittot@linaro.org
Headers show
Series sched/rt: track rt rq utilization | expand

Message

Vincent Guittot Jan. 9, 2018, 1:53 p.m. UTC
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