Re: [PATCH] x86,sched: On AMD EPYC set freq_max = max_boost in schedutil invariant formula

From: Giovanni Gherdovich
Date: Wed Jan 20 2021 - 20:12:53 EST


On Thu, 2021-01-21 at 01:35 +0100, Giovanni Gherdovich wrote:
> Phoronix.com discovered a severe performance regression on AMD APYC
> introduced on schedutil [see link 1] by the following commits from v5.11-rc1
>
> commit 41ea667227ba ("x86, sched: Calculate frequency invariance for AMD systems")
> commit 976df7e5730e ("x86, sched: Use midpoint of max_boost and max_P for frequency invariance on AMD EPYC")
>
> Furthermore commit db865272d9c4 ("cpufreq: Avoid configuring old governors as
> default with intel_pstate") from v5.10 made it extremely easy to default to
> schedutil even if the preferred driver is acpi_cpufreq. Distros are likely to
> build both intel_pstate and acpi_cpufreq on x86, and the presence of the
> former removes ondemand from the defaults. This situation amplifies the
> visibility of the bug we're addressing.
>
> [link 1] https://www.phoronix.com/scan.php?page=article&item=linux511-amd-schedutil&num=1
>
> 1. PROBLEM DESCRIPTION : over-utilization and schedutil
> 2. PROPOSED SOLUTION : raise freq_max in schedutil formula
> 3. DATA TABLE : image processing benchmark
> 4. ANALYSIS AND COMMENTS : with over-utilization, freq-invariance is lost

I've sent this patch twice by mistake, sorry about that.

In case it is of interest, I've shared some plots made while studying this
regression in a bugzilla entry:

https://bugzilla.kernel.org/show_bug.cgi?id=211305


Thanks,
Giovanni