Spectre-v2 isn't going anywhere soon. VUSec, a group of researchers from Vrije Universiteit Amsterdam, recently discovered Branch History Injection (BHI), a byproduct of Spectre-v2 that affects Intel and Arm processors. According to Phoronix's latest report, while Intel has taken a performance hit up to 35%, AMD's processors got off easy.
AMD utilizes a Retpoline (return and trampoline) protection with its Zen-based processors to mitigate the Spectre-v2 vulnerability. Instead of the standard Retpoline implementation, AMD took the LFENCE/JMP approach, which is more forgiving on Ryzen processors. Unfortunately, Intel (yes, Intel) discovered flaws in AMD's mitigation, prompting the chipmaker to shift to a generic Retpoline model, the same one that Intel chips have adopted.
The transition from LFENCE to generic Retpoline will bring performance repercussions for all of AMD's modern chips. Phoronix highlighted that Linux distributions would allow users to defect back to LFENCE if they wish, but doing so will be a liability on security.
The Ryzen 9 5950X (Vermeer) suffered a 54% performance reduction with the Stress-NG (Context Switching) benchmark. Stress-NG is similar to Prime95 for Windows users, so it isn't the most relevant metric for measuring performance from a consumer workload standpoint. However, the Ryzen 9 5950X held up pretty well besides that specific benchmark. There was only a 5.3% and 5% drop in networking and storage performance, respectively. In comparison, the Core i9-12900K (Alder Lake) experienced performance hits of 26.7% and 14.5% in the networking and storage department.
Compared to the Ryzen 9 5950X, the Ryzen 9 5900HX (Cezanne) wasn't affected as much with Stress-NG. The mobile Zen 3 chip only saw 22% lower performance. However, the results revealed a higher toll on networking and storage performance. With the generic Retpoline, the Ryzen 9 5900X took a 9.2% and 9.1% hit in the former and latter, respectively.
It indeed came as a surprise that generic Retpoline didn't significantly impact AMD's EPYC server processors that handle more intensive I/O workloads. For example, with the EPYC 72F3, Phoronix only logged 8.9% lower networking performance and 7.2% lower storage performance. In addition, some workloads even benefitted from enabling generic Retpoline, showing improvements ranging from 2.2% to 3.8%.
Phoronix conducted its tests in Linux 5.17 kernel, so it remains to be seen if Windows users will experience similar margins regarding performance penalties. As per the publication, Microsoft reportedly will or has patched Windows, so it won't take long for us to find out.