KNL Fixes for VectorAPI

Rukmannagari, Shravya shravya.rukmannagari at intel.com
Thu Nov 21 00:00:53 UTC 2019


Thank You Paul ☺ I’ll go ahead and check in the patch.

Thanks,
Shravya.

From: Paul Sandoz [mailto:paul.sandoz at oracle.com]
Sent: Wednesday, November 20, 2019 2:51 PM
To: Rukmannagari, Shravya <shravya.rukmannagari at intel.com>
Cc: panama-dev <panama-dev at openjdk.java.net>
Subject: Re: KNL Fixes for VectorAPI

Hi,

Thanks, I don’t feel qualified to comment on the KNL specifics beyond noting all the mins and maxes now align :-)

Paul.


On Nov 20, 2019, at 11:32 AM, Rukmannagari, Shravya <shravya.rukmannagari at intel.com<mailto:shravya.rukmannagari at intel.com>> wrote:

Hi Paul,
I have updated the patch with your comment and also fixed the format in a couple of other places. Please let me know if you have any other comments!
http://cr.openjdk.java.net/~srukmannagar/VectorAPIFixes/webrev_KNLFixes01/

Thanks,
Shravya.

From: Paul Sandoz [mailto:paul.sandoz at oracle.com]
Sent: Tuesday, November 19, 2019 12:19 PM
To: Rukmannagari, Shravya <shravya.rukmannagari at intel.com<mailto:shravya.rukmannagari at intel.com>>
Cc: panama-dev <panama-dev at openjdk.java.net<mailto:panama-dev at openjdk.java.net>>
Subject: Re: KNL Fixes for VectorAPI

Hi,

x86.ad
--

-instruct rsmax4S_reduction_reg(rRegI dst, rRegI src1, vecD src2, regF tmp, rRegI tmp2, rRegI tmp3) %{

+instruct rsmax4S_reduction_reg(rRegI dst, rRegI src1, vecD src2, vecS tmp, rRegI tmp2, rRegI tmp3) %{

   predicate(UseSSE > 1 && n->in(2)->bottom_type()->is_vect()->element_basic_type() == T_SHORT);

   match(Set dst (MaxReductionV src1 src2));

   effect(TEMP tmp, TEMP tmp2, TEMP tmp3);

   format %{ "pshufd  $tmp,$src2,0x1\n\t"

             "pminsw  $tmp,$src2\n\t"


-instruct rvmax4S_reduction_reg(rRegI dst, rRegI src1, vecD src2, regF tmp, rRegI tmp2, rRegI tmp3) %{

+instruct rvmax4S_reduction_reg(rRegI dst, rRegI src1, vecD src2, vecS tmp, rRegI tmp2, rRegI tmp3) %{

   predicate(UseAVX > 0 && n->in(2)->bottom_type()->is_vect()->element_basic_type() == T_SHORT);

   match(Set dst (MaxReductionV src1 src2));

   effect(TEMP tmp, TEMP tmp2, TEMP tmp3);

   format %{ "pshufd  $tmp,$src2,0x1\n\t"

             "pminsw  $tmp,$src2\n\t"


s/pminsw/pmaxsw. ?


Paul,



On Nov 19, 2019, at 11:17 AM, Rukmannagari, Shravya <shravya.rukmannagari at intel.com<mailto:shravya.rukmannagari at intel.com>> wrote:

Hi All,
Please find the patch below which fixes the failures for VectorAPI tests on Intel KNL platform. Let me know if you have any questions or suggestions.
http://cr.openjdk.java.net/~srukmannagar/VectorAPIFixes/webrev_KNLFixes00/

Thanks,
Shravya.



More information about the panama-dev mailing list