RFR: 8221092: UseAVX=3 has performance degredation on Skylake (X7) processors

Deshpande, Vivek R vivek.r.deshpande at intel.com
Thu Oct 3 16:31:41 UTC 2019


Hi Vladimir

Can I push the patch?

Regards,
Vivek

-----Original Message-----
From: Vladimir Kozlov [mailto:vladimir.kozlov at oracle.com] 
Sent: Wednesday, October 2, 2019 10:12 AM
To: Deshpande, Vivek R <vivek.r.deshpande at intel.com>; 'hotspot-compiler-dev at openjdk.java.net' <hotspot-compiler-dev at openjdk.java.net>
Cc: 'Scott Oaks' <scott.oaks at oracle.com>; 'eric.caspole' <eric.caspole at oracle.com>; 'Robert Strout' <robert.strout at oracle.com>
Subject: Re: RFR: 8221092: UseAVX=3 has performance degredation on Skylake (X7) processors

Good.

thanks,
Vladimir

On 10/1/19 4:36 PM, Deshpande, Vivek R wrote:
> Hi Vladimir
> 
> I have updated the patch with appropriate comments in globals_x86.hpp and also updated the bug entry.
> The updated webrev is here:
> http://cr.openjdk.java.net/~vdeshpande/8221092/webrev.01/
> Could you please review.
> 
> Regards,
> Vivek
> 
> -----Original Message-----
> From: Deshpande, Vivek R
> Sent: Thursday, September 26, 2019 10:52 AM
> To: Vladimir Kozlov <vladimir.kozlov at oracle.com>; 
> hotspot-compiler-dev at openjdk.java.net
> Cc: Scott Oaks <scott.oaks at oracle.com>; eric.caspole 
> <eric.caspole at oracle.com>; Robert Strout <robert.strout at oracle.com>
> Subject: RE: RFR: 8221092: UseAVX=3 has performance degredation on 
> Skylake (X7) processors
> 
> Thanks you Vladimir for the review.
> I will work on the adding the comments and changes to the bug report.
> 
> Yes the threshold is for architectures after skylake which support AVX512.
> With this threshold( value = 4096 bytes found experimentally), AVX512 will be used if the array size is bigger than that.
> 
> Regards,
> Vivek
> 
> -----Original Message-----
> From: Vladimir Kozlov [mailto:vladimir.kozlov at oracle.com]
> Sent: Wednesday, September 25, 2019 12:41 PM
> To: Deshpande, Vivek R <vivek.r.deshpande at intel.com>; 
> hotspot-compiler-dev at openjdk.java.net
> Cc: Scott Oaks <scott.oaks at oracle.com>; eric.caspole 
> <eric.caspole at oracle.com>; Robert Strout <robert.strout at oracle.com>
> Subject: Re: RFR: 8221092: UseAVX=3 has performance degredation on 
> Skylake (X7) processors
> 
> Thank you, Vivek
> 
> I see you did several changes including intrinsics code. Would be nice if you list changes you did in bug report. I see you removed _evex instructions variants in .ad file, replaced evex instructions in stubs and set UseAVX to 2 for Skylake. It is easy to understand.
> 
> But what about array limit AVX3Threshold? I assume it is for non-Skylake CPUs with AVX512. Right?
> What number 4096 is based on. It seems AVX3Threshold == 0 has special meaning - add line in globals_x86.hpp explaining it. I would need more time to look on related changes.
> 
> Thanks,
> Vladimir
> 
> On 9/3/19 5:02 PM, Deshpande, Vivek R wrote:
>> Hi All
>>
>> I have created a patch which sets AVX2 for Skylake and selectively 
>> uses EVEX instructions based on threshold for platforms after Skylake.
>> I don't observe the regressions for SPECjvm2008 on Skylake with this patch.
>> JBS id:
>> https://bugs.openjdk.java.net/browse/JDK-8221092
>> Webrev:
>> http://cr.openjdk.java.net/~vdeshpande/8221092/webrev.00/
>> Could you all please review the patch.
>>
>> Regards,
>> Vivek
>>


More information about the hotspot-compiler-dev mailing list