RFR: 8300208: Optimize Adler32 stub for AVX-512 targets. [v3]
Jatin Bhateja
jbhateja at openjdk.org
Fri Jan 27 20:19:54 UTC 2023
On Fri, 27 Jan 2023 17:32:46 GMT, Sandhya Viswanathan <sviswanathan at openjdk.org> wrote:
>> src/hotspot/cpu/x86/stubGenerator_x86_64_adler.cpp line 155:
>>
>>> 153: __ vpaddd(yb, yb, ya, Assembler::AVX_512bit);
>>> 154: __ addptr(data, CHUNKSIZE);
>>> 155: __ cmpptr(data, end);
>>
>> This still processes 16 bytes worth of data in one loop iteration as the AVX2 loop. Have you given thoughts on processing double the size with AVX3?
>
> Could be done something like below:
> [adler32.patch](https://github.com/openjdk/jdk/files/10521481/adler32.patch)
Yes, one level of unrolling will save loop overhead cost, I have incorporated this in the patch.
-------------
PR: https://git.openjdk.org/jdk/pull/12045
More information about the hotspot-compiler-dev
mailing list