> The limb size for Curve448 operations is currently 16x28-bit. This is > modified to be vastly more efficient with 8x56-bit limbs, where performance > gains yield +39-72% for Java alone: > > AArch64: > Key pair generation: +48% > Key agreement: +56% > > Key pair generation for Ed448: +50% > Ed448 signing: +57% > Ed448 verification: +72% > > x86_64: > Key pair generation: +43% > Key agreement: +43% > > Key pair generation for Ed448: +40% > Ed448 signing: +39% > Ed448 verification: +39% > > --------- > - [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 pull request now contains six commits: - Special case 8 limbs for conditional assigns - Merge with master branch - Merge with master branch - Fix reductions in high order limbs and typos - Add multByInt and square implementation - 8393160: Increase limb sizes for Curve448 field operations in Java ------------- Changes: https://git.openjdk.org/jdk/pull/33277/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=33277&range=01 Stats: 1005 lines in 4 files changed: 962 ins; 38 del; 5 mod Patch: https://git.openjdk.org/jdk/pull/33277.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/33277/head:pull/33277 PR: https://git.openjdk.org/jdk/pull/33277
