RFR: 8287697: Limit auto vectorization to 32-byte vector on Cascade Lake [v3]

Vladimir Kozlov kvn at openjdk.java.net
Thu Jun 2 05:28:34 UTC 2022


On Thu, 2 Jun 2022 04:34:27 GMT, Sandhya Viswanathan <sviswanathan at openjdk.org> wrote:

>> We observe ~20% regression in SPECjvm2008 mpegaudio sub benchmark on Cascade Lake with Default vs -XX:UseAVX=2.
>> The performance of all the other non-startup sub benchmarks of SPECjvm2008 is within +/- 5%. 
>> The performance regression is due to auto-vectorization of small loops. 
>> We don’t have AVX3Threshold consideration in auto-vectorization. 
>> The performance regression in mpegaudio can be recovered by limiting auto-vectorization to 32-byte vectors.
>> 
>> This PR limits auto-vectorization to 32-byte vectors by default on Cascade Lake. Users can override this by either setting -XX:UseAVX=3 or -XX:SuperWordMaxVectorSize=64 on JVM command line.
>> 
>> Please review.
>> 
>> Best Regard,
>> Sandhya
>
> Sandhya Viswanathan has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Change SuperWordMaxVectorSize to develop option

Changes look good. I will start testing it.

-------------

PR: https://git.openjdk.java.net/jdk/pull/8877


More information about the hotspot-dev mailing list