RFR: 8278302: [s390] Implement fast-path for ASCII-compatible CharsetEncoders

Tyler Steele duke at openjdk.java.net
Mon Jan 10 20:02:29 UTC 2022


On Tue, 4 Jan 2022 17:34:46 GMT, Lutz Schmidt <lucy at openjdk.org> wrote:

>> This pull request contains the s390x variant of the fast-path for ASCII-compatible CharsetEncoders. 
>> 
>> The intrinsic implementation is pretty much similar to that of PPC64. Compared to the previously existing intrinsic implementation, changes to program logic are minimal. There is a new match rule for ascii strings and the bit mask used to detect invalid bits in the string characters is set depending on the target charset: 0xff00 for ISO, 0xff80 for ascii.
>> 
>> **Request:** SAP does not maintain a full build and test infrastructure for s390x anymore. Could somebody please test this PR on s390x? At least build and tier1 tests, the more the better. Thank you!
>> 
>> With my private testing (some microbenchmarks, some SPEC benchmarks) I could not find any issues. With the fast-path active I see a 2x, sometime 2.5x, improvement of CharsetEncodeDecode.encode. 
>> 
>> **Without the fast-path patch:**
>> 
>> CharsetEncodeDecode.encode   16384        UTF-8  avgt   30  16.350 ± 0.067  us/op
>> CharsetEncodeDecode.encode   16384         BIG5  avgt   30  15.972 ± 0.136  us/op
>> CharsetEncodeDecode.encode   16384  ISO-8859-15  avgt   30  14.372 ± 0.110  us/op
>> CharsetEncodeDecode.encode   16384        ASCII  avgt   30  14.287 ± 0.051  us/op
>> 
>> 
>> **With the fast-path patch:**
>> 
>> CharsetEncodeDecode.encode   16384        UTF-8  avgt   30   6.833 ± 0.064  us/op
>> CharsetEncodeDecode.encode   16384         BIG5  avgt   30   8.195 ± 0.059  us/op
>> CharsetEncodeDecode.encode   16384  ISO-8859-15  avgt   30   6.387 ± 0.149  us/op
>> CharsetEncodeDecode.encode   16384        ASCII  avgt   30   6.321 ± 0.049  us/op
>
> Had already contacted Tim Ellison (RedHat) before Christmas. He promised to point an engineer to this PR.

@RealLucy, sorry to keep you waiting. I am currently running tier1-tests on our s390x system. I'll edit this comment with the results when it completes.

---

-------------

PR: https://git.openjdk.java.net/jdk/pull/6738


More information about the hotspot-compiler-dev mailing list