RFR: 8296208: AArch64: Enable SHA512 intrinsic by default on supported hardware

Nick Gasson ngasson at openjdk.org
Wed Nov 23 10:23:23 UTC 2022


On Tue, 1 Nov 2022 06:08:26 GMT, Hao Sun <haosun at openjdk.org> wrote:

> SHA512 intrinsic for AArch64 was implemented in JDK-8165404. But it was not auto-enabled due to the lack of full test on real hardware. In this patch, we set this intrinsic enabled by default on hardware with sha512 feature support, after we did the following evaluation.
> 
> 1) tier1~3 passed without new failures.
> 
> 2) we ran the JMH test case MessageDigests.java on all available sha512 feature supported CPUs on our hands including Neoverse V1, Neoverse N2 and Apple silicon(M1). We witnessed about 1.3x ~ 3x performance uplifts. Here shows the data on V1.
> 
> 
> Benchmark                    (digesterName)  (length)  (provider)   Mode  Cnt    Before     After   Units
> MessageDigests.digest               SHA-384        64     DEFAULT  thrpt    5  2381.028  6161.576  ops/ms
> MessageDigests.digest               SHA-384     16384     DEFAULT  thrpt    5    20.641    60.493  ops/ms
> MessageDigests.digest               SHA-512        64     DEFAULT  thrpt    5  2407.225  6140.680  ops/ms
> MessageDigests.digest               SHA-512     16384     DEFAULT  thrpt    5    20.633    60.942  ops/ms
> MessageDigests.getAndDigest         SHA-384        64     DEFAULT  thrpt    5  1962.740  4714.510  ops/ms
> MessageDigests.getAndDigest         SHA-384     16384     DEFAULT  thrpt    5    20.474    61.360  ops/ms
> MessageDigests.getAndDigest         SHA-512        64     DEFAULT  thrpt    5  1949.511  4552.723  ops/ms
> MessageDigests.getAndDigest         SHA-512     16384     DEFAULT  thrpt    5    20.477    59.693  ops/ms

Marked as reviewed by ngasson (Reviewer).

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

PR: https://git.openjdk.org/jdk/pull/10925


More information about the hotspot-dev mailing list