Re: [RFC][PATCH 7/7] cpufreq: intel_pstate: Change P-state selection algorithm for Core

From: Wanpeng Li
Date: Tue Aug 23 2016 - 00:50:42 EST


2016-08-23 12:08 GMT+08:00 Srinivas Pandruvada
<srinivas.pandruvada@xxxxxxxxxxxxxxx>:
> On Tue, 2016-08-23 at 11:48 +0800, Wanpeng Li wrote:
>> Hi Rafael,
>> 2016-08-01 7:38 GMT+08:00 Rafael J. Wysocki <rjw@xxxxxxxxxxxxx>:
>> >
>> > From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
>> >
>> > The PID-base P-state selection algorithm used by intel_pstate for
>> > Core processors is based on very weak foundations. Namely, its
>> > decisions are mostly based on the values of the APERF and MPERF
>> > feedback registers and it only estimates the actual utilization to
>> > check if it is not extremely low (in order to avoid getting stuck
>> > in the highest P-state in that case).
>> >
>> > Since it generally causes the CPU P-state to ramp up quickly, it
>> > leads to satisfactory performance, but the metric used by it is
>> > only
>> > really valid when the CPU changes P-states by itself (ie. in the
>> > turbo
>> > range) and if the P-state value set by the driver is treated by the
>> > CPU as the upper limit on turbo P-states selected by it.
>>
>> Do you mean CPU will ignore the request value which is submitted by
>> intel_pstate driver in the turbo range, but respect the upper limit
>> on
>> the turbo P-states which is submitted by intel_pstate driver?
> Any request to request a P-state even upper limit can be totally
> ignored in turbo range.

How to understand Rafael's description "if the P-state value set by
the driver is treated by the CPU as the upper limit on the turbo
P-states selected by it"? The upper limit will be totally ignored in
turbo range.

Regards,
Wanpeng Li