Patch optimizes Float16 to integral conversion operations. Currently, its a two 
step process where by first a Float16 value is
converted to a single precision floating point value followed by a conversion 
to an integral value.

x86 targets supporting AVX512-FP16 feature provides direct instruction to 
convert a Float16 value to integral value.

Following are the performance numbers of micro benchmark included with the 
patch on Granite Rapids with and without auto-vectorization.

<img width="1125" height="636" alt="image" 
src="https://github.com/user-attachments/assets/ca6e6757-1579-475f-8307-9454c7c025c1";
 />

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

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

Commit messages:
 - 8382523: Optimize Float16 to integral conversion operations for AVX512-FP16 
targets

Changes: https://git.openjdk.org/jdk/pull/30928/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=30928&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8382523
  Stats: 729 lines in 12 files changed: 726 ins; 0 del; 3 mod
  Patch: https://git.openjdk.org/jdk/pull/30928.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/30928/head:pull/30928

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

Reply via email to