The Current Spectre / Meltdown Mitigation Overhead Benchmarks On Linux 5.0
With it being a little over one year since Spectre and Meltdown mitigations became public and with the Linux kernel today hitting the big "5.0" release, I decided to run some benchmarks of the current out-of-the-box performance hit as a result of the current default mitigation techniques employed by the Linux kernel. The default vs. unmitigated performance impact for Spectre/Meltdown are tested on an Intel Core i7 and Core i9 systems while there is also an AMD Ryzen 7 box for reference with its Spectre mitigation impact on Linux 5.0.
These tests are for reference purposes to see what the default/out-of-the-box performance cost is to Spectre/Meltdown on the Linux 5.0 kernel being released today. The near-final 5.0 Git snapshots were used for testing atop Ubuntu 18.10 on three different systems - the hardware is different in these systems in looking at their mitigated vs. unmitigated performance impact rather than looking at the raw CPU performance between systems.
The "mitigated" benchmarks were done with the default configuration while the "unmitigated" tests were done via the run-time disabling of the relevant options, though that does still leave user pointer sanitization and such enabled. Additionally, the same BIOS/microcode (the latest on each system) was maintained the same as opposed to comparing pre/post states... Basically looking at the 2019 out-of-the-box cost to these mitigations after being revised over several kernel cycles now compared to what interested users can achieve by disabling these mitigations, albeit sacrificing security.
Via the Phoronix Test Suite a range of benchmarks were run in various workloads affected by these widely talked about CPU vulnerabilities over the past year.