Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1634857
| From | Vincent Guittot <vincent.guittot@linaro.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg |
| Date | 2017-05-03 12:40 +0200 |
| Message-ID | <tCZRn-41a-1@gated-at.bofh.it> (permalink) |
| References | (5 earlier) <tBkQh-4e7-5@gated-at.bofh.it> <tCAgi-3oI-21@gated-at.bofh.it> <tCNZT-3O5-1@gated-at.bofh.it> <tCX3b-1Uk-3@gated-at.bofh.it> <tCYVk-3kJ-15@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On 3 May 2017 at 11:37, Peter Zijlstra <peterz@infradead.org> wrote: > > On Wed, May 03, 2017 at 09:34:51AM +0200, Vincent Guittot wrote: > > > We use load_avg for calculating a stable share and we want to use it > > more and more. So breaking it because it's easier doesn't seems to be > > the right way to do IMHO > > So afaict we calculate group se->load.weight (aka shares, see > calc_cfs_shares), using cfs_rq->avg.load_avg, which feeds into > tg->load_avg through cfs_rq->tg_load_avg_contrib and > cfs_rq->load.weight. > > And cfs_rq->avg.load_avg is computed from cfs_rq->load.weight, which > is \Sum se->load.weight. > > OTOH group se->avg.load_avg isn't used much, which is TJ's point. > > The only cases where group se->avg.load_avg are relevant to > cfs_rq->avg.load are the cases I listed yesterday, group creation and > group destruction. There we use the group se->avg.load_avg to manage the > boundary conditions. > > So with the proposed change to se->avg.load_avg we can have some > (temporary) boundary effect when you destroy a lot of (previously > active) cgroups. > > > Of course, it could be I overlooked something, in which case, please > tell :-) That's mainly based on the regression i see on my platform. I haven't find the root cause of the regression but it's there which means that using group_entity's load_avg to propagate child cfs_rq runnable_load_avg breaks something > > > That said, I agree it would be nice to entirely get rid of runnable_avg, > but that is a much larger change and would require a lot more work. I > don't immediately see why we can't fix the thing now and then work on > removing runnable_load_avg later. What propose Tejun is to break the group's load_avg and make it follows child cfs_rq's runnable_load_avg instead of child cfs_rq's load_avg so it will be difficult if not possible to try to move load_balance on load_avg and remove runnable_load_avg later on if load_avg doesn't work anymore as expected. So keeping group's load_avg working correctly seems a key point Then, we know that we still have wrong behavior with runnable_load_avg when running task's load are really different. so it fixes part of wider problem IMO > > Of course, we should not regress either, I'll go read up on that part. >
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Vincent Guittot <vincent.guittot@linaro.org> - 2017-04-26 20:20 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Tejun Heo <tj@kernel.org> - 2017-04-27 01:00 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Vincent Guittot <vincent.guittot@linaro.org> - 2017-04-27 10:30 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Tejun Heo <tj@kernel.org> - 2017-04-28 22:40 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Tejun Heo <tj@kernel.org> - 2017-04-28 22:40 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Peter Zijlstra <peterz@infradead.org> - 2017-05-01 18:00 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Tejun Heo <tj@kernel.org> - 2017-05-03 00:10 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Vincent Guittot <vincent.guittot@linaro.org> - 2017-05-02 09:20 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Vincent Guittot <vincent.guittot@linaro.org> - 2017-05-02 15:30 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Tejun Heo <tj@kernel.org> - 2017-05-03 00:40 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Tejun Heo <tj@kernel.org> - 2017-05-03 00:00 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Vincent Guittot <vincent.guittot@linaro.org> - 2017-05-03 09:40 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Peter Zijlstra <peterz@infradead.org> - 2017-05-03 11:40 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Vincent Guittot <vincent.guittot@linaro.org> - 2017-05-03 12:40 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Peter Zijlstra <peterz@infradead.org> - 2017-05-03 15:20 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Tejun Heo <tj@kernel.org> - 2017-05-03 23:50 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Vincent Guittot <vincent.guittot@linaro.org> - 2017-05-04 10:30 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Tejun Heo <tj@kernel.org> - 2017-05-04 19:50 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Vincent Guittot <vincent.guittot@linaro.org> - 2017-05-04 21:10 +0200
Re: [PATCH 2/2] sched/fair: Always propagate runnable_load_avg Tejun Heo <tj@kernel.org> - 2017-05-04 21:10 +0200
csiph-web