> Patch optimizes Vector.slice operation with constant index using x86 ALIGNR 
> instruction.
> Intrinsification is performed using new hybrid call generator infrastructure 
> added along with https://github.com/openjdk/jdk/pull/30876  which performs 
> lazy intrinsification and in case of intrinsic failure which will happen for 
> variable slice index will perform procedural inlining of fallback 
> implementation to prevent call overhead and boxing penalties. The existing 
> vector API-based slice implementation is now the fallback code.
> 
> Vector API jtreg tests pass at various AVX levels.
> 
> Following are the performance numbers of benchmark included with the patch 
> over AVX512 and legacy target :-
> 
> <img width="993" height="1053" alt="image" 
> src="https://github.com/user-attachments/assets/9f5bbd6e-892d-4bfe-870f-070dabe32232";
>  />
> <img width="996" height="341" alt="image" 
> src="https://github.com/user-attachments/assets/7732ed97-131f-478b-8c50-67c6990f5ea1";
>  />
> 
> <img width="976" height="883" alt="image" 
> src="https://github.com/user-attachments/assets/09f08034-3f1d-4acd-a2d9-dfb29c7d1513";
>  />
> 
> 
> 
> Kindly review and share your feedback.
> 
> Best Regards,
> Jatin
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

Jatin Bhateja has updated the pull request incrementally with one additional 
commit since the last revision:

  Review comments resolution and removing noise from benchmark

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/24104/files
  - new: https://git.openjdk.org/jdk/pull/24104/files/1438b375..abf44aa6

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=24104&range=24
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=24104&range=23-24

  Stats: 979 lines in 10 files changed: 445 ins; 382 del; 152 mod
  Patch: https://git.openjdk.org/jdk/pull/24104.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/24104/head:pull/24104

PR: https://git.openjdk.org/jdk/pull/24104

Reply via email to