A TPU precision trap that silently changes fp32 matmuls
JFPuget · x · 2026-07-20
The post highlights a TPU-specific pitfall: although users may request fp32 matmuls, TPUs can still execute them in bf16 by default.
A training flag called --lm-head-precision highest may look like it protects quality, but the author says it does nothing in practice because of this TPU behavior. The screenshot shows a JAX example where an fp32 input still ends up using the default precision path on TPU, and the point is that this is documented behavior — not a hidden bug.
The author says even Google researchers have been bitten by this issue repeatedly. The takeaway is that precision assumptions on TPU can be misleading, so practitioners need to understand the platform’s default execution semantics rather than relying on flags that appear reassuring.
More from Infra
- SpaceX strikes $40B deal with Apollo Global to lease AI chips and data center hardware — Polymarket · 2026-10-26
- India Needs at Least 5GW of Compute by 2028 to Stay Relevant, User Argues — EAccelerate_42 · 2026-10-26
- SpaceX AI revenue up 830%, Claude designs 318K antivenom proteins in 64 hours — PeterDiamandis · 2026-10-26
- Meta plans up to $95 billion stock sale to fund AI buildout — The Decoder · 2026-10-26
- Pandora M1: first prototype of a physical device for distributed GPU monitoring — tarantulae · 2026-10-26
- INT21's AI agent swarm rewrote Drama 3's inference runtime in Rust within one hour, beating SGLang-Omni — bingxu_ · 2026-10-26