Re: [discussion]sched: a rough proposal to enable power saving inscheduler

From: Matthew Garrett
Date: Wed Aug 15 2012 - 12:34:02 EST


On Wed, Aug 15, 2012 at 01:05:38PM +0200, Peter Zijlstra wrote:
> On Mon, 2012-08-13 at 20:21 +0800, Alex Shi wrote:
> > It bases on the following assumption:
> > 1, If there are many task crowd in system, just let few domain cpus
> > running and let other cpus idle can not save power. Let all cpu take the
> > load, finish tasks early, and then get into idle. will save more power
> > and have better user experience.
>
> I'm not sure this is a valid assumption. I've had it explained to me by
> various people that race-to-idle isn't always the best thing. It has to
> do with the cost of switching power states and the duration of execution
> and other such things.

This is affected by Intel's implementation - if there's a single active
core in the system then you can't put *any* package into the deep
package C states, and that means you don't get into memory self refresh.
It's a pretty big difference. But this isn't inherently true, and I
suspect that any implementation is going to have to handle scenarios
where the behaviour of one package doesn't influence the behaviour of
another package.

Long term we probably also need to consider whether migrating pages
between nodes is worth it. That's going to be especially important as
systems start implementing ACPI 5's memory power management, which
effectively lets us cut power to all the RAM attached to a node.

--
Matthew Garrett | mjg59@xxxxxxxxxxxxx
--
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/