RFR: 8312425: [vectorapi] AArch64: Optimize vector math operations with SLEEF

Hamlin Li mli at openjdk.org
Tue Oct 15 08:06:25 UTC 2024


Hi,
Can you help to review the patch? Previously it's https://github.com/openjdk/jdk/pull/18605.
This pr is based on https://github.com/openjdk/jdk/pull/20781.

Thanks!

## Test
### tests:
* test/jdk/jdk/incubator/vector/
* test/hotspot/jtreg/compiler/vectorapi/

### options:
* -XX:UseSVE=1 -XX:+EnableVectorSupport -XX:+UseVectorStubs
* -XX:UseSVE=0 -XX:+EnableVectorSupport -XX:+UseVectorStubs
* -XX:+EnableVectorSupport -XX:-UseVectorStubs

## Performance

### Tests
jmh tests are test/micro/org/openjdk/bench/jdk/incubator/vector/operation/ from vectorIntrinsics branch in panama-vector. It's good to have these tests in jdk main stream, I will do it in a separate pr later. (These tests are auto-generated tests from some script&template, it's good to also have those scrip&template in jdk main stream, but those scrip&template generates more other tests than what we need here, so better to add these tests in another pr).

### Options
* +intrinsic: 'FORK=1;ITER=10;WARMUP_ITER=10;JAVA_OPTIONS=-XX:+UnlockExperimentalVMOptions -XX:+EnableVectorSupport -XX:+UseVectorStubs'
* -intrinsic: 'FORK=1;ITER=10;WARMUP_ITER=10;JAVA_OPTIONS=-XX:+UnlockExperimentalVMOptions -XX:+EnableVectorSupport -XX:-UseVectorStubs'

### Performance data
I have re-tested, there is no much difference from https://github.com/openjdk/jdk/pull/18605, so please check performance data in that pr.

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

Commit messages:
 - Initial commit

Changes: https://git.openjdk.org/jdk/pull/21502/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21502&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8312425
  Stats: 161 lines in 6 files changed: 156 ins; 1 del; 4 mod
  Patch: https://git.openjdk.org/jdk/pull/21502.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/21502/head:pull/21502

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


More information about the hotspot-compiler-dev mailing list