Re: [PATCH v2] cpufreq: Support per-policy performance boost

From: Viresh Kumar
Date: Fri Aug 25 2023 - 02:40:11 EST


On 22-08-23, 20:48, Jie Zhan wrote:
> The boost control currently applies to the whole system. However, users
> may prefer to boost a subset of cores in order to provide prioritized
> performance to workloads running on the boosted cores.
>
> Enable per-policy boost by adding a 'boost' sysfs interface under each
> policy path. This can be found at:
>
> /sys/devices/system/cpu/cpufreq/policy<*>/boost
>
> Same to the global boost switch, writing 1/0 to the per-policy 'boost'
> enables/disables boost on a cpufreq policy respectively.
>
> The user view of global and per-policy boost controls should be:
>
> 1. Enabling global boost initially enables boost on all policies, and
> per-policy boost can then be enabled or disabled individually, given that
> the platform does support so.
>
> 2. Disabling global boost makes the per-policy boost interface illegal.
>
> Signed-off-by: Jie Zhan <zhanjie9@xxxxxxxxxxxxx>
> Reviewed-by: Wei Xu <xuwei5@xxxxxxxxxxxxx>
> ---
> A possible question could be: why not just limiting 'scaling_max_freq'?
> Well, the fundamental difference is that per-policy boost could be more
> user-friendly. When global boost is enabled, it is not straightforward
> to figure out the base frequency for setting 'scaling_max_freq' to a
> non-boost value. Also, this is supposed to take effect on the physical
> upper frequency limit, reflected through 'cpuinfo_max_freq'.
>
> v1->v2:
> - Rename the interface from 'local_boost' to 'boost'.
> - Illegalize writing 0 to per-policy even if global boost is off.
> - Show the per-policy 'boost' file only when ->set_boost() is available.
>
> v1: https://lore.kernel.org/linux-pm/20230724075827.4160512-1-zhanjie9@xxxxxxxxxxxxx/

Looks good now, thanks.

Acked-by: Viresh Kumar <viresh.kumar@xxxxxxxxxx>

--
viresh