Running AMD EPYC 7773X Milan-X With Linux 5.18's Performance Improvements
As previously talked about on Phoronix with the in-development Linux 5.18 kernel there is a change to the Linux kernel scheduler around the NUMA imbalance handling when spanning multiple LLCs as is the case with AMD Zen CPUs. Already I've carried out benchmarks looking at some of the areas where AMD EPYC CPUs are enjoying speed-ups on Linux 5.18. Since benchmarking the AMD EPYC 7773X with its hefty 1.5GB of L3 cache for 2P servers via AMD 3D V-Cache, I've been curious to try this forthcoming kernel on that Milan-X configuration. Here are such benchmarks looking at the AMD EPYC 7773X 2P performance on Ubuntu 22.04 with its default Linux 5.15 kernel against Linux 5.17 stable and then the 5.18 development kernel.
While principally motivated by the Linux scheduler change coming in the 5.18 kernel, this testing was driven out of curiosity for also seeing if there are any other performance benefits in moving AMD Milan-X to a newer kernel given all the ongoing open-source software advancements. This round of testing was with the AMD EPYC 7773X 2P configuration on AMD's Daytona reference server and with Ubuntu 22.04 LTS installed in its near-final state ahead of the official debut next Thursday.
The AMD EPYC 7773X server was tested on Ubuntu 22.04 in its default configuration (aside from using the P-State performance governor setting throughout) with its Linux 5.15 LTS based kernel and then moving to Linux 5.17 stable and then lastly a Linux 5.18 Git snapshot as of 14 April. For easy reproducibility the kernel upgrades were from the Ubuntu Mainline Kernel PPA and no other kernel or system changes were made during testing besides swapping out the kernel and leaving the BIOS at its default values.
So let's see how AMD EPYC Milan-X looks if moving to the latest Linux kernel...