RFR(S):8211251:Default mask register for avx512 instructions
Vladimir Kozlov
vladimir.kozlov at oracle.com
Fri Sep 28 17:20:25 UTC 2018
Okay. Thanks. I submitted testing on avx512 machine too.
Vladimir
On 9/28/18 10:04 AM, Viswanathan, Sandhya wrote:
> Hi Vladimir,
>
> Yes, it only affects avx512 machines with UseAVX=3. I have run jtreg compiler tests on SKX, KNL and Haswell. Also ran SPECjvm2008.
>
> Best Regards,
> Sandhya
>
>
> -----Original Message-----
> From: Vladimir Kozlov [mailto:vladimir.kozlov at oracle.com]
> Sent: Thursday, September 27, 2018 6:38 PM
> To: Viswanathan, Sandhya <sandhya.viswanathan at intel.com>; hotspot compiler <hotspot-compiler-dev at openjdk.java.net>
> Subject: Re: RFR(S):8211251:Default mask register for avx512 instructions
>
> This looks fine. I assume you did testing. It only affects avx512 machines - right?
>
> Thanks,
> Vladimir
>
> On 9/27/18 5:46 PM, Viswanathan, Sandhya wrote:
>> Hi Vladimir,
>>
>> Please find the updated webrev with this change at:
>> http://cr.openjdk.java.net/~vdeshpande/k_register/webrev.01/
>>
>> Best Regards,
>> Sandhya
>>
>>
>> -----Original Message-----
>> From: Vladimir Kozlov [mailto:vladimir.kozlov at oracle.com]
>> Sent: Thursday, September 27, 2018 4:50 PM
>> To: Viswanathan, Sandhya <sandhya.viswanathan at intel.com>; hotspot compiler <hotspot-compiler-dev at openjdk.java.net>
>> Subject: Re: RFR(S):8211251:Default mask register for avx512 instructions
>>
>> Use guarantee() instead of assert so if someone to try to use it with product JDK it will fail.
>>
>> Thanks,
>> Vladimir
>>
>> On 9/27/18 4:40 PM, Viswanathan, Sandhya wrote:
>>> Hi Vladimir,
>>>
>>> As you know the PostLoopMultiversioning needs to be fully redesigned and is currently disabled.
>>> That particular code should only be exercised when PostLoopMultiversioning is on.
>>> I could change it with an assert statement if that looks ok to you.
>>>
>>> Please let me know.
>>>
>>> Best Regards,
>>> Sandhya
>>>
>>>
>>> -----Original Message-----
>>> From: Vladimir Kozlov [mailto:vladimir.kozlov at oracle.com]
>>> Sent: Thursday, September 27, 2018 3:24 PM
>>> To: Viswanathan, Sandhya <sandhya.viswanathan at intel.com>; hotspot
>>> compiler <hotspot-compiler-dev at openjdk.java.net>
>>> Subject: Re: RFR(S):8211251:Default mask register for avx512
>>> instructions
>>>
>>> Looks good except PostLoopMultiversioning flag guarded changes in
>>> macroAssembler_x86.cpp which should be explained too.
>>>
>>> Thanks,
>>> Vladimir
>>>
>>> On 9/27/18 2:37 PM, Viswanathan, Sandhya wrote:
>>>> Please find below a patch which cleans up K1 mask register handling for AVX 512 instructions.
>>>>
>>>> Currently unmasked instructions are encoded using k1 register which
>>>> requires k1 register to be initialized properly and also reinitialized across JNI and Runtime calls.
>>>>
>>>> This patch encodes AVX 512 instructions as unmasked instruction with
>>>> K0 encoding where the explicit mask register is not specified.
>>>>
>>>> RFE: https://bugs.openjdk.java.net/browse/JDK-8211251
>>>>
>>>> Webrev: http://cr.openjdk.java.net/~vdeshpande/k_register/webrev.00/
>>>> <http://cr.openjdk.java.net/%7Evdeshpande/k_register/webrev.00/>
>>>>
>>>> Best Regards,
>>>>
>>>> Sandhya
>>>>
More information about the hotspot-compiler-dev
mailing list