RFR: 8290322: Optimize Vector.rearrange over byte vectors for AVX512BW targets. [v3]
Jatin Bhateja
jbhateja at openjdk.org
Tue Aug 16 15:17:57 UTC 2022
> Hi All,
>
> Currently re-arrange over 512bit bytevector is optimized for targets supporting AVX512_VBMI feature, this patch generates efficient JIT sequence to handle it for AVX512BW targets. Following performance results with newly added benchmark shows
> significant speedup.
>
> System: Intel(R) Xeon(R) Platinum 8280 CPU @ 2.70GHz (CascadeLake 28C 2S)
>
>
> Baseline:
> =========
> Benchmark (size) Mode Cnt Score Error Units
> RearrangeBytesBenchmark.testRearrangeBytes16 512 thrpt 2 16350.330 ops/ms
> RearrangeBytesBenchmark.testRearrangeBytes32 512 thrpt 2 15991.346 ops/ms
> RearrangeBytesBenchmark.testRearrangeBytes64 512 thrpt 2 34.423 ops/ms
> RearrangeBytesBenchmark.testRearrangeBytes8 512 thrpt 2 10873.348 ops/ms
>
>
> With-opt:
> =========
> Benchmark (size) Mode Cnt Score Error Units
> RearrangeBytesBenchmark.testRearrangeBytes16 512 thrpt 2 16062.624 ops/ms
> RearrangeBytesBenchmark.testRearrangeBytes32 512 thrpt 2 16028.494 ops/ms
> RearrangeBytesBenchmark.testRearrangeBytes64 512 thrpt 2 8741.901 ops/ms
> RearrangeBytesBenchmark.testRearrangeBytes8 512 thrpt 2 10983.226 ops/ms
>
>
> Kindly review and share your feedback.
>
> Best Regards,
> Jatin
Jatin Bhateja 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 four additional commits since the last revision:
- 8290322: Review comments resolution.
- Merge branch 'master' of http://github.com/openjdk/jdk into JDK-8290322
- Merge branch 'master' of http://github.com/openjdk/jdk into JDK-8290322
- 8290322: Optimize Vector.rearrange over byte vectors for AVX512BW targets.
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/9498/files
- new: https://git.openjdk.org/jdk/pull/9498/files/71a8436e..61c83c91
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=9498&range=02
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=9498&range=01-02
Stats: 20011 lines in 880 files changed: 11214 ins; 5561 del; 3236 mod
Patch: https://git.openjdk.org/jdk/pull/9498.diff
Fetch: git fetch https://git.openjdk.org/jdk pull/9498/head:pull/9498
PR: https://git.openjdk.org/jdk/pull/9498
More information about the hotspot-compiler-dev
mailing list