On Tue, 22 Sep 2026 04:27:08 GMT, Mohamed Issa <[email protected]> wrote:

>> It turns out the 2-step FP16 to integral conversion process is usually more 
>> beneficial on platforms that support AVX10.2 instructions. This is mainly 
>> due to the reduced instruction count and automatic special case handling 
>> (e.g., NaN). With that in mind, the changes in this PR go back to the 
>> original approach when AVX10.2 is detected in the C2 compiler. There are 
>> also some updates to the JTREG tests and JMH benchmarks.
>> 
>> The JTREG test listed below was used to verify correctness with 
>> `-XX:-UseSuperWord` and `-XX:+UseSuperWord` JVM options applied. All 
>> modifications and tests used [OpenJDK 
>> v28-b15](https://github.com/openjdk/jdk/releases/tag/jdk-28%2B15) as the 
>> baseline build.
>> 
>> 1. 
>> `jtreg:test/hotspot/jtreg/compiler/vectorapi/TestFloat16ToIntegralConv.java`
>> 
>> ---------
>> - [x] I confirm that I make this contribution in accordance with the 
>> [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai).
>
> Mohamed Issa has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Remove AVX10.2 fp16 to byte direct conversion vector instruction as it 
> causes correctness issues.

test/micro/org/openjdk/bench/jdk/incubator/vector/Float16ToIntegralConvBenchmark.java
 line 61:

> 59:         IntStream.range(0, size).forEach(
> 60:             i -> {
> 61:                 if ((i % 100) == 0) {

The if (i % 100) could now be removed.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/32957#discussion_r4075459682

Reply via email to