[jdk17u-dev] Integrated: 8290322: Optimize Vector.rearrange over byte vectors for AVX512BW targets.

Jatin Bhateja jbhateja at openjdk.org
Mon Dec 19 14:05:16 UTC 2022


On Tue, 22 Nov 2022 17:41:05 GMT, Jatin Bhateja <jbhateja at openjdk.org> wrote:

> Backport of [JDK-8290322](https://bugs.openjdk.org/browse/JDK-8290322). 
> 
> Due to merge conflicts, original patch could not be auto-merged by bot,  only change w.r.t original PR is in 
> predicate conditions of instruction patterns, in JDK17 vector_length and vector_element_basic_type were static functions defined in AD files which were moved into Matcher class in latest code. 
> 
> Patch enables wide vector byte level permutation for AVX512BW targets and benefits multiple generations of Intel's Xeon servers (SKX, CLX, CPX) prior to Ice lake which provides a direct HW instruction (VPERMB). JIT instruction sequence emitted in this case is specific to Vector.rearrange API, hence the scope of the patch is limited to VectorAPIs which is an incubating module currently.
> 
> Vector API jtreg test suite contains multiple tests cases for ByteVector.SPECIES_512 to extensively tests the patch.
> 
> Original patch review was done with [PR 9498](https://github.com/openjdk/jdk/pull/9498)

This pull request has now been integrated.

Changeset: 27b75a87
Author:    Jatin Bhateja <jbhateja at openjdk.org>
Committer: Paul Hohensee <phh at openjdk.org>
URL:       https://git.openjdk.org/jdk17u-dev/commit/27b75a87df44560b560a311f96c28de9e1abc1bb
Stats:     194 lines in 6 files changed: 189 ins; 4 del; 1 mod

8290322: Optimize Vector.rearrange over byte vectors for AVX512BW targets.

Reviewed-by: phh, sviswanathan
Backport-of: 38a81913d33c856d64b7c26f934026815a482e43

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

PR: https://git.openjdk.org/jdk17u-dev/pull/917


More information about the jdk-updates-dev mailing list