Re: [RFC/RFT][PATCH] cpufreq: intel_pstate: Generic governors support

From: Srinivas Pandruvada
Date: Tue Nov 01 2016 - 20:16:11 EST


On Tue, 2016-11-01 at 14:11 -0700, Doug Smythies wrote:
> On 2016.10.22 17:17 Rafael J. Wysocki wrote:
>
> >
> > From: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
> >
> > There may be reasons to use generic cpufreq governors (eg.
> > schedutil)
> > on Intel platforms instead of the intel_pstate driver's internal
> > governor.ÂÂHowever, that currently can only be done by disabling
> > intel_pstate altogether and using the acpi-cpufreq driver instead
> > of it, which is subject to limitations.
> >
> > First of all, acpi-cpufreq only works on systems where the _PSS
> > object is present in the ACPI tables for all logical CPUs.ÂÂSecond,
> > on those systems acpi-cpufreq will only use frequencies listed by
> > _PSS which may be suboptimal.ÂÂIn particular, by convention, the
> > whole turbo range is represented in _PSS as a single P-state and
> > the frequency assigned to it is greater by 1 MHz than the greatest
> > non-turbo frequency listed by _PSS.ÂÂThat may confuse governors to
> > use turbo frequencies less frequently which may lead to suboptimal
> > performance.
> >
> > For this reason, make it possible to use the intel_pstate driver
> > with generic cpufreq governors as a "normal" cpufreq driver.ÂÂThat
> > mode is enforced by adding intel_pstate=passive to the kernel
> > command line and cannot be disabled at run time.ÂÂIn that mode,
> > intel_pstate provides a cpufreq driver interface including
> > the ->target() and ->fast_switch() callbacks and is listed in
> > scaling_driver as "intel_cpufreq".
>
> It is not clear to me why users that currently use
> intel_pstate=disable on the kernel command line would benefit from
> this change.
Two reasons I think:
- We have a big turbo zone, where current acpi-cpufreq can't select any
target frequency even if controllable.

- We can still target ACPI-CPPC compatible devices in legacy mode and
later in non-legacy mode.

Thanks,
Srinivas