AMD Performance On Linux 5.11 Remains Mixed Due To Schedutil With Frequency Invariance
Back on Christmas I wrote about Linux 5.11 regressing for AMD performance on Zen 2 and newer systems where the just-added CPU frequency invariance support was often hurting various workloads when using the default "Schedutil" scheduler utilization frequency scaling governor. Since then and through the holidays I have been carrying out many more benchmarks looking at the Linux 5.11 performance with a particular focus on the AMD desktop/server platforms.
Long story short, the new AMD frequency invariance support found with Linux 5.11 and utilized by Schedutil is often causing performance regressions. I have found some Zen 2 systems not being plagued by slower performance but have found more systems reaffirming my prior report and benchmark results. The regressions happening for Linux 5.11 on AMD do indeed appear to be squarely due to frequency-invariance/Schedutil and if switching over to the CPUFreq "performance" governor will avoid the regression (and generally better performance too, but a pity most Linux distributions do not default to that preferred governor for optimal performance).
First up here is a look at a Ryzen 9 3900XT box for tests with measurable differences between Linux 5.10 and 5.11-rc1:
Some of the common desktop-minded tests we've seen Linux 5.11 fall on include the likes of the Kvazaar H.265 video encoder, x265 as well, and a number of open-source games like Xonotic, Tesseract, etc.
Some of the regressions are quite significant on most of the systems tested. But it seems to really depend upon the particular CPU for how well the frequency invariance support is performing or not. For the workloads regressing it tends to be where the CPU is not fully saturated, such as with 1080p encoding where as 4K encoding tests tended to not regress with Linux 5.11. This is happening with various desktop and server processors. It's only for Zen 2 and newer where CPPC data is available that the frequency invariance support is flipped on with Linux 5.11.