Finite-only E4M3FNUZ #
FloatLib.Floats.E4M3FNUZ is an eight-bit format with finite values, one NaN encoding, and
unsigned zero, and E4M3FNUZ.Family is its type-level identity.
Its name records the conventions used by the ONNX float8 specification: F excludes infinity,
N retains NaN, and UZ identifies the unsigned-zero encoding. These choices belong to this
format package, and the universal executable interface assumes none of them.
The runtime carrier is one UInt8. Balanced and throughput policies select exhaustive proved byte
tables for addition, subtraction, multiplication, division, and square root. The latency policy uses
the exact arithmetic baseline. Fused multiply-add uses the proved generic single-rounding kernel.
Reference #
- ONNX, Float stored in 8 bits, E4M3FNUZ, https://onnx.ai/onnx/technical/float8.html.
The E4M3FNUZ encoding fits in its direct byte carrier.
Certified direct-byte E4M3FNUZ subtraction table.
Instances For
Certified direct-byte E4M3FNUZ multiplication table.
Instances For
Certified direct-byte E4M3FNUZ square-root table.
Instances For
Package the five byte tables with the proved arithmetic FMA baseline.
ONNX E4M3FNUZ, the FP8 format of AMD accelerators: 4 exponent and 3 fraction bits with bias 8, one zero, no infinity, and the negative-zero code as the sole NaN. Values are stored in one byte and their arithmetic reads certified byte tables.
Instances For
Construct E4M3FNUZ from a natural bit pattern, reduced to eight bits.
Instances For
Read the complete E4M3FNUZ encoding byte.