On Thu, 22 Oct 2026 02:24:10 GMT, Volodymyr Paprotski <[email protected]> wrote:
>> This provides AVX2 intrinsics for MLKEM operations. I also refactored AVX512 >> for code sharing. (A lot of this is similar to the MLDSA refactoring I did, >> and general shape follows that design) >> >> Performance: >> - KEMBench.MLKEM.(en|de)capsulate on AVX2 got 50-80% faster (depending on >> keysize and operation) >> - On AVX512, the intrinsics themselves were ~10-30% faster, but it doesnt >> really show on the top-level KEMBench.MLKEM.(en|de)capsulate (other parts of >> the benchmark take over, eg SHA3 which we optimized previously) >> >> --------- >> - [X] I confirm that I make this contribution in accordance with the >> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). > > Volodymyr Paprotski has updated the pull request with a new target base due > to a merge or a rebase. The pull request now contains eight commits: > > - re-enable test > - Merge remote-tracking branch 'origin/master' into avx2-mlkem > - whitespace > - reduce fuzz test repetition > - Merge remote-tracking branch 'origin/master' into avx2-mlkem > - prepare for rebase > - comments from Anas > - avx2 mlkem drop src/hotspot/cpu/x86/stubGenerator_x86_64_kyber.cpp line 239: > 237: // uses that deserve explanation > 238: // - input1 and scratch might be the same > 239: // - input2 and scratch might overlap The usage at line 644 is input2 and output overlap with input1 being same as scratch. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/33444#discussion_r4532233724
