- Currently for masked Float16 intrinsified vector operation we emit a sequence of BLEND instruction which merges the result of complete vector operation with passthrough vector under the influence of mask. - Targets supporting AVX512-FP16 feature offers direct predicated instructions. - This patch adds the support to infer predicated vector ADD/SUB/MUL/DIV/FMA/SQRT/MIN/MAX operation on AVX512-FP16 targets
Following are the performance numbers of benchmark included with the patch on AVX512-FP16 target (Intel Granite Rapids) <img width="1497" height="857" alt="image" src="https://github.com/user-attachments/assets/5600449e-e946-4bab-ae99-2e13dc454b56" /> 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: - 8386957: C2 VectorAPI: Predicated operation support for intrinsified Float16Vector unary/binary/ternary operations on AVX512-FP16 targets Changes: https://git.openjdk.org/jdk/pull/32004/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=32004&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8386957 Stats: 1005 lines in 8 files changed: 1005 ins; 0 del; 0 mod Patch: https://git.openjdk.org/jdk/pull/32004.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/32004/head:pull/32004 PR: https://git.openjdk.org/jdk/pull/32004
