Linux 3.9 To Linux 4.9 Kernel Benchmarks: Testing The 21 Last Kernels
With the in-development Linux 4.9 kernel showing signs of some performance improvements, I've gone ahead and tested the last 21 major kernel releases on the same system. From Linux 3.9 to Linux 4.9, each of the major kernel releases was tested from the same Intel Core i7 desktop with a variety of benchmarks.
When starting my comparison, I used an Intel Haswell Core i7 4790K system considering the quality support going back a number of years to be able to run these older kernels. I set out to go back testing every kernel I could. With the graphics tests, I was able to go back to Linux 3.11 as Linux 3.10 and earlier were running into problems with the Intel HD Graphics 4600. I had to stop with Linux 3.9 as Linux 3.8 and earlier were running into apparent problems with systemd:
So coincidentally it's a Linux 3.9 to Linux 4.9 kernel comparison for this system comprised of a Core i7 4790K Devil's Canyon, Gigabyte Z97-HD3P motherboard, 16GB of RAM, and 120GB OCZ TRION 100 SSD. Ubuntu 16.10 was cleanly installed with GCC 6.2.0, Mesa 12.1-dev, an EXT4 file-system, and the other stock components. The only change during testing was the installed kernel. All of these stock/vanilla kernels were acquired from the Ubuntu Mainline Kernel PPA for easy reproducibility by others and being a reliable source for testing.
The other hardware/software differences in the table just come down to how different items were expressed on particular kernel versions. E.g. on the older kernels using ACPI CPUFreq by default for Haswell CPUs, they advertise the stock base frequency via sysfs while the newer P-State driver shows the turbo frequency via sysfs. Likewise, on the older kernels only OpenGL 3.1 was supported for Haswell graphics while on the newer kernels there is support for OpenGL 3.3 with the latest Mesa. No setting changes or anything along those lines were made when booting to the different kernels and using the stock kernel configurations supplied by the Ubuntu Mainline PPA.
All of these kernel benchmarks were automated via the Phoronix Test Suite benchmarking software. Thanks to Phoronix reader MadCatX for sponsoring these tests with a tip. If you would like to support all our Linux benchmarking work or put in your own test request with high priority, please consider joining Phoronix Premium or making a PayPal donation. Coming up in an article later this week will be power consumption results for all the tested kernels.