RFR: 8346954: [JMH] jdk.incubator.vector.MaskedLogicOpts fails due to IndexOutOfBoundsException
Nicole Xu
duke at openjdk.org
Wed Feb 5 23:36:00 UTC 2025
On Wed, 8 Jan 2025 09:04:47 GMT, Nicole Xu <duke at openjdk.org> wrote:
> Suite MaskedLogicOpts.maskedLogicOperationsLong512() failed on both x86 and AArch64 with the following error:
>
>
> java.lang.IndexOutOfBoundsException: Index 252 out of bounds for length 249
>
>
> The variable `long256_arr_idx` is misused when indexing 'LongVector l2, l3, l4, l5' in function `maskedLogicOperationsLongKernel()`. 'long256_arr_idx' increases by 4 every time the benchmark runs and ensures the incremented value remains within the bounds of the array. However, for `LongVector.SPECIES_512`, it loads 8 numbers from the array each time the benchmark runs, resulting in an out-of-range indexing issue.
>
> Hence, we revised the index variables from `long256_arr_idx` to `long512_arr_idx`, which has a stride of 8, to ensure that the loaded vector is inside of the array boundary for all vector species. This is also consistent with other kernel functions.
>
> Additionally, some defined but unused variables have been removed.
I am a member of Nvidia Java compiler team.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/22963#issuecomment-2577153564
More information about the core-libs-dev
mailing list