RFR(S)JDK-8214074: Ghash optimization using AVX instructions
Anthony Scarpino
anthony.scarpino at oracle.com
Tue Dec 4 22:30:36 UTC 2018
I believe we have at least two approvals, Vladimir and me. Unless there
is something else to be done, I'll do a final sanity check and push the
code wednesday or thursday.
Tony
On 12/4/18 5:18 AM, Dmitry Chuyko wrote:
> Hello,
>
> AArch64 aes test runs pass in -Dmode=GCM.
>
> -Dmitry
>
> On 12/2/18 3:37 AM, Vladimir Kozlov wrote:
>> I am fine with Hotspot changes.
>>
>> But we need to verify changes on all platforms.
>> I see that aarch64 also supports it in addition to SPARC.
>>
>> I will run compiler/codegen/aes/ test to make sure it pass on SPARC
>> but we don't test aarch64.
>> I let you know testing results when they are done.
>>
>> Thanks,
>> Vladimir
>>
>>
>> On 11/20/18 6:45 PM, Kamath, Smita wrote:
>>> Hi Tony,
>>>
>>> Thanks for your comments.
>>>
>>> 1) This intrinsic is also used with solaris-sparc, has there been a
>>> sanity check by anyone to make sure this does not break the sparc
>>> intrinsic? It may work as the code is now since the sparc intrinsic
>>> will only use the first two longs in the subkeyHtbl.
>>> Would it be possible to help with this sanity check? I don't have
>>> the required set-up to test this scenario.
>>>
>>> 2) I have changed the code so that subkeyH corresponds to the first
>>> two entries of subkeyHtbl. Please find the updated webrev link.
>>>
>>> Bug link: https://bugs.openjdk.java.net/browse/JDK-8214074
>>>
>>> Webrev link: http://cr.openjdk.java.net/~svkamath/ghash/webrev01/
>>>
>>> Thanks and Regards,
>>> Smita
>>>
>>>
>>>
>>> -----Original Message-----
>>> From: Anthony Scarpino [mailto:anthony.scarpino at oracle.com]
>>> Sent: Tuesday, November 20, 2018 2:05 PM
>>> To: Kamath, Smita <smita.kamath at intel.com>; 'Vladimir Kozlov'
>>> <vladimir.kozlov at oracle.com>
>>> Cc: Viswanathan, Sandhya <sandhya.viswanathan at intel.com>;
>>> core-libs-dev at openjdk.java.net; hotspot compiler
>>> <hotspot-compiler-dev at openjdk.java.net>
>>> Subject: Re: RFR(S)JDK-8214074: Ghash optimization using AVX
>>> instructions
>>>
>>> On 11/19/18 12:50 PM, Kamath, Smita wrote:
>>>> Hi Vladimir,
>>>>
>>>> I'd like to contribute an optimization for GHASH Algorithm using AVX
>>>> Instructions. I have tested this optimization on SKX x86_64 platform
>>>> and it shows ~20-30% performance improvement for larger message sizes
>>>> (for example 8k).
>>>>
>>>> I, smita.kamath at intel.com <mailto:smita.kamath at intel.com> , Shay
>>>> Gueuron, (shay.gueron at intel.com <mailto:shay.gueron at intel.com>)and
>>>> Regev Shemy (regev.shemy at intel.com <mailto:regev.shemy at intel.com>) are
>>>> contributors to this code.
>>>>
>>>> Link to Bug: https://bugs.openjdk.java.net/browse/JDK-8214074
>>>>
>>>> Link to webrev: http://cr.openjdk.java.net/~svkamath/ghash/webrev/
>>>>
>>>> For testing the implementation, I have executed TestAESMain.java. I
>>>> have executed Jtreg tests and tested this code on 64 bit Windows and
>>>> Linux platforms.
>>>>
>>>> Please review and let me know if you have any comments.
>>>>
>>>> Thanks and Regards,
>>>>
>>>> Smita
>>>>
>>>
>>> Hi,
>>>
>>> This intrinsic is also used with solaris-sparc, has there been a
>>> sanity check by anyone to make sure this does not break the sparc
>>> intrinsic?
>>> It may work as the code is now since the sparc intrinsic will only
>>> use the first two longs in the subkeyHtbl.
>>>
>>> In that same idea, have you consider combining the subkeyH to be the
>>> first two of subkeyHtbl for the non-avx operations? It would
>>> eliminate an extra two longs per instance.
>>>
>>> Tony
>>>
More information about the core-libs-dev
mailing list