RFR(M): 8181616: FMA Vectorization on x86
Deshpande, Vivek R
vivek.r.deshpande at intel.com
Wed Jun 7 18:04:25 UTC 2017
Hi Vladimir
I have updated the webrev with changes in supports_fma().
The webrev is here: http://cr.openjdk.java.net/~vdeshpande/8181616/webrev.01/
Thank you.
Regards,
Vivek
-----Original Message-----
From: Vladimir Kozlov [mailto:vladimir.kozlov at oracle.com]
Sent: Tuesday, June 6, 2017 12:28 PM
To: Deshpande, Vivek R; hotspot-compiler-dev at openjdk.java.net
Cc: Viswanathan, Sandhya
Subject: Re: RFR(M): 8181616: FMA Vectorization on x86
Yes, Michael explained that FMA code should be generated only when AVX is available.
In such case may be supports_fma() should check for AVX?
I ran testing last night and results are good.
Vladimir
On 6/6/17 11:28 AM, Deshpande, Vivek R wrote:
> Hi Vladimir
>
> Thanks for taking a look at the patch.
> The FMA is introduced with Haswell microarchitecture along with AVX2. It is recommended to also check for AVX for using FMA instructions.
>
> Regards,
> Vivek
> -----Original Message-----
> From: Vladimir Kozlov [mailto:vladimir.kozlov at oracle.com]
> Sent: Monday, June 5, 2017 4:53 PM
> To: Deshpande, Vivek R; hotspot-compiler-dev at openjdk.java.net
> Cc: Viswanathan, Sandhya
> Subject: Re: RFR(M): 8181616: FMA Vectorization on x86
>
> Thank you, Vivek
>
> Why you restrict FMA to AVX?:
>
> - if (supports_fma() && UseSSE >= 2) {
> + if (supports_fma() && UseAVX > 0) {
>
> Otherwise changes look good.
>
> Thanks,
> Vladimir
>
> On 6/5/17 2:42 PM, Deshpande, Vivek R wrote:
>> Hi All
>>
>>
>>
>> The enhancement generates Vector FMA instructions using SuperWord Analysis for X86.
>>
>> We observed upto 6x gain on Skylake and KNL using 512 bit Vector FMA instructions using FMA API operating on independent arrays.
>>
>> Webrev:
>>
>> http://cr.openjdk.java.net/~vdeshpande/8181616/webrev.00/
>>
>> I have also updated the JBS entry.
>>
>> https://bugs.openjdk.java.net/browse/JDK-8181616
>>
>> Would you please review and sponsor it.
>>
>>
>>
>> Regards,
>>
>> Vivek
>>
>>
>>
More information about the hotspot-compiler-dev
mailing list