On Tue, Oct 07, 2014 at 09:15:39PM +0100, bsegall@google.com wrote:
Vincent Guittot vincent.guittot@linaro.org writes:
From: Morten Rasmussen morten.rasmussen@arm.com
Adds usage contribution tracking for group entities. Unlike se->avg.load_avg_contrib, se->avg.utilization_avg_contrib for group entities is the sum of se->avg.utilization_avg_contrib for all entities on the group runqueue. It is _not_ influenced in any way by the task group h_load. Hence it is representing the actual cpu usage of the group, not its intended load contribution which may differ significantly from the utilization on lightly utilized systems.
Just noting that this version also has usage disappear immediately when a task blocks, although it does what you probably want on migration.
Yes, as it was discussed at Ksummit, we should include blocked usage. It gives a much more stable metric.
Also, group-ses don't ever use their running_avg_sum so it's kinda a waste, but I'm not sure it's worth doing anything about.
Yeah, but since we still have to maintain runnable_avg_sum for group-ses it isn't much that can be saved I think. Maybe avoid calling update_entity_load_avg() from set_next_entity() for group-ses, but I'm not sure how much it helps.