diff options
author | Peter Zijlstra <a.p.zijlstra@chello.nl> | 2008-09-20 23:38:02 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-04-01 15:52:21 -0700 |
commit | ecfb7fb9b13c617447a7f6b5925da26798c1a8a1 (patch) | |
tree | 7242d25bc9fef033284cee5d9343484f1eacb124 /kernel/sched_features.h | |
parent | aa7659a10684907bec7c0c6887f8755767fb8dea (diff) |
sched: wakeup preempt when small overlap
commit 15afe09bf496ae10c989e1a375a6b5da7bd3e16e upstream.
Lin Ming reported a 10% OLTP regression against 2.6.27-rc4.
The difference seems to come from different preemption agressiveness,
which affects the cache footprint of the workload and its effective
cache trashing.
Aggresively preempt a task if its avg overlap is very small, this should
avoid the task going to sleep and find it still running when we schedule
back to it - saving a wakeup.
Reported-by: Lin Ming <ming.m.lin@intel.com>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'kernel/sched_features.h')
-rw-r--r-- | kernel/sched_features.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/sched_features.h b/kernel/sched_features.h index c4c88ae3ceb..4e51893e401 100644 --- a/kernel/sched_features.h +++ b/kernel/sched_features.h @@ -11,3 +11,4 @@ SCHED_FEAT(ASYM_GRAN, 1) SCHED_FEAT(LB_BIAS, 1) SCHED_FEAT(LB_WAKEUP_UPDATE, 1) SCHED_FEAT(ASYM_EFF_LOAD, 1) +SCHED_FEAT(WAKEUP_OVERLAP, 1) |