[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAKfTPtAFFZaGSyjNL+9LfDBBR0b9TWw3DwFKJZXURgcf-_W6NA@mail.gmail.com>
Date: Mon, 20 Feb 2023 14:39:33 +0100
From: Vincent Guittot <vincent.guittot@...aro.org>
To: Peter Zijlstra <peterz@...radead.org>
Cc: Dietmar Eggemann <dietmar.eggemann@....com>,
Qais Yousef <qyousef@...alina.io>,
Kajetan Puchalski <kajetan.puchalski@....com>,
Jian-Min Liu <jian-min.liu@...iatek.com>,
Ingo Molnar <mingo@...nel.org>,
Morten Rasmussen <morten.rasmussen@....com>,
Vincent Donnefort <vdonnefort@...gle.com>,
Quentin Perret <qperret@...gle.com>,
Patrick Bellasi <patrick.bellasi@...bug.net>,
Abhijeet Dharmapurikar <adharmap@...cinc.com>,
Qais Yousef <qais.yousef@....com>,
linux-kernel@...r.kernel.org,
Jonathan JMChen <jonathan.jmchen@...iatek.com>
Subject: Re: [RFC PATCH 0/1] sched/pelt: Change PELT halflife at runtime
On Mon, 20 Feb 2023 at 11:13, Peter Zijlstra <peterz@...radead.org> wrote:
>
> On Thu, Feb 09, 2023 at 05:16:46PM +0100, Vincent Guittot wrote:
>
> > > The results is very similar to PELT halflife reduction. The advantage is
> > > that 'util_est_faster' is only activated selectively when the runtime of
> > > the current task in its current activation is long enough to create this
> > > CPU util boost.
> >
> > IIUC how util_est_faster works, it removes the waiting time when
> > sharing cpu time with other tasks. So as long as there is no (runnable
> > but not running time), the result is the same as current util_est.
>
> Uh.. it's double the speed, no? Even if there is no contention, the
> fake/in-situ pelt sum runs at double time and thus will ramp up faster
> than normal.
Ah yes. I haven't noticed it was (delta * 2) and not delta
>
> > util_est_faster makes a difference only when the task alternates
> > between runnable and running slices.
>
> UTIL_EST was supposed to help mitigate some of that, but yes. Also note
> that _FASTER sorta sucks here because it starts from 0 every time, if it
> were to start from the state saved by util_est_dequeue(), it would ramp
> up faster still.
Yes.
>
> Patch has a comment along those lines I think.
>
> > Have you considered using runnable_avg metrics in the increase of cpu
> > freq ? This takes into the runnable slice and not only the running
> > time and increase faster than util_avg when tasks compete for the same
> > CPU
>
> Interesting! Indeed, that's boosting the DVFS for contention. And as
> deggeman's reply shows, it seems to work well.
>
> I wonder if that one place where it regresses is exactly the case
> without contention.
Yes that might be the case indeed. I would expect uclamp_min to help
for ensuring a min frequency such scenario
Powered by blists - more mailing lists