[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190304174949.GP32494@hirez.programming.kicks-ass.net>
Date: Mon, 4 Mar 2019 18:49:49 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Quentin Perret <quentin.perret@....com>
Cc: Wang, Vincent (王争)
<Vincent.Wang@...soc.com>,
Zhang, Chunyan (张春艳)
<Chunyan.Zhang@...soc.com>, Ingo Molnar <mingo@...hat.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Chunyan Zhang <zhang.lyra@...il.com>,
"Rafael J. Wysocki" <rjw@...ysocki.net>
Subject: Re: 答复: [PATCH V4] sched/cpufreq: initialize iowait_boost_max and
iowait_boost with cpu capacity
On Mon, Mar 04, 2019 at 04:48:16PM +0000, Quentin Perret wrote:
> On Monday 04 Mar 2019 at 16:26:16 (+0100), Peter Zijlstra wrote:
> > On Mon, Mar 04, 2019 at 01:58:12PM +0000, Quentin Perret wrote:
> > > You could also update the values in sugov_get_util() at the cost of a
> > > small overhead to compute 'min'. I'm not sure what's preferable since
> > > we wanted to avoid that kind of overhead in the first place ...
> >
> > Or,... we could actually make things simpler.
> >
> > How's the below? I have a feq questions wrt min, mostly:
> >
> > - what's the difference between policy->min and
> > policy->cpuinfo.min_freq; it used to be the former, the below uses
> > the latter.
>
> As mentioned on IRC, IIRC policy->min is something that can be written
> from userspace (for example) to cap the min freq. OTOH, cpuinfo.min_freq
> is read-only and just reports the lowest OPP.
>
> Rafael is this correct ?
>
> > - should we have a min_freq based value, instead of a constant; the
> > difference being that with this the actual boost speed depends in the
> > gap between min/max.
>
> If the above is correct, then I agree. Looking at min_freq simplifies
> things quite a bit since it doesn't need to be updated all the time,
> and the whole policy->min stuff is dealt with at the CPUFreq core level
> so it's not obvious sugov should care.
Using a constant value (my dice seem to like 128 for some reason) would
result in the boost curve being independent of the available frequencies
-- and thus the same for all machines.
With that particular value, we need 9 consecutive IOWAIT wakeups to
reach MAX, instead of some random number (7 for your juno r0).
Powered by blists - more mailing lists