lkml.org 
[lkml]   [2011]   [Apr]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 00/21] sched: Reduce runqueue lock contention -v6
From
Date
On Tue, 2011-04-05 at 17:23 +0200, Peter Zijlstra wrote:
> This patch series aims to optimize remote wakeups by moving most of the
> work of the wakeup to the remote cpu and avoid bouncing runqueue data
> structures where possible.
>
> As measured by sembench (which basically creates a wakeup storm) on my
> dual-socket westmere:
>
> $ for i in /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor ; do echo performance > $i; done
> $ echo 4096 32000 64 128 > /proc/sys/kernel/sem
> $ ./sembench -t 2048 -w 1900 -o 0
>
> unpatched: run time 30 seconds 647278 worker burns per second
> patched: run time 30 seconds 816715 worker burns per second
>
> I've queued this series for .40.

Full diffstat per request

---
arch/alpha/kernel/smp.c | 3 +-
arch/arm/kernel/smp.c | 5 +-
arch/blackfin/mach-common/smp.c | 3 +
arch/cris/arch-v32/kernel/smp.c | 13 +-
arch/ia64/kernel/irq_ia64.c | 2 +
arch/ia64/xen/irq_xen.c | 10 +-
arch/m32r/kernel/smp.c | 4 +-
arch/mips/cavium-octeon/smp.c | 2 +
arch/mips/kernel/smtc.c | 2 +-
arch/mips/mti-malta/malta-int.c | 2 +
arch/mips/pmc-sierra/yosemite/smp.c | 4 +
arch/mips/sgi-ip27/ip27-irq.c | 2 +
arch/mips/sibyte/bcm1480/smp.c | 7 +-
arch/mips/sibyte/sb1250/smp.c | 7 +-
arch/mn10300/kernel/smp.c | 5 +-
arch/parisc/kernel/smp.c | 5 +-
arch/powerpc/kernel/smp.c | 4 +-
arch/s390/kernel/smp.c | 6 +-
arch/sh/kernel/smp.c | 2 +
arch/sparc/kernel/smp_32.c | 4 +-
arch/sparc/kernel/smp_64.c | 1 +
arch/tile/kernel/smp.c | 6 +-
arch/um/kernel/smp.c | 2 +-
arch/x86/kernel/smp.c | 5 +-
arch/x86/xen/smp.c | 5 +-
include/linux/mutex.h | 2 +-
include/linux/sched.h | 23 +-
init/Kconfig | 5 +
kernel/mutex-debug.c | 2 +-
kernel/mutex-debug.h | 2 +-
kernel/mutex.c | 2 +-
kernel/mutex.h | 2 +-
kernel/sched.c | 622 +++++++++++++++++++----------------
kernel/sched_debug.c | 2 +-
kernel/sched_fair.c | 23 ++-
kernel/sched_features.h | 6 +
kernel/sched_idletask.c | 2 +-
kernel/sched_rt.c | 54 ++--
kernel/sched_stoptask.c | 5 +-
39 files changed, 483 insertions(+), 380 deletions(-)


\
 
 \ /
  Last update: 2011-04-06 13:03    [from the cache]
©2003-2011 Jasper Spaans