Re: [RFC PATCH 0/3] CFS idle injection

From: Dietmar Eggemann
Date: Fri Nov 06 2015 - 16:55:58 EST

On 11/06/2015 07:10 PM, Jacob Pan wrote:
On Fri, 6 Nov 2015 18:30:01 +0000
Dietmar Eggemann <dietmar.eggemann@xxxxxxx> wrote:

On 05/11/15 10:12, Peter Zijlstra wrote:

People, trim your emails!

On Wed, Nov 04, 2015 at 08:58:30AM -0800, Jacob Pan wrote:

I also like #2 too. Specially now that it is not limited to a
specific platform. One question though, could you still keep the
cooling device support of it? In some systems, it might make
sense to enable / disable idle injections based on temperature.

One of the key difference between 1 and 2 is that #2 is open loop
control, since we don't have CPU c-states info baked into

_yet_, there's people working on that. The whole power aware
scheduling stuff needs that.

Isn't the idle state information (rq->idle_state) already used in

What we use in energy aware scheduling is quite similar but since
we're interested in the index information of the c-state (to access
the right element of the idle_state vectors of the energy model, we
added rq->idle_state_idx.

what i am interested is not per cpu idle state but rather at the package
level or domain. It must be an indication for the overlapped idle time.
Usually has to come from HW counters.

I see. We have a similar problem with the Energy Model (EM) on cluster level (sched domain level DIE). We iterate over the cpus of a sched group and declare the shallowest cpu idle state as the cluster idle state to index our EM. On a typical ARM system we have (active, WFI, cpu-off and cluster-off). But I guess for you the idle state index is only for core idle states and you can't draw any conclusions from this for the package idle states.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at