[PATCH 0/4] Reduce overhead of menu governor
From: Mel Gorman
Date: Wed Aug 06 2014 - 09:20:16 EST
The menu_select function is heavy and is very noticable in profiles for
workloads that enter/leave idle state a lot. This primarily happens
for scheduler microbenchmarks. The biggest contibution is the standard
deviation calculations and comparisons but the excessive calls into
the scheduler core do not help.
It would be nice to reduce the number of times nr_iowait is checked to
once per 8 intervals but I was not sure how to measure what the general
impact of such a change could be.
Similiarly I looked at different ways the standard deviation could be
calculated but the standard equivalent calculations potentially overflow.
It could be done as rolling average and rolling deviation but again
it was unclear how that could be evaluated. Tips on how the goodness/badness
of governor changes are evalated would be nice.
In the meantime, here are patches against some of the obvious stuff.
drivers/cpuidle/governors/menu.c | 43 +++++++++++++++++++++-------------------
include/linux/sched.h | 3 +--
kernel/sched/core.c | 7 +++++++
kernel/sched/proc.c | 7 -------
4 files changed, 31 insertions(+), 29 deletions(-)
--
1.8.4.5
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/