Re: [rfc][patch] select_idle_sibling() inducing bouncing on westmere

From: Mike Galbraith
Date: Wed Jun 06 2012 - 06:17:41 EST


On Thu, 2012-05-24 at 15:17 +0200, Peter Zijlstra wrote:

> Did you do you numbers with the distro NR_CPUS=4096 bloat?

4 socket Westmere-EX 40 core box.. ouch^ouch.

3.0 has none of the below, 3.0x all, 3.0xx all but the ones commented
out. Most of the deltas are sibling avoidance, though throttle-nohz
plays a role in 3.0 vs 3.0x, as does knob tweakery, though very very
small for these particular tests. The rest are ~meaningless.

sched-use-rt-nr_cpus_allowed-to-recover-select_task_rq-cycles.patch
sched-set-skip_clock_update-when-yielding.patch
sched-throttle-nohz.patch
sched-Wrap-scheduler-p--cpus_allowed-access.patch
sched-Avoid-SMT-siblings-in-select_idle_sibling-if-possible.patch
sched-Clean-up-domain-traversal-in-select_idle_sibling.patch
sched-Remove-rcu_read_lock-unlock-from-select_idle_sibling.patch
sched-Fix-the-sched-group-node-allocation-for-SD_OVERLAP-domains.patch
sched-domain-flags-proc-handler.patch
# sched-tweak-select_idle_sibling.patch
sched-tweak-knobs.patch
# sched-ratelimit-affine-wakeup-migrations.patch

thench 1 2 4 8 16 32 64 128
3.0 225 451 911 1573 2723 3501 11189 13951
3.0x 299 603 1211 2418 4697 6847 11606 14557
vs 3.0 1.328 1.337 1.329 1.537 1.724 1.955 1.037 1.043

3.0xx 30 41 118 645 3769 6214 12233 14312
vs 3.0x 0.100 0.067 0.097 0.266 0.802 0.907 1.054 0.983
hmmm
aim7 ~low load.. not saturating.

Benchmark Version Machine Run Date
AIM Multiuser Benchmark - Suite VII "1.1" 3.0x Jun 6 09:29:20 2012

Tasks Jobs/Min JTI Real CPU Jobs/sec/task
64 26223.1 98 14.8 293.3 6.8289

Benchmark Version Machine Run Date
AIM Multiuser Benchmark - Suite VII "1.1" 3.0xx Jun 6 11:12:21 2012

Tasks Jobs/Min JTI Real CPU Jobs/sec/task
64 18845.5 82 20.6 254.8 4.9077 vs 3.0x 0.718


--
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/