lkml.org 
[lkml]   [2016]   [May]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: sched: tweak select_idle_sibling to look for idle threads
On Sun, May 01, 2016 at 11:20:25AM +0200, Mike Galbraith wrote:
> On Sun, 2016-05-01 at 10:53 +0200, Peter Zijlstra wrote:
> > On Sun, May 01, 2016 at 09:12:33AM +0200, Mike Galbraith wrote:
> > > On Sat, 2016-04-30 at 14:47 +0200, Peter Zijlstra wrote:
> >
> > > > Can you guys have a play with this; I think one and two node tbench are
> > > > good, but I seem to be getting significant run to run variance on that,
> > > > so maybe I'm not doing it right.
> > >
> > > Nah, tbench is just variance prone. It got dinged up at clients=cores
> > > on my desktop box, on 4 sockets the high end got seriously dinged up.
> >
> > Ouch, yeah, big hurt. Lets try that again... :-)
>
> Yeah, box could use a little bandaid and a hug :)
>
> Playing with Chris' benchmark, seems the biggest problem is that we
> don't buddy up waker of many and it's wakees in a node.. ie the wake
> wide thing isn't necessarily our friend when there are multiple wakers
> of many. If I run an instance per node with one mother of all work in
> autobench mode, it works exactly as you'd expect, game over is when
> wakees = socket size. It never get's near that point if I let things
> wander, it beats itself up well before we get there.

Maybe give the criteria a bit margin, not just wakees tend to equal llc_size,
but the numbers are so wild to easily break the fragile condition, like:

if (master * 100 < slave * factor * 110)
return 0;

And since you accumulate wakee number (and decay at HZ), this check tends to
not satisfy ever?

if (slave < factor)
return 0;

\
 
 \ /
  Last update: 2016-05-07 11:21    [W:0.129 / U:1.764 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site