从 .to("tpu") 看 AI 算力战争的下半场:护城河正在从芯片迁移到软件栈
一个后缀改写的东西 2026 年 11 月 3 日的 AI 洞察日报头条,属于一个看起来很小的新东西:Google 与 Meta PyTorch 团队联合开源的 TorchTPU。它做的事情用一句话就能说清——让 PyTorch 原生跑在 TPU 上,现有工作负载只需把 .to("cuda") 改成 .to("tpu"),就能开箱运行。 一次设备字符串的替换,凭什么上头条? 因为在这行代码背后,是 AI 算力市场一条延续了近十年的铁律正在松动:买 GPU,买的不只是芯片,是 CUDA 生态。过去任何一家想挑战 NVIDIA 的芯片厂商,最终都会撞上同一堵墙——开发者早已被锁死在 CUDA 和 PyTorch 的 GPU 后端里,迁移成本高到让再强的硬件也卖不动。而 TorchTPU 的意义恰恰在于:它把迁移成本压缩到了改一个后缀的程度。 这件事值得深挖。因为它不只是 Google 的一次开源动作,而是整个算力竞争的游戏规则正在发生位移的信号——护城河正在从芯片本身,迁移到软件栈的开放程度与社区运营能力上。 PyTorch/XLA 的失败遗产:为什么这次不一样 要看懂 TorchTPU,得先看它的"前任"是怎么败下阵来的。 2020 年,Google 推出了第一代 PyTorch-on-TPU 方案 PyTorch/XLA,基于 Lazy Tensor 机制。从纸面上看,它打通了 PyTorch 和 TPU,但实际用过的团队几乎都体验过它的三宗罪: 第一,侵入式改码。 开发者必须在源代码里显式标记哪些区域可以编译,这意味着一份模型代码要维护 GPU 和 TPU 两个分支,工程团队最恨的就是这种事。 第二,编译延迟严重。 图编译要等,改一个 shape 重新编译又要等。在快速迭代的研究场景里,这种延迟是致命的。 第三,跟不上 PyTorch 的演进。 PyTorch 是社区驱动的、以月为单位狂奔的项目,而 PyTorch/XLA 始终像个外挂适配层,eager 模式支持残缺,DDP/FSDP/DTensor 这些新的分布式习语迟迟跟不上。 ...