AVX-512 4x multi-buffer implementation of Keccakf1600 #2720
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds a 4x multi-buffer implementation of Keccakf1600 for AVX-512-capable systems.
Results
Run on an
Intel(R) Xeon(R) 6787P
system with the command:(EDIT: updated the numbers below on a release build and with TurboBoost off)
SHA3-224
SHA3-256
SHA3-384
SHA3-512
SHAKE-128
SHAKE-256
SHAKE-256-x4
Absorb
Squeeze
ML-KEM
Key Generation
Encap
Decap
ML-DSA
Key Generation
Signing
Verify
Putting in draft mode while I work out FIPS build issues.