2014-01-06 16:28:47

by Peter Zijlstra

[permalink] [raw]
Subject: Re: [RFC] sched: CPU topology try

On Mon, Dec 23, 2013 at 06:22:17PM +0100, Dietmar Eggemann wrote:
> I'm not sure if the idea to create a dedicated sched_domain level for every
> topology flag representing a specific functionality will scale. From the
> perspective of energy-aware scheduling we need e.g. energy costs (P and C
> state) which can only be populated towards the scheduler via an additional
> sub-struct and additional function arch_sd_energy() like depicted in
> Morten's email:
>
> [2] lkml.org/lkml/2013/11/14/102

That lkml.org link is actually not working for me (blank page -- maybe
lkml.org is on the blink again).

That said, I yet have to sit down and think about the P state stuff, but
I was thinking we need some rudimentary domain support for that.

For instance, the big-little thingies seem share their P state per
cluster, so we need a domain at that level to hang some state off of --
which we actually have in this case. But we need to ensure we do have
it -- somehow.


2014-01-06 17:15:35

by Morten Rasmussen

[permalink] [raw]
Subject: Re: [RFC] sched: CPU topology try

On Mon, Jan 06, 2014 at 04:28:13PM +0000, Peter Zijlstra wrote:
> On Mon, Dec 23, 2013 at 06:22:17PM +0100, Dietmar Eggemann wrote:
> > I'm not sure if the idea to create a dedicated sched_domain level for every
> > topology flag representing a specific functionality will scale. From the
> > perspective of energy-aware scheduling we need e.g. energy costs (P and C
> > state) which can only be populated towards the scheduler via an additional
> > sub-struct and additional function arch_sd_energy() like depicted in
> > Morten's email:
> >
> > [2] lkml.org/lkml/2013/11/14/102
>
> That lkml.org link is actually not working for me (blank page -- maybe
> lkml.org is on the blink again).
>
> That said, I yet have to sit down and think about the P state stuff, but
> I was thinking we need some rudimentary domain support for that.
>
> For instance, the big-little thingies seem share their P state per
> cluster, so we need a domain at that level to hang some state off of --
> which we actually have in this case. But we need to ensure we do have
> it -- somehow.

Is there any examples of frequency domains not matching the span of a
sched_domain?

I would have thought that we would have a matching sched_domain to hang
the P and C state information from for most systems. If not, we could
just add it.

I don't think it is safe to assume that big-little always has cluster
P-states. It is implementation dependent. But the most obvious
alternative would be to have per-cpu P-states in which case we would
also have a matching sched_domain.

2014-01-07 09:57:50

by Peter Zijlstra

[permalink] [raw]
Subject: Re: [RFC] sched: CPU topology try

On Mon, Jan 06, 2014 at 05:15:30PM +0000, Morten Rasmussen wrote:
> Is there any examples of frequency domains not matching the span of a
> sched_domain?

nafaik, but I don't really know much about this anyway.

> I would have thought that we would have a matching sched_domain to hang
> the P and C state information from for most systems. If not, we could
> just add it.

This was my thought too.