Re: [GIT PULL] adaptive spinning mutexes

Ingo Molnar
2009-01-14T18:47:46Z

* Ingo Molnar <mingo@elte.hu> wrote:

> Linus,
>
> Please pull the adaptive-mutexes-for-linus git tree from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git adaptive-mutexes-for-linus
>
> We dropped two fresh patches from v11 for the time being: the two debug
> patches, they had test failures [they triggered mutex debugging false
> positives].
>
> So this tree is v10 (which got a lot of testing already) plus Chris's
> performance patch. It passes all x86 runtime tests here.

Latest performance figures, on a 2-socket 16-way Nehalem test-system,
running the code above, measured via "test-mutex V 128 10" VFS
creat+unlink scalability test on tmpfs and ext3:

no-spin spin

[tmpfs] avg ops/sec: 291038 392865 (+34.9%)
[ext3] avg ops/sec: 283291 435674 (+53.7%)

Those numbers impress the heck out of me, rarely do we have such kind of
speedups these days, for any established functionality.

We still have the /sys/debug/sched_features tunable under
CONFIG_SCHED_DEBUG=y, so should this cause any performance regressions
somewhere, it can be pinned down and blamed back on this change easily,
without bisection and without rebooting the box.

Ingo