TPU 的 fp32 精度陷阱

JFPuget · x · 2026-07-20

这条帖结合配图指出了一个 TPU 上很容易踩坑的细节:即使你请求的是 fp32 matmul,TPU 默认也可能按 bf16 执行。

作者提到,训练命令里的 --lm-head-precision highest 看起来像是在保护质量,但实际上并不起作用,因为 TPU 的默认行为会把这类计算落到 bf16。配图里的 JAX 例子也说明了这一点:输入是 fp32,但默认精度路径仍然会被使用。

作者强调,这不是隐藏 bug,而是文档里写明的默认行为;甚至连 Google 研究员都曾因此反复踩坑。核心提醒是:在 TPU 上不要被参数名字误导,必须真正理解平台的精度执行语义。

原文链接 →

「Infra」频道最新

更多「Infra」频道 AI 资讯 →