[jdk17u-dev] RFR: 8268276: Base64 Decoding optimization for x86 using AVX-512

Scott Gibbons duke at openjdk.org
Tue Oct 25 22:33:02 UTC 2022


This is a backport of JDK-8268276: Base64 Decoding optimization for x86 using AVX-512.

We have had numerous customer requests for this functionality to be backported due to the ~19x performance improvement.
 
Original patch does not apply cleanly to 17u, because of a bug that was identified in the original commit, but not fixed until the later Base64 Encode acceleration enhancement was complete.  The fix is on line 6039 of src/hotspot/cpu/x86/stubGenerator_x86_64.cpp and has been included in this PR.  All four "translatedX" registers needed to be checked for illegal characters in the input stream.

Risk: I view the risk of this backport to be minimal.  This code has been in use for many months with no bugs reported.
 
Testing: x86_64 build, affected tests, tier1, tier2
 
Thanks,
--Scott

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

Commit messages:
 - Update .gitignore
 - Pull in fix for invalid character detection
 - Merge branch 'openjdk:master' into Decode-backport
 - Backport c37988d0793b24d98d285530dfda69999a227937

Changes: https://git.openjdk.org/jdk17u-dev/pull/840/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk17u-dev&pr=840&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8268276
  Stats: 751 lines in 11 files changed: 733 ins; 4 del; 14 mod
  Patch: https://git.openjdk.org/jdk17u-dev/pull/840.diff
  Fetch: git fetch https://git.openjdk.org/jdk17u-dev pull/840/head:pull/840

PR: https://git.openjdk.org/jdk17u-dev/pull/840


More information about the jdk-updates-dev mailing list