Linux 4.4 To 4.16 Kernel Benchmarks With AMD Ryzen Threadripper
This past weekend I posted some Linux 3.17 to Linux 4.16 kernel benchmarks using two older Intel hardware platforms and one of the most frequent requests to come in following that article were some AMD benchmarks looking at the Intel Linux performance going a ways back. Here are some test results from Linux 4.4 to 4.16 using an AMD Ryzen Threadripper 1950X system.
The approach was similar in testing every major Linux kernel x.0 release going back to Linux 4.4, which was as far back as the system would successfully boot. Though only with Linux 4.7 and newer could graphics tests be carried out as user-space for the Radeon R7 370 was having display issues with Linux 4.6 and older. Additionally, there could only be network benchmarks with Linux 4.8 and newer as that was as far back as there was a network driver for this system. The intent was obviously smaller of this kernel comparison in wanting to use the latest-generation and more interesting AMD Zen-based hardware than pulling out some old AMD platform.
Each kernel release was obtained from the Ubuntu Mainline Kernel PPA from Linux 4.4.0 through Linux 4.16 Git using the Git state as of 25 March.
Ubuntu 18.04 was the base operating system for this AMD Ryzen Threadripper 1950X + Gigabyte X399 AORUS Gaming 7 + 4 x 4GB DDR4-3600 system with 120GB Corsair Force MP500 NVMe SSD and Radeon R7 370 graphics cards. Besides swapping out the kernels via the Ubuntu Mainline Kernel archive, the other settings were kept at their defaults. It is worth pointing out the anomaly though of Linux 4.6 having defaulted to the performance governor rather than ondemand with the other kernels, but only noticed that after the fact and didn't end up really changing in any substantive way.
As far as Spectre mitigation goes, Linux 4.15.0 added the full AMD Retpoline protection while Linux 4.16 Git has Retpolines for Spectre V2 as well as the __user pointer sanitization for Spectre V1.
All of these AMD Ryzen Threadripper Linux kernel benchmarks were carried out via the Phoronix Test Suite.