]> www.infradead.org Git - users/jedix/linux-maple.git/commit
crypto: x86/aes-xts - optimize _compute_first_set_of_tweaks for AVX-512
authorEric Biggers <ebiggers@google.com>
Sat, 5 Apr 2025 04:09:30 +0000 (21:09 -0700)
committerHerbert Xu <herbert@gondor.apana.org.au>
Mon, 7 Apr 2025 05:22:28 +0000 (13:22 +0800)
commit570ef50a15d7caa4d63d66f1e28d967065733f84
tree75eb0d5b88ba399d7945ac7144d2de96ecd2642d
parentbc23fe6dc172b09778ce3d75a9157decd153f4ef
crypto: x86/aes-xts - optimize _compute_first_set_of_tweaks for AVX-512

Optimize the AVX-512 version of _compute_first_set_of_tweaks by using
vectorized shifts to compute the first vector of tweak blocks, and by
using byte-aligned shifts when multiplying by x^8.

AES-XTS performance on AMD Ryzen 9 9950X (Zen 5) improves by about 2%
for 4096-byte messages or 6% for 512-byte messages.  AES-XTS performance
on Intel Sapphire Rapids improves by about 1% for 4096-byte messages or
3% for 512-byte messages.  Code size decreases by 75 bytes which
outweighs the increase in rodata size of 16 bytes.

Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/x86/crypto/aes-xts-avx-x86_64.S