Re: change in sched cpu_power causing regressions with SCHED_MC

From: Suresh Siddha
Date: Fri Feb 19 2010 - 14:53:45 EST


On Fri, 2010-02-19 at 11:47 -0800, Peter Zijlstra wrote:
> On Fri, 2010-02-19 at 10:36 -0800, Suresh Siddha wrote:
> > exec/fork balance is not broken. i.e., during exec/fork we balance the
> > load equally among sockets/cores etc. What is broken is:
> >
> > a) In SMT case, once we end up in a situation where both the threads of
> > the core are busy , with another core completely idle, load balance is
> > not moving one of the threads to the idle core. This unbalanced
> > situation can happen because of a previous wake-up decision and/or
> > threads on other core went to sleep/died etc. Once we end up in this
> > unbalanced situation, we continue in that state with out fixing it.
> >
> > b) Similar to "a", this is MC case where we end up four cores busy in
> > one socket with other 4 cores in another socket completely idle. And
> > this is the situation which we are trying to solve in this patch.
> >
> > In your above example, we test mostly fork/exec balance but not the
> > above sleep/wakeup scenarios.
>
> Ah, indeed. Let me extend my script to cover that.
>
> The below script does indeed show a change, but the result still isn't
> perfect, when I do ./show-loop 8, it starts 8 loops nicely spread over 2
> sockets, the difference is that all 4 remaining would stay on socket 0,
> the patched kernel gets 1 over to socket 1.

Peter, Have you applied both my smt patch and mc patch?

thanks,
suresh

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