RFR: 8317721: RISC-V: Implement CRC32 intrinsic
Hamlin Li
mli at openjdk.org
Fri Dec 22 10:20:50 UTC 2023
On Mon, 11 Dec 2023 15:56:24 GMT, ArsenyBochkarev <duke at openjdk.org> wrote:
> Performance comparison for disabling/enabling Zba on StarFive VisionFive 2 board:
>
`-XX:-UseZba`:
Benchmark (count) Mode Cnt Score Error Units
CRC32.TestCRC32.testCRC32Update 512 thrpt 12 512.550 1.718 ops/ms
CRC32.TestCRC32.testCRC32Update 2048 thrpt 12 130.396 0.341 ops/ms
CRC32.TestCRC32.testCRC32Update 16384 thrpt 12 16.319 0.073 ops/ms
CRC32.TestCRC32.testCRC32Update 65536 thrpt 12 3.913 0.011 ops/ms
`-XX:+UseZba`:
Benchmark (count) Mode Cnt Score Error Units
CRC32.TestCRC32.testCRC32Update 512 thrpt 12 623.173 0.651 ops/ms
CRC32.TestCRC32.testCRC32Update 2048 thrpt 12 158.965 0.376 ops/ms
CRC32.TestCRC32.testCRC32Update 16384 thrpt 12 19.934 0.055 ops/ms
CRC32.TestCRC32.testCRC32Update 65536 thrpt 12 4.730 0.007 ops/ms
`-XX:-UseCRC32Intrinsics`:
Benchmark (count) Mode Cnt Score Error Units
CRC32.TestCRC32.testCRC32Update 512 thrpt 12 520.965 5.651 ops/ms
CRC32.TestCRC32.testCRC32Update 2048 thrpt 12 169.591 0.747 ops/ms
CRC32.TestCRC32.testCRC32Update 16384 thrpt 12 22.624 0.139 ops/ms
CRC32.TestCRC32.testCRC32Update 65536 thrpt 12 5.430 0.016 ops/ms
Seems there is regression when `count >= 512`, especially when `count >= 2048`. And I suppose that big message is common case for CRC32 usage?
-------------
PR Comment: https://git.openjdk.org/jdk/pull/17046#issuecomment-1867505012
More information about the hotspot-compiler-dev
mailing list