A float format's resolution is relative, so the damage depends on how large a running total grows against the terms being added. The measured error for a 4,096-term dot product in each direction, the weight update that vanishes entirely, and why bf16 removed loss scaling but not master weights.
Why do tensor cores accumulate in fp32 when the inputs are bf16, and why do optimizers keep fp32 master weights?
A float format's resolution is relative, so the damage depends on how large a running total grows against the terms being added. The measured error for a 4,096-term dot product in each direction, the weight update that vanishes entirely, and why bf16 removed loss scaling but not master weights.
Updated Sep 2026 · Grounded in real AI infrastructure interview loops and written to a senior-engineer editorial bar, with every number worked and every diagram hand-built.
The concepts behind this question
Ranked by how closely each one overlaps this question's topic, so the first card is the thing to read if the answer above moved too fast.
Scored on explaining accumulation error as a ratio between the running sum and the addend rather than as a function of length alone, on the master-weight argument, and on knowing that bf16 removes loss scaling but not fp32 accumulation.
No comments yet — be the first to share your approach.
