How NF12 works: escaped groups take 28 bytes, rarely exceeding BF16 size

AlpinDale · x · 2026-11-07

More details on NF12: it isn't exactly 12-bit across the board — escape buffers and a shared exponent base take some space. Weights are grouped in 8s; a normal group packs into 12 bytes (instead of 16). Groups that can't be represented are marked as exceptions, with the original eight BF16 values stored in a separate escape buffer (28 bytes total). If escape buffers pile up, total size could exceed BF16, but this almost never happens with NF12 (it would at NF11/10).

Related event: Developer open-sources nf12: lossless 12-bit compression for BF16 models(10 posts)→

Original post →

More from Infra

Infra channel →