Re: [RFC PATCH 6.1.y 0/1] cpufreq: amd-pstate: Enable CPU boost in passive and guided modes

Mario Limonciello
2024-10-28T20:07:31Z

On 10/24/2024 22:23, Yuan, Perry wrote:
> [AMD Official Use Only - AMD Internal Distribution Only]
>
>> -----Original Message-----
>> From: Nabil S. Alramli <dev@nalramli.com>
>> Sent: Friday, October 25, 2024 9:05 AM
>> To: stable@vger.kernel.org
>> Cc: nalramli@fastly.com; jdamato@fastly.com; khubert@fastly.com; Yuan, Perry
>> <Perry.Yuan@amd.com>; Meng, Li (Jassmine) <Li.Meng@amd.com>; Huang, Ray
>> <Ray.Huang@amd.com>; rafael@kernel.org; viresh.kumar@linaro.org; linux-
>> pm@vger.kernel.org; linux-kernel@vger.kernel.org; Nabil S. Alramli
>> <dev@nalramli.com>
>> Subject: [RFC PATCH 6.1.y 0/1] cpufreq: amd-pstate: Enable CPU boost in passive
>> and guided modes
>>
>> Greetings,
>>
>> This is a RFC for a maintenance patch to an issue in the amd_pstate driver where
>> CPU frequency cannot be boosted in passive or guided modes. Without this patch,
>> AMD machines using stable kernels are unable to get their CPU frequency boosted,
>> which is a significant performance issue.
>>
>> For example, on a host that has AMD EPYC 7662 64-Core processor without this
>> patch running at full CPU load:
>>
>> $ for i in $(cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq); \
>> do ni=$(echo "scale=1; $i/1000000" | bc -l); echo "$ni GHz"; done | \
>> sort | uniq -c
>>
>> 128 2.0 GHz
>>
>> And with this patch:
>>
>> $ for i in $(cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_cur_freq); \
>> do ni=$(echo "scale=1; $i/1000000" | bc -l); echo "$ni GHz"; done | \
>> sort | uniq -c
>>
>> 128 3.3 GHz
>>
>> I am not sure what the correct process is for submitting patches which affect only
>> stable trees but not the current code base, and do not apply to the current tree. As
>> such, I am submitting this directly to stable@, but please let me know if I should be
>> submitting this elsewhere.
>>
>> The issue was introduced in v6.1 via commit bedadcfb011f ("cpufreq:
>> amd-pstate: Fix initial highest_perf value"), and exists in stable kernels up until
>> v6.6.51.
>>
>> In v6.6.51, a large change, commit 1ec40a175a48 ("cpufreq: amd-pstate:
>> Enable amd-pstate preferred core support"), was introduced which significantly
>> refactored the code. This commit cannot be ported back on its own, and would
>> require reviewing and cherry picking at least a few dozen of commits in cpufreq,
>> amd-pstate, ACPI, CPPC.
>>
>> This means kernels v6.1 up until v6.6.51 are affected by this significant
>> performance issue, and cannot be easily remediated.
>>
>> Thank you for your attention and I look forward to your response in regards to what
>> the best way to proceed is for getting this important performance fix merged.
>>
>> Best Regards,
>>
>> Nabil S. Alramli (1):
>> cpufreq: amd-pstate: Enable CPU boost in passive and guided modes
>>
>> drivers/cpufreq/amd-pstate.c | 8 ++------
>> 1 file changed, 2 insertions(+), 6 deletions(-)
>>
>> --
>> 2.35.1
>
> Add Mario and Gautham for any help.
>
> Perry.
>

If doing a patch that is only for 6.1.y then I think that some more of
this information from the cover letter needs to push into the patch itself.

But looking over the patch and considering how much we've changed this
in the newer kernels I think it is a sensible localized change for 6.1.y.

As this is fixed in 6.6.51 via a more complete backport patch please
only tag 6.1 in your "Cc: stable@vger.kernel.org" from the patch.