> This enhancement provides AArch64 GPR intrinsics for doubleKeccak().  
> Previously, only SIMD (Neon) intrinsics were implemented for doubleKeccak() 
> on AArch64 systems.  Performance gains for ML-KEM and ML-DSA benchmarks 
> improve from 2 to 9% with the GPR intrinsics:
> 
> ML-KEM decapsulation: +2-6% ops/sec
> ML-KEM encapsulation: +3-8% ops/sec
> ML-KEM key generation: +4-6% ops/sec
> 
> ML-DSA signing: +2-4% ops/sec
> ML-DSA verification: +6-9% ops/sec
> ML-DSA key generation: +6-8% ops/sec
> 
> ---------
> - [X] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

Shawn Emery has updated the pull request with a new target base due to a merge 
or a rebase. The incremental webrev excludes the unrelated changes brought in 
by the merge/rebase. The pull request contains 10 additional commits since the 
last revision:

 - Merge with master branch
 - Implement more comments from theRealAph
 - Implement more comments from adinn
 - Implement more comments from adinn
 - Implement more comments from theRealAph
 - Implement more comments from theRealAph and adinn
 - Implement comments from theRealAph and adinn
 - Don't need full 128 bytes on stack; 112 is sufficient and 16 byte aligned
 - Fix AOT Code Cache bug by using ID instead of the name
 - 8379016: Improve double_keccak() intrinsic on ARM when SHA3 instructions are 
not available

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/32049/files
  - new: https://git.openjdk.org/jdk/pull/32049/files/69c81e6d..9053479c

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=32049&range=07
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=32049&range=06-07

  Stats: 331678 lines in 3951 files changed: 277572 ins; 29203 del; 24903 mod
  Patch: https://git.openjdk.org/jdk/pull/32049.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/32049/head:pull/32049

PR: https://git.openjdk.org/jdk/pull/32049

Reply via email to