On Fri, Apr 28, 2017 at 04:33:47PM -0400, Tejun Heo wrote: > I'm attaching the debug patch. With your change (avg instead of > runnable_avg), the following trace shows why it's wrong.
Ah, OK. So you really want runnable_avg (and I understand why), which is rather unfortunate, since we have everything on load_avg. So for shares, load_avg gives a more stable number. This is important since tg->load_avg is a global number, so computing it is expensive (and slow). Therefore more stable numbers are good. > The thing with cfs_rq se's load_avg is that, it isn't really used > anywhere else AFAICS, so overriding it to the cfs_rq's > runnable_load_avg isn't prettiest but doesn't really change anything. You mean, consistently expressing a group's se->load.weight in terms of runnable_load_avg? See the above.