[patch 5/6] sched: disable sched feature TTWU_QUEUE by default

Suresh Siddha
2011-11-18T23:11:46Z

[-- Attachment #1: disable_sched_ttwu_queue.patch --]
[-- Type: text/plain, Size: 1044 bytes --]

Context-switch intensive microbenchmark on a 8-socket system had
~600K times more resched IPI's on each logical CPU with this feature enabled
by default. Disabling this features makes that microbenchmark perform 5 times
better.

Also disabling this feature showed 2% performance improvement on a 8-socket
OLTP workload.

More heurestics are needed when and how to use this feature by default.
For now, disable it by default.

Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
---
kernel/sched/features.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Index: tip/kernel/sched/features.h
===================================================================
--- tip.orig/kernel/sched/features.h
+++ tip/kernel/sched/features.h
@@ -64,7 +64,7 @@ SCHED_FEAT(NONTASK_POWER, 1)
* Queue remote wakeups on the target CPU and process them
* using the scheduler IPI. Reduces rq->lock contention/bounces.
*/
-SCHED_FEAT(TTWU_QUEUE, 1)
+SCHED_FEAT(TTWU_QUEUE, 0)

SCHED_FEAT(FORCE_SD_OVERLAP, 0)
SCHED_FEAT(RT_RUNTIME_SHARE, 1)