Faster CRC32C & AEGIS-128 Crypto Performance On Linux 6.13 With Intel/AMD CPUs
The crypto subsystem updates were merged yesterday for the in-development Linux 6.13 kernel. Among other crypto improvements are new optimizations for some algorithms when running on Intel and AMD x86_64 processors.
Eric Biggers of Google is at it again with more Linux crypto performance optimizations. As noted last month he's been working on CRC32C throughput optimizations via optimizing the x86 Assembly code. That work can yield up to a few percent better performance on Intel/AMD processors, particularly when having Retpoline enabled. This work involves some jump table elimination, simplifying the code for handling fewer than 200 bytes, and other tweaks to the CRC32C x86 code.
The other optimizations from Eric Biggers to the crypto code for Linux 6.13 is tuning some of the AEGIS-128 x86 Assembly code. The AES-NI version of AEGIS-128 is cleaned up and the performance is 1~5% faster while the binary code size is around 20% smaller.
All in some nice performance optimization tuning within the crypto subsystem for Linux 6.13. ARM/ARM64 separately is also seeing CRCT10DIF optimizations and PowerPC is seeing AES-GCM optimizations.
The crypto pull also brings a new Broadcom BCM74110 RNG driver, support for the Airoha EN7581 TRNG, and STM32MP25x platform support.
Eric Biggers of Google is at it again with more Linux crypto performance optimizations. As noted last month he's been working on CRC32C throughput optimizations via optimizing the x86 Assembly code. That work can yield up to a few percent better performance on Intel/AMD processors, particularly when having Retpoline enabled. This work involves some jump table elimination, simplifying the code for handling fewer than 200 bytes, and other tweaks to the CRC32C x86 code.
The other optimizations from Eric Biggers to the crypto code for Linux 6.13 is tuning some of the AEGIS-128 x86 Assembly code. The AES-NI version of AEGIS-128 is cleaned up and the performance is 1~5% faster while the binary code size is around 20% smaller.
All in some nice performance optimization tuning within the crypto subsystem for Linux 6.13. ARM/ARM64 separately is also seeing CRCT10DIF optimizations and PowerPC is seeing AES-GCM optimizations.
The crypto pull also brings a new Broadcom BCM74110 RNG driver, support for the Airoha EN7581 TRNG, and STM32MP25x platform support.
2 Comments