RFR: 8325991: Accelerate Poly1305 on x86_64 using AVX2 instructions [v4]

Sandhya Viswanathan sviswanathan at openjdk.org
Thu Feb 22 01:23:55 UTC 2024


On Wed, 21 Feb 2024 05:40:13 GMT, Srinivas Vamsi Parasa <duke at openjdk.org> wrote:

>> The goal of this PR is to accelerate the Poly1305 algorithm using AVX2 instructions (including IFMA) for x86_64 CPUs.
>> 
>> This implementation is directly based on the AVX2 Poly1305 hash computation as implemented in Intel(R) Multi-Buffer Crypto for IPsec Library (url: https://github.com/intel/intel-ipsec-mb/blob/main/lib/avx2_t3/poly_fma_avx2.asm)
>
> Srinivas Vamsi Parasa has updated the pull request incrementally with one additional commit since the last revision:
> 
>   remove unused uniions and fix uses_vl

src/hotspot/cpu/x86/stubGenerator_x86_64_poly.cpp line 1252:

> 1250: 
> 1251:   // Calculate R^2
> 1252:   __ movq(t0, c1); // c1 = R1 + (R1 >> 2)

This move is not required. Function poly1305_multiply_scalar() is not using t0.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/17881#discussion_r1498501498


More information about the hotspot-compiler-dev mailing list