Re: [RFC/RFT] [PATCH 02/10] cpufreq: intel_pstate: Conditional frequency invariant accounting

From: Rafael J. Wysocki
Date: Wed May 16 2018 - 04:35:10 EST


On Wed, May 16, 2018 at 9:29 AM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> On Wed, May 16, 2018 at 09:16:40AM +0200, Peter Zijlstra wrote:
>> On Tue, May 15, 2018 at 09:49:03PM -0700, Srinivas Pandruvada wrote:
>> > intel_pstate has two operating modes: active and passive. In "active"
>> > mode, the in-built scaling governor is used and in "passive" mode,
>> > the driver can be used with any governor like "schedutil". In "active"
>> > mode the utilization values from schedutil is not used and there is
>> > a requirement from high performance computing use cases, not to read
>> > any APERF/MPERF MSRs. In this case no need to use CPU cycles for
>> > frequency invariant accounting by reading APERF/MPERF MSRs.
>> > With this change frequency invariant account is only enabled in
>> > "passive" mode.
>>
>> WTH is active/passive? Is passive when we select performance governor?
>
> Bah, I cannot read it seems. active is when we use the intel_pstate
> governor and passive is when we use schedutil and only use intel_pstate
> as a driver.
>
>> Also; you have to explain why using APERF/MPERF is bad in that case. Why
>> do they care if we read those MSRs during the tick?
>
> That still stands.. this needs to be properly explained.

I guess this is from the intel_pstate perspective only.

The active mode is only used with HWP, so intel_pstate doesn't look at
the utilization (in any form) in the passive mode today.

Still, there are other reasons for PELT to be scale-invariant, so ...