[11u] RFR: 8221092: UseAVX=3 has performance degredation on Skylake (X7) processors

Vladimir Kozlov vladimir.kozlov at oracle.com
Mon Nov 4 17:57:40 UTC 2019


Looks good.

Thanks
Vladimir

> On Nov 4, 2019, at 5:32 AM, Roland Westrelin <rwestrel at redhat.com> wrote:
> 
> 
> Hi,
> 
> Original bug:
>  https://bugs.openjdk.java.net/browse/JDK-8221092
>  https://hg.openjdk.java.net/jdk/jdk/rev/c6f1226cfb72
> 
> Original patch does not apply cleanly to 11u. See below for the rejected
> hunk that I applied manually.
> 
> 11u webrev:
>  http://cr.openjdk.java.net/~roland/8221092.11u/webrev.00/
> 
> Testing: x86_64 build, tier1 (on non skylake system)
> 
> Roland.
> 
> --- macroAssembler_x86.cpp
> +++ macroAssembler_x86.cpp
> @@ -8104,12 +8103,13 @@
>   shlq(length);
>   xorq(result, result);
> 
> -  if ((UseAVX > 2) &&
> +  if ((AVX3Threshold == 0) && (UseAVX > 2) &&
>       VM_Version::supports_avx512vlbw()) {
>     Label VECTOR64_LOOP, VECTOR64_NOT_EQUAL, VECTOR32_TAIL;
> 
>     cmpq(length, 64);
>     jcc(Assembler::less, VECTOR32_TAIL);
> +
>     movq(tmp1, length);
>     andq(tmp1, 0x3F);      // tail count
>     andq(length, ~(0x3F)); //vector count


More information about the jdk-updates-dev mailing list