AMD Ryzen 9 3900X Power Usage Is Running Measurably Higher On Linux Than Windows
When comparing Ubuntu 19.04 to Windows 10 1903 with each operating system having all available updates and even using Linux 5.3 for the Ubuntu tests, the power usage on the same hardware was often measurably higher on Linux over Windows 10. Beyond being the same exact system, the UEFI/firmware settings were also untouched between the Windows/Linux testing and basically at their defaults. Each OS was at their defaults.
Same hardware, same firmware settings. Windows vs. Linux power data on Ryzen 9 3900X. More data and findings soon. pic.twitter.com/bIW5aJ6nmv
— Phoronix (@phoronix) August 29, 2019
With some on Twitter initially claiming the difference being due to Windows 10's energy efficient default, I also did a secondary Windows 10 run when switching the power mode to its "best performance" mode too.
The AC system power consumption was monitored by an external system with the Ryzen 9 3900X system connected to a WattsUp Pro power meter and being polled by the Phoronix Test Suite.
First up is a look at the AC power consumption from a cold boot through loading the desktop and then idling for five minutes. During this idle period, Ubuntu 19.04 on this Ryzen 9 3900X system was pulling around 20 Watts more than Windows 10. Windows 10 when switched to its "best performance" power mode during testing only resulted in a Watt or two increase most of the time when not under load.
This is a look at the power usage under load when running the open-source Xonotic first person shooter game followed by Stockfish, Asmfish, encode-mp3, and Blender for a mix of single and multi-threaded workloads. We see that while running Xonotic (the first test), the Windows 10 power consumption was actually higher on Windows than Linux. But when it came to the multi-threaded workloads, Ubuntu was pulling considerably more -- generally 20~30 Watts more than Windows 10. The Windows 10 "best performance" power mode did yield a few Watt increase over the default behavior, but still nothing like was seen on Ubuntu Linux.
One of the possibilities that does come to mind is that there is the support on Windows 10 for the Collaborative Processor Performance Control (CPPC) support of Zen 2 but on Linux not at the moment. AMD did recently post patches for their new CPUFreq CPPC driver and I'll be testing those patches shortly for seeing if that helps lower the AMD Ryzen 9 3900X power usage on Linux. I'll also be doing some other kernel tests/comparisons as well.
So I'm still working to narrow down this significant power difference between the Ryzen 9 on Windows 10 and Linux with next up looking at CPUFreq CPPC, among other kernel options. Stay tuned for updates through the weekend. If you do enjoy my relentless Linux benchmarking, please show your support by at the very least not viewing this web-site with any ad-blocker otherwise joining Phoronix Premium for ad-free site access and multi-page articles on a single page or PayPal tips are also appreciated for helping with these time-consuming tests.