Re: [RFC] sched: The removal of idle_balance()

From: Peter Zijlstra
Date: Fri Feb 15 2013 - 07:22:18 EST



On Fri, 2013-02-15 at 08:26 +0100, Mike Galbraith wrote:
>
> (the throttle is supposed to keep idle_balance() from doing severe
> damage, that may want a peek/tweak)

Right, as it stands idle_balance() can do a lot of work and if the avg
idle time is less than the time we spend looking for a suitable task we
loose.

I've wanted to make this smarter by having the cpufreq/cpuidle avg idle
time guestimator in the scheduler core so we actually know how log we
expect to be idle and couple that with a cache refresh cost per sched
domain (something we used to have pre 2.6.21 or so) so we can auto-limit
the domain traversal for idle_balance.

So far that's all fantasy though..

Related, I wanted to use the idle time guestimate to 'optimize' the idle
loop, currently that stuff is stupid expensive and pokes at timer
hardware etc.. if we know we won't be idle longer than it takes to poke
at timer hardware, don't go into nohz mode etc.

Anyway, that all is independent of the exact location of where we call
that stuff.

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