[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20180207115707.GJ5739@e110439-lin>
Date: Wed, 7 Feb 2018 11:57:07 +0000
From: Patrick Bellasi <patrick.bellasi@....com>
To: Peter Zijlstra <peterz@...radead.org>
Cc: linux-kernel@...r.kernel.org, linux-pm@...r.kernel.org,
Ingo Molnar <mingo@...hat.com>,
"Rafael J . Wysocki" <rafael.j.wysocki@...el.com>,
Viresh Kumar <viresh.kumar@...aro.org>,
Vincent Guittot <vincent.guittot@...aro.org>,
Paul Turner <pjt@...gle.com>,
Dietmar Eggemann <dietmar.eggemann@....com>,
Morten Rasmussen <morten.rasmussen@....com>,
Juri Lelli <juri.lelli@...hat.com>,
Todd Kjos <tkjos@...roid.com>,
Joel Fernandes <joelaf@...gle.com>,
Steve Muckle <smuckle@...gle.com>
Subject: Re: [PATCH v4 1/3] sched/fair: add util_est on top of PELT
On 06-Feb 20:15, Peter Zijlstra wrote:
> On Tue, Feb 06, 2018 at 08:09:00PM +0100, Peter Zijlstra wrote:
> > On Tue, Feb 06, 2018 at 06:33:15PM +0000, Patrick Bellasi wrote:
> >
> > > Good point, I was actually expecting this question and I should have
> > > added it to the cover letter, sorry.
> > >
> > > The reasoning was: the task's estimated utilization is defined as the
> > > max between PELT and the "estimation". Where "estimation" is
> > > the max between EWMA and the last ENQUEUED utilization.
> > >
> > > Thus I was envisioning these two calls:
> > >
> > > _task_util_est := max(EWMA, ENQUEUED)
> > > task_util_est := max(util_avg, _task_util_est)
> > >
> > > but since now we have clients only for the first API, I've not added
> > > the second one. Still I would prefer to keep the "_" to make it clear
> > > that's and util_est's internal signal, not the actual task's estimated
> > > utilization.
> > >
> > > Does it make sense?
> > >
> > > Do you prefer I just remove the "_" and we will refactor it once we
> > > should add a customer for the proper task's util_est?
> >
> > Hurm... I was thinking:
> >
> > task_util_est := max(util_avg, EWMA)
> >
> > But the above mixes ENQUEUED into it.. *confused*.
>
> So mixing in ENQUEUED seems to give it an upward BIAS if the very last
> activation was 'high'. Thereby improving ramp-up.
>
> That seems to be what we want.. might be nice to have that in a comment
> ;-)
Ok, I should have read this one before... to avoid you a longer
(boring) response to your previous email :/
> I'm thinking we want a different name for max(EWMA, ENQUEUED) though,
> but I really can't come up with a sensible suggestion, which I suppose,
> is why you stuck an underscore on it and went on with things.
The only sensible way I come up with is to consider that max as a
util_est "internals"... while the actual task_util_est() (without "_")
should consider util_avg as well, for PELT tracking when a task
is becoming bigger the it's previous activations.
Is that not reasonable enough?
Potentially I can add also the task_util_est() version... but right
now we do not have clients... still gcc should not be upset.
--
#include <best/regards.h>
Patrick Bellasi
Powered by blists - more mailing lists