AES-NI XTS Crypto Performance Looking Good For AMD With Linux 5.12 Fix

As reported last year, AES-NI regressed heavily under Retpolines and seemingly went unnoticed for the better part of three years. Now with Linux 5.12 the AES-NI kernel module code has been reworked so it doesn't face such overhead in Retpolines-enabled environments and in turn really helps out with performance.
I previously ran some benchmarks while now for getting an idea as to the impact with Linux 5.12 mainline, I carried out some fresh cryptsetup benchmarks with two AMD systems of Linux 5.11 stable versus Linux 5.12 Git at the end of the merge window.
The AMD Ryzen 5 (Zen 2) laptop is seeing much better AES-XTS performance:
Again, such change is just expected for AES-XTS with the AES-NI kernel module change for Linux 5.12 on Retpoline-enabled systems. It's not a novel improvement but rather addressing a Retpoline-induced performance regression that went unnoticed until recently.
And now for some Ryzen 9 5950X benchmarks with Cryptsetup on Linux 5.11 vs. 5.12 Git in the default kernel configuration where Retpolines remains in use for Zen 3:
The AES-NI work is among many new/improved features with Linux 5.12 and will debut as stable in about two months time. It's also quite likely this AES-NI work as a "regression fix" will be back-ported to stable kernel series too.
5 Comments