On Wed, 24 Jun 2026 20:05:13 GMT, Volodymyr Paprotski <[email protected]> wrote:
>> With `quadKeccak`, it is possible to have 3 extra `keccak`s calls that are >> really noops.. teach `SHA3Parallel.squeeze()` how many operations it really >> should be doing. >> >> While it is possible to match precisely the number of keccak calls >> required.. the previous implementation always called doubleKeccak, so >> collapsing the odd numbers to the closest even. >> >> PS: `make install-hsdis test >> TEST="micro:org.openjdk.bench.javax.crypto.full.SignatureBench.MLDSA" >> MICRO="JAVA_OPTIONS=-XX:+UnlockDiagnosticVMOptions >> -XX:-UseSHA3Intrinsics;FORK=1;ITER=3;TIME=10;WARMUP_ITER=7;WARMUP_TIME=10;OPTIONS=-prof >> perfasm -p algorithm=ML-DSA-65"` >> >> --------- >> - [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 incrementally with one > additional commit since the last revision: > > comment from Ferenc I ran ML-KEM and ML-DSA benchmarks on a Macbook Pro M3 36GB Memory, see attached. Everything is improved with the set of changes except for ML-KEM-512 (encapsulation:-0.92%/decapsulation:-2.25%) and ML-DSA-44 (key generation:-1.03%). [8384353BenchmarksM3Pro.pdf](https://github.com/user-attachments/files/29319713/8384353BenchmarksM3Pro.pdf) ------------- PR Comment: https://git.openjdk.org/jdk/pull/31648#issuecomment-4795420998
