On Mon, 16 May 2022 07:21:27 GMT, Ningsheng Jian <nj...@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 LGTM! ------------- Marked as reviewed by ngasson (Reviewer). PR: https://git.openjdk.java.net/jdk/pull/8723