Re: [PATCH RESEND] sched: prefer an idle cpu vs an idle sibling for BALANCE_WAKE

From: Josef Bacik
Date: Wed Jun 03 2015 - 16:34:45 EST


On 06/03/2015 01:43 PM, Mike Galbraith wrote:
On Wed, 2015-06-03 at 13:16 -0400, Josef Bacik wrote:

Eesh ok, do you happen to remember how you ran tbench so I can add it to
my tests here? In addition to fixing this problem we're also interested
in tracking performance of new kernels so we don't have to do this "what
the hell went wrong in the last 6 releases" dance every year, so I'm
throwing every performance thing we find useful in our test
infrastructure. Thanks,

Josef

Start a tbench server, then tbench -t 30 1 localhost. You're unlikely
to find anything as painful as that bouncing cow bug was, but you won't
have to look hard at all to find bounce pain.

There are also other loads like your server where waking to an idle cpu
dominates all else, pgbench is one of those. In that case, you've got a
1:N waker/wakee relationship, and what matters above ALL else is when
the mother of all work (the single server thread) wants a CPU, it had
better get it NOW, else the load stalls. Likewise, 'mom' being
preempted hurts truckloads. Perhaps your server has a similar thing
going on, keeping wakees the hell away from the waker rules all.


Yeah our server has two waker threads (one per numa node) and then the N number of wakee threads. I'll run tbench and pgbench with the new patches and see if there's a degredation. Thanks,

Josef

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