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

Sandhya Viswanathan sviswanathan at openjdk.java.net
Wed Jun 1 23:39:13 UTC 2022


On Fri, 27 May 2022 04:05:47 GMT, Vladimir Kozlov <kvn 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
>
> You have trailing white spaces.

@vnkozlov Your review comments are resolved.
@jatin-bhateja  This is a simple fix for the problem in the short time frame that we have for the upcoming feature freeze. A more complex fix to enhance auto-vectorizer is a good thought.

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

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


More information about the hotspot-compiler-dev mailing list