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.