[aarch64-port-dev ] JEP 254: Compact Strings

Andrew Haley aph at redhat.com
Mon Mar 21 17:58:59 UTC 2016


https://bugs.openjdk.java.net/browse/JDK-8054307

I'd like to get Compact Strings working properly on AArch64.  Some of
what we'll need is already there, but much of it is not.

We need:

- String.equals
- String.compareTo
- String.indexOf
- String.compress
- String.inflate
- StringCoding.hasNegatives

We already have UTF-16 (UU) variants of these, and Latin1 (LL)
variants of some.  But we need UL and LU variants of all of them.

I don't know how much of these should use the SIMD instruction set.  I
would guess quite a lot, but not every AArch64 has a very fast SIMD
unit, and there are penalties for misaligned loads and stores.

Goal: Improved SPECjbb 2005 performance.  (I'm aware that this
benchmark is retired, but it's still a useful model or a representative
server load.)

I'm working on String.equals.  I'd appreciate help with some of the
others.  I intend to create JBS entries for the tasks as we go along.

Thanks,

Andrew.


More information about the aarch64-port-dev mailing list