RFR: 8267663: [vector] Add unsigned comparison operators on AArch64 [v3]
Eric Liu
eliu at openjdk.java.net
Tue Jun 8 13:46:35 UTC 2021
> This patch implements unsigned vector comparison on AArch64. The
> performance of unsigned comparison improves about 4x~5x in my local with
> Byte128Vector.java[1].
>
> Before:
> Benchmark Score(op/ms) Error
> Byte128Vector.UNSIGNED_GE#size(1024) 99.953 6.17
> Byte128Vector.UNSIGNED_GT#size(1024) 95.334 8.865
> Byte128Vector.UNSIGNED_LE#size(1024) 76.908 24.332
> Byte128Vector.UNSIGNED_LT#size(1024) 78.362 23.507
>
> After:
> Benchmark Score(op/ms) Error
> Byte128Vector.UNSIGNED_GE#size(1024) 421.809 25.57
> Byte128Vector.UNSIGNED_GT#size(1024) 420.653 26.779
> Byte128Vector.UNSIGNED_LE#size(1024) 316.754 92.889
> Byte128Vector.UNSIGNED_LT#size(1024) 423.683 26.508
>
> [Test]
> - All vector API test cases passed without new failure. 8265312[2] has
> been implemented this on x86 and supplied sufficient test cases for
> all kinds of vector.
> - No performance regression for other comparisons.
> - libjvm.so drops off about 200KB after this patch by combining those
> vector compare rules.
>
> [1] https://github.com/openjdk/panama-vector/blob/vectorIntrinsics/test/jdk/jdk/incubator/vector/benchmark/src/main/java/benchmark/jdk/incubator/vector/Byte128Vector.java#L1198
> [2] https://github.com/openjdk/panama-vector/pull/68
Eric Liu has updated the pull request incrementally with one additional commit since the last revision:
small fix
Change-Id: Iadff93a1d56647f9a21234af226b46492ad188e2
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/4358/files
- new: https://git.openjdk.java.net/jdk/pull/4358/files/23e0c7c4..dbc3d472
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=4358&range=02
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=4358&range=01-02
Stats: 46 lines in 3 files changed: 27 ins; 17 del; 2 mod
Patch: https://git.openjdk.java.net/jdk/pull/4358.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/4358/head:pull/4358
PR: https://git.openjdk.java.net/jdk/pull/4358
More information about the hotspot-compiler-dev
mailing list