On Tue, 18 Mar 2025 20:51:46 GMT, Jatin Bhateja <[email protected]> wrote:

> 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).

This pull request has now been integrated.

Changeset: 3321ea32
Author:    Jatin Bhateja <[email protected]>
URL:       
https://git.openjdk.org/jdk/commit/3321ea32551d7f73a6d33ecca24273b79fe3b218
Stats:     2262 lines in 32 files changed: 2167 ins; 1 del; 94 mod

8303762: Optimize vector slice operation with constant index using VPALIGNR 
instruction

Reviewed-by: erfang, qamai, sviswanathan, xgong

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

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

Reply via email to