RFR: 8281712: [REDO] AArch64: Implement string_compare intrinsic in SVE
Tobias Hartmann
thartmann at openjdk.java.net
Tue May 17 06:12:54 UTC 2022
On Mon, 16 May 2022 07:21:27 GMT, Ningsheng Jian <njian at openjdk.org> wrote:
> This is the REDO of JDK-8269559 and JDK-8275448. Those two backouts finally turned to be some system zlib issue in AArch64 macOS, and is not related to the patch itself. See [1][2] for details.
>
> This patch is generally the same as JDK-8275448, which uses SVE to optimize string_compare intrinsics for long string comparisons. I did a rebase with small tweaks to get better performance on recent Neoverse hardware. Test data on systems with different SVE vector sizes:
>
>
> case delta size 128-bits 256-bits 512-bits
> compareToLL 2 24 0.17% 0.58% 0.00%
> compareToLL 2 36 0.00% 2.25% 0.04%
> compareToLL 2 72 -4.40% 3.87% -12.82%
> compareToLL 2 128 4.55% 58.31% 13.53%
> compareToLL 2 256 19.39% 69.77% 82.03%
> compareToLL 2 512 1.81% 68.38% 170.93%
> compareToLU 2 24 25.57% 46.98% 54.61%
> compareToLU 2 36 36.03% 70.26% 94.33%
> compareToLU 2 72 35.86% 90.58% 146.04%
> compareToLU 2 128 70.82% 119.19% 266.22%
> compareToLU 2 256 80.77% 146.33% 420.01%
> compareToLU 2 512 94.62% 171.72% 530.87%
> compareToUL 2 24 20.82% 34.48% 62.14%
> compareToUL 2 36 39.77% 60.79% 69.77%
> compareToUL 2 72 35.46% 84.34% 121.90%
> compareToUL 2 128 67.77% 110.97% 220.53%
> compareToUL 2 256 77.05% 160.29% 331.30%
> compareToUL 2 512 91.88% 184.57% 524.21%
> compareToUU 2 24 -0.13% 0.40% 0.00%
> compareToUU 2 36 -9.18% 12.84% -13.93%
> compareToUU 2 72 1.67% 60.61% 6.69%
> compareToUU 2 128 13.51% 60.33% 55.27%
> compareToUU 2 256 2.55% 62.17% 153.26%
> compareToUU 2 512 4.12% 68.62% 201.68%
>
> JTreg tests passed on SVE hardware.
>
> [1] https://bugs.openjdk.java.net/browse/JDK-8275448
> [2] https://bugs.openjdk.java.net/browse/JDK-8282954
Marked as reviewed by thartmann (Reviewer).
Sure, I already submitted testing yesterday, it all passed.
-------------
PR: https://git.openjdk.java.net/jdk/pull/8723
More information about the hotspot-compiler-dev
mailing list