Request for reviews (M): 7121648: Use 3-operands SIMD instructions on x86 with AVX

Vladimir Kozlov vladimir.kozlov at oracle.com
Thu Dec 15 10:36:25 PST 2011


http://cr.openjdk.java.net/~kvn/7121648/webrev

7121648: Use 3-operands SIMD instructions on x86 with AVX

VEX prefix converts legacy SSE instructions into 3 operands instructions. Use 
such instructions in C2 generated code for machines with AVX:

vaddsd   XMM2, XMM0, [RSI + #8 + RCX << #3]

I also did go ahead and created x86.ad file to collect common 32- and 64-bit 
mach instructions definitions.

There is slight improvement in performance on AVX machine (full result in bug 
report):

   Benchmark        Samples       Mean     Stdev   %Diff    P   Significant
   scimark_small        20     1031.87      4.68    2.85 0.000          Yes
     LU                 20     1966.82     21.36    6.18 0.000          Yes
     FFT                20      658.28     10.33    4.91 0.000          Yes
     Monte              20      545.31      2.93   -0.37 0.179            *
     SOR                20      994.96      0.67   -0.00 0.910            *
     Sparse             20      993.99      1.49   -0.02 0.629            *

Thanks,
Vladimir


More information about the hotspot-compiler-dev mailing list