[jdk18] RFR: 8278508: Enable X86 maskAll instruction pattern for 32 bit JVM.

Jatin Bhateja jbhateja at openjdk.java.net
Wed Dec 15 13:17:06 UTC 2021


On Wed, 15 Dec 2021 01:38:32 GMT, Vladimir Kozlov <kvn at openjdk.org> wrote:

> Regular testing (x64) results are good.
> 
> But I also run `jdk/incubator/vector/` tests locally with 32-bit VM (fastdebug). Most tests passed but some hit timeout (run for more than default 2 min):
> 
> ```
> jdk/incubator/vector/Byte512VectorTests.java
> jdk/incubator/vector/ByteMaxVectorTests.java
> jdk/incubator/vector/VectorReshapeTests.java
> ```
> 
> I assume such vectors are not supported in 32-bit VM and code is slow. Simple solution is to add `/timeout=240` (4 min) to these tests. They passed for me after that.

Hi @vnkozlov , x86 32 target constraints the number of vector registers to 8 (zmm0-zmm7) so above testcases should still be able to intrinsify the operation. I tested above tests on AVX512 target and they executes in lass than 2 mins. On a non-AVX512 target any operation based on Byte512 species is not inline expanded. 

Since the changes in this patch are only related to AVX512 thus my testing went clean with UseAVX=3.

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

PR: https://git.openjdk.java.net/jdk18/pull/24


More information about the hotspot-compiler-dev mailing list