RFR: 8349106: Change ChaCha20 intrinsic to use quarter-round parallel implementation on aarch64
Jamil Nimeh
jnimeh at openjdk.org
Fri Jan 31 17:19:18 UTC 2025
This enhancement makes a change to the ChaCha20 block function intrinsic on aarch64, moving away from the block parallel implementation and to the quarter-round parallel implementation that was done on x86_64. Assembly language profiling yielded an 11% improvement in throughput. When put together as an intrinsic and hooked into the JCE ChaCha20 cipher, the gains are more modest, somewhere in the 2-4% range depending on job size, but still an improvement.
-------------
Commit messages:
- Clean up whitespace errors, remove unneeded undefs
- Remove block parallel implementation and cleanup
- 8349106: Change ChaCha20 intrinsic to use quarter-round parallel implementation on aarch64
Changes: https://git.openjdk.org/jdk/pull/23397/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=23397&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8349106
Stats: 141 lines in 1 file changed: 46 ins; 1 del; 94 mod
Patch: https://git.openjdk.org/jdk/pull/23397.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/23397/head:pull/23397
PR: https://git.openjdk.org/jdk/pull/23397
More information about the hotspot-compiler-dev
mailing list