JDK-8189177 : AARCH64: Improve _updateBytesCRC32C intrinsic
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 10
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • CPU: aarch64
  • Submitted: 2017-10-11
  • Updated: 2018-05-25
  • Resolved: 2017-11-17
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 10
10 b34Fixed
Related Reports
Blocks :  
Relates :  
Relates :  
Description
 java.util.zip.CRC32��.updateBytes can be improved similar to CRC32.
Comments
Separate kernel_crc32c_using_crc32c() subroutine http://cr.openjdk.java.net/~dchuyko/8189177/webrev.01/
02-11-2017

http://cr.openjdk.java.net/~dchuyko/8189177/webrev.00/ On Raspberry Pi 3 we observe 1.5x improvement in CRC32CBench.calcCRC32C for size=512 bytes: size, b: average time Baseline 64: 132 ��3 ns/op 512: 394 ��8 ns/op 4096: 2362 ��31 ns/op Patched 64: 129 ��1 ns/op 512: 267 ��8 ns/op 4096: 1417 ��27 ns/op Similar improvement can be observed on Cavium ThunderX.
20-10-2017

Benchmark: http://cr.openjdk.java.net/~dchuyko/8189177/crc32c/CRC32CBench.java Calculate CRC32 over same array. CRC32CBench.calcCRC32C()
20-10-2017