AMD Ryzen 9 3900X Linux CPU Frequency Scaling Governor Benchmarks
Given the recent talk about the Schedutil CPU frequency scaling governor and its future along with CPU frequency scaling behavior in general on AMD Zen 2 processors, here are some benchmarks of the Ryzen 9 3900X when tested with the different Linux "CPUFreq" governor options.
This round of testing is just for reference purposes in looking at how these different CPU frequency scaling governor tunables compare. The power consumption between the modes weren't compared due to the WattsUp Pro meters being busy on other systems and this testing was done prior to the recent Windows/Linux power discoveries; in fact, this testing was from back in July albeit slipped under the radar for publishing these figures.
From the Linux 5.3 Git kernel as of the end of July while running Ubuntu 18.04 LTS, the CPUFreq governor options of ondemand, performance, powersave, and schedutil were tested. For most Linux distributions, "ondemand" is the default governor while "performance" is known for some workloads to deliver better performance when the CPUFreq driver doesn't respond fast enough for ramping up the CPU clock frequencies. Schedutil meanwhile is the newest governor and makes use of the kernel's scheduler utilization data to try to make more informed decisions about what to do with the CPU frequencies. Schedutil has an interesting future ahead, but as we've shown several times, there generally are shortcomings still compared to the likes of Schedutil. The powersave governor, lastly, keeps the clocks at a minimum and really isn't useful for a desktop unless really trying to conserve power. But for this article we're just looking at the performance difference on the Ryzen 9 3900X for easily changing this Linux kernel tunable.
Via the Phoronix Test Suite various CPU benchmarks were carried out for seeing the difference of these CPUFreq governors.