Integrated: 8268363: AArch64: Implement string_indexof_char intrinsic in SVE
TatWai Chong
github.com+78814694+tatwaichong at openjdk.java.net
Thu Jul 8 02:32:54 UTC 2021
On Wed, 23 Jun 2021 04:19:11 GMT, TatWai Chong <github.com+78814694+tatwaichong at openjdk.org> wrote:
> This patch implements string_indexof_char intrinsic in SVE for both
> UTF-16 and Latin-8 variants. In the current underneath implementation,
> there is only 4 and 8 characters are compared at a time in UTF-16 and
> Latin-8 respectively. In this patch, we adopt SVE to vectorize this
> intrinsic so that a wider comparison can be performed each time.
>
> I've run [1] with this patch on an SVE machine, and the performance of
> StringIndexOfChar.latin1_mixed_char (length=65) and
> StringIndexOfChar.utf16_mixed_char (length=65) are improved significantly,
> while no visible regression for other cases with shorter strings.
> (length=7, 8, 15, 16 and 32)
>
> [1] https://github.com/openjdk/jdk/blob/master/test/micro/org/openjdk/bench/java/lang/StringIndexOfChar.java
This pull request has now been integrated.
Changeset: e54585be
Author: TatWai Chong <tatwai.chong at arm.com>
Committer: Ningsheng Jian <njian at openjdk.org>
URL: https://git.openjdk.java.net/jdk/commit/e54585be57a2fe8db07f20bf8e3d5f92aefe2470
Stats: 381 lines in 9 files changed: 262 ins; 0 del; 119 mod
8268363: AArch64: Implement string_indexof_char intrinsic in SVE
Reviewed-by: aph, njian
-------------
PR: https://git.openjdk.java.net/jdk/pull/4567
More information about the hotspot-compiler-dev
mailing list