[PATCH v9 0/3] sched/fair: update scale invariance of PELT

From: Vincent Guittot
Date: Wed Jan 23 2019 - 10:27:05 EST


This new version of the scale invariance patchset adds an important change
compare to v3 and before. It still scales the time to reflect the
amount of work that has been done during the elapsed running time but this
is now done at rq level instead of per entity and rt/dl/cfs_rq. The main
advantage is that it is done once per clock update and we don't need to
maintain per sched_avg's stolen_idle_time anymore. This also ensures that
all pelt signals will be always synced for a rq.

Changes since v8:
- add lockdep and clock updated check in rq_clock_pelt()

Vincent Guittot (3):
sched/fair: move rq_of helper function
sched/fair: update scale invariance of PELT
sched/pelt: skip updating util_est when utilization is higher than
cpu's capacity

include/linux/sched.h | 23 +++-------
kernel/sched/core.c | 1 +
kernel/sched/deadline.c | 6 +--
kernel/sched/fair.c | 72 ++++++++++++++----------------
kernel/sched/pelt.c | 45 ++++++++++---------
kernel/sched/pelt.h | 114 ++++++++++++++++++++++++++++++++++++++++++++++--
kernel/sched/rt.c | 6 +--
kernel/sched/sched.h | 28 +++++++++++-
8 files changed, 209 insertions(+), 86 deletions(-)

--
2.7.4