Re: change in sched cpu_power causing regressions with SCHED_MC

From: Vaidyanathan Srinivasan
Date: Sat Feb 13 2010 - 13:40:15 EST


* Peter Zijlstra <peterz@xxxxxxxxxxxxx> [2010-02-13 11:36:28]:

> On Fri, 2010-02-12 at 17:31 -0800, Suresh Siddha wrote:
> >
> > We have one more problem that Yanmin and Ling Ma reported. On a dual
> > socket quad-core platforms (for example platforms based on NHM-EP), we
> > are seeing scenarios where one socket is completely busy (with all the 4
> > cores running with 4 tasks) and another socket is completely idle.
> >
> > This causes performance issues as those 4 tasks share the memory
> > controller, last-level cache bandwidth etc. Also we won't be taking
> > advantage of turbo-mode as much as we like. We will have all these
> > benefits if we move two of those tasks to the other socket. Now both the
> > sockets can potentially go to turbo etc and improve performance.
> >
> > In short, your recent change (shown below) broke this behavior. In the
> > kernel summit you mentioned you made this change with out affecting the
> > behavior of SMT/MC. And my testing immediately after kernel-summit also
> > didn't show the problem (perhaps my test didn't hit this specific
> > change). But apparently we are having performance issues with this patch
> > (Ling Ma's bisect pointed to this patch). I will look more detailed into
> > this after the long weekend (to see if we can catch this scenario in
> > fix_small_imbalance() etc). But wanted to give you a quick heads up.
> > Thanks.
>
> Right, so the behaviour we want should be provided by SD_PREFER_SIBLING,
> it provides the capacity==1 thing the cpu_power games used to provide.
>
> Not saying it's not broken, but that's where the we should be looking to
> fix it.

Yes, making SD_PREFER_SIBLING work as expected will help spread tasks
at all sched_domain levels and will integrate well with powersavings
balance where we want to negate the effect.

--Vaidy

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