AMD Ryzen 7000 CPUs Get A Surprise Performance Boost With These Features Enabled

amd ryzen 7000 in socket 1
Mitigations for the major security flaws that we keep discovering over the last few years have had significant performance implications for older hardware. (Convenient for the manufacturers, that.) It turns out that on the newest hardware, while certain workloads are still negatively-impacted, Ryzen 7000 series processors actually run slightly better with mitigations enabled.

geomean of all test results
Phoronix ran over 120 tests in Linux on a Ryzen 5 7600X CPU across four variations: the default, secure configuration, disabling either variant of Spectre mitigations individually, and finally with all mitigations disabled. The "mitigations=off" parameter actually disables quite a few security features, but in their testing, it was noticeably slower than the default, mitigations-enabled setting on the Zen 4 CPU for most benchmarks.

mitigations losses on zen 4

A few tests do still show big gains from disabling mitigations. These are primarily tests that involve a lot of disk I/O, such as the OSBench Create Files test and the Apache HTTP Server 200 test. Those tests both gained over 10% performance from disabling mitigations.

mitigations gains on zen 4
This is just the top; there are way more tests than this that favor default settings.

However, most of the rest of the benchmarks that Phoronix tested show gains of anywhere from a 2% advantage all the way up to 42% when running with mitigations enabled. This is a frankly shocking result, as the conventional wisdom is that these security features should be harming performance.

Phoronix doesn't offer an explanation for this behavior, but does suggest that AMD may have optimized the CPU in some way for the behavior with mitigations on. The site advises users with Ryzen 7000 processors to leave mitigations enabled for best performance. It would be interesting to see if this advice applies to Windows, as well.