Knowledge note
Microscaling
A block-floating-point representation that shares one scale across a small group of narrow elements.
Microscaling
Microscaling is a block-floating-point representation that applies one shared scale to a small group of same-type narrow elements.
Why It Exists
Scalar floating-point values repeat exponent metadata and force hardware to align products individually. Sharing a scale across a block reduces storage and moves much of that alignment work outside the inner reduction, which is useful for AI matrix multiplication and convolution.
How It Works
An MX block contains one scale X, k private elements P_i, and a chosen block size. OCP MX fixes k=32 and uses an 8-bit E8M0 scale, while choosing FP4, FP6, FP8, or INT8 for the private elements. A block therefore costs w + k*d bits, such as 200 bits for MXFP6.
Tradeoffs
The shared scale must cover the whole block. An outlier can therefore reduce the effective precision of smaller values, and the implementation still has to choose the physical layout, accumulator precision, conversion policy, and operations around the dot product.
Common Confusions
- Microscaling vs. scalar FP4: Microscaling describes the shared-scale block, not merely the bit width of each private element.
- OCP MX vs. shared-microexponent MX: The OCP MX Alliance formats use one E8M0 scale plus private elements; the ISCA 2023 BDR work uses a related but distinct hierarchy of shared microexponents.
- OCP MX vs. HiF4: OCP MX uses a 32-element E8M0 block contract; HiF4 uses 64 S1P2 values with an E6M2 base scale and two shared micro-exponent levels.
Where It Appears
- Microscaling (MX) Formats: Block Floating Point for AI Hardware - OCP MX block structure, concrete encodings, conversion rules, dot products, and hardware history.
- MiniMax GQA W4A4 Quantization Path - Uses MXFP4 as one of the hardware-backed W4A4 paths.
- Quantization - Groups MX with other low-precision numeric formats.
- NVFP4: Blackwell 4-Bit Floating Point - Contrasts NVFP4’s fractional, 16-element scaling with OCP MX’s power-of-two, 32-element blocks.
- HiFloat4 (HiF4) - Uses a larger 64-value block and two levels of shared micro-exponents to keep a richer four-bit payload and integer-heavy dot products.
- DeepSeek-V4.1-Flash - Uses an MXFP4-style E2M1 main-KV payload with one E4M3 scale per 16 channels.
Related Terms
- GEMM
- Inner Product - Scalar reduction used by MX dot products.
- Block Floating Point
- NVFP4