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

Fei Gao fgao at openjdk.java.net
Thu Jun 2 14:16:35 UTC 2022


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

>> I think we missed the test with setting `MaxVectorSize` to 32 (vs 64) on Cascade Lake CPU. We should do that.
>> 
>> That may be preferable "simple fix" vs suggested changes for "short term solution".
>> 
>> The objection was that user may still want to use wide 64 bytes vectors for Vector API. But I agree with Jatin argument about that.
>> Limiting `MaxVectorSize` **will** affect our intrinsics/stubs code and may affect performance. That is why we need to test it. I will ask Eric.
>> 
>> BTW, `SuperWordMaxVectorSize` should be diagnostic or experimental since it is temporary solution.
>
> @vnkozlov I have made SuperWordMaxVectorSize as a develop option as you suggested. As far as I know, the only intrinsics/stubs that uses MaxVectorSize are for clear/copy. This is done in conjunction with AVX3Threshold so we are ok there for Cascade Lake.

Hi @sviswa7 , https://github.com/openjdk/jdk/pull/7806 implemented an interface for auto-vectorization to disable some unprofitable cases on aarch64. Can it also be applied to your case?

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

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


More information about the hotspot-compiler-dev mailing list