The bit representation of a float16 value is a short value.
These methods will enable superior interoperation with machine learning models and native machine learning libraries.
The implementations will conform to the IEEE 754-2008 standard.
Additional work beyond the scope of this issue can improve the performance of these implementations:
- they can be made intrinsic leveraging hardware instructions on appropriate platforms; and
- if the hardware platform supports vector instructions it may be possible to enhance C2's auto-vectorizer
- blocks
-
JDK-8289552 Make intrinsic conversions between bit representations of half precision values and floats
-
- Resolved
-
- csr for
-
JDK-8290216 Conversions between bit representations of half precision values and floats
-
- Closed
-
- relates to
-
JDK-8303035 Release Note: java.lang.Float.floatToFloat16 and java.lang.Float.float16ToFloat May Return Different NaN Results when Optimized by the JIT Compiler
-
- Resolved
-
-
JDK-8293991 java/lang/Float/Binary16ConversionNaN.java fails on silent NaN conversions
-
- Resolved
-
-
JDK-8302976 C2 Intrinsification of Float.floatToFloat16 and Float.float16ToFloat Yields Different Result than the Interpreter
-
- Closed
-
-
JDK-8324212 Improve tests for Float.floatToFloat16?
-
- Closed
-
- links to
-
Commit openjdk/jdk/7318b222
-
Review(master) openjdk/jdk/9422