RFR: 8271515: Integration of JEP 417: Vector API (Third Incubator) [v8]
Nick Gasson
ngasson at openjdk.java.net
Fri Nov 5 02:43:12 UTC 2021
On Thu, 4 Nov 2021 15:56:46 GMT, Paul Sandoz <psandoz at openjdk.org> wrote:
>> This PR improves the performance of vector operations that accept masks on architectures that support masking in hardware, specifically Intel AVX512 and ARM SVE.
>>
>> On architectures that do not support masking in hardware the same technique as before is applied to most operations, specifically composition using blend.
>>
>> Masked loads/stores are a special form of masked operation that require additional care to ensure out-of-bounds access throw exceptions. The range checking has not been fully optimized and will require further work.
>>
>> No API enhancements were required and only a few additional tests were needed.
>
> Paul Sandoz has updated the pull request incrementally with two additional commits since the last revision:
>
> - Merge pull request #2 from nsjian/vector-conversion-fix
>
> AArch64: Incorrect SVE double to int and float to long vector conversion
> - Incorrect double to int and float to long vector conversion
>
> Like JDK-8276151, SVE vector double to int and float to long
> conversions have similar issue. According to Java language
> specification [1], we should convert double/float to
> integer/long directly, instead of converting to long/int and then
> narrowing/extending to target types. Test cases will be updated in
> JDK-8276151.
>
> [1] https://docs.oracle.com/javase/specs/jls/se17/html/jls-5.html#jls-5.1.3
Marked as reviewed by ngasson (Reviewer).
-------------
PR: https://git.openjdk.java.net/jdk/pull/5873
More information about the core-libs-dev
mailing list