Messages in this thread | | | Date | Mon, 27 Jul 2015 04:31:22 +0800 | From | Yuyang Du <> | Subject | Re: [PATCH v10 7/7] sched: Clean up load average references |
| |
Hi Dietmar,
On Fri, Jul 24, 2015 at 05:41:45PM +0100, Dietmar Eggemann wrote: > On 15/07/15 01:04, Yuyang Du wrote: > > For cfs_rq, we have load.weight, runnable_load_avg, and load_avg. We > > now start to clean up how they are used. > > > > First, as group sched_entity already largely uses load_avg, we now expand > > to use load_avg in all cases. > > You're talking about group se's or cfs_rq owned by the group se's > (se->my_q) here or both?
Definitely, group SE, and if the cfs_rq owned by group SE is also concerned with group SE, then both. I don't think this is very well calculated to be optimal, but probably this is the right move I can think of now.
We need to revisit all of the codes before we can at least make a final call.
> Just asking because both data structures (cfs_rq and se) have a 'struct > load_weight load' as well as 'struct sched_avg avg' member. > > Second, for CPU-wide load balancing, we > > choose to use runnable_load_avg in all cases, which is the same as before > > this series. > > With your patch-set there will be still the difference of > 'cfs_rq->utilization_load_avg' and your 'cfs_rq->avg.util_avg' in the > sense that the former one does not contain the contribution of blocked se's. > > The EAS patch-set adds blocked utilization contribution: > https://lkml.org/lkml/2015/7/7/915 > > The cfs_rq utilization is also used by the load-balancer code via > get_cpu_usage() so the blocked utilization contribution to > 'cfs_rq->avg.util_avg' can change load-balancing as well. > > Since it is not as heavily used as the cfs_rq->runnable_load_avg we > might not need to reintroduce cfs_rq->utilization_load_avg but at least > mention this here. >
Yes, thanks.
| |