谷歌云在 PyTorch Conference 2026 当天宣布,和 Meta PyTorch 团队合作开发的 TorchTPU 已经在 GitHub 开源。按谷歌的说法,TPU 从此和 GPU、CPU 一样,是 PyTorch 的原生设备选项,现有代码基本不用改就能跑。
署名这篇公告的是谷歌云 AI 与计算基础设施副总裁 Mark Lohmeyer 和工程副总裁 Bill Jia。代码仓库放在 google-pytorch 组织下,配套的 vLLM、SGLang 后端分别放进了各自项目的组织。
一次开源,接了一串框架
TorchTPU 支持 eager 模式调试,也能走 torch.compile 提高 TPU 利用率、压低显存开销。同一天接入的上下游项目不少:
- 推理侧:vLLM 和 SGLang 各有一个原生 PyTorch 后端,前者支持连续批处理、量化和多芯片并行,后者用 RadixAttention 复用 KV cache;与红帽、IBM 一起发布的 llm-d 1.0 负责前缀缓存感知路由和预填充、解码分离。
- 训练侧:TorchTitan 已验证 Llama 3 70B/405B、Qwen 3 8B/32B、Qwen 3 235B(MoE)、FLUX.1 12B 等模型;强化学习框架 VeRL 合入了 TPU 后端和 GRPO 参考配方,目前是预览版。
- 生态:Hugging Face Transformers v5 用
device_map="tpu"一行加载到 TPU,还为 Transformers 搭了每晚跑的 TPU 持续集成;Ray 可以把 CPU、GPU、TPU 编进同一条流水线。
谷歌给出的性能数字有两组。TorchTitan 在 Qwen 3 8B 上跑到 52% MFU,在最多 8192 块 Ironwood(TPU v7x)上接近线性扩展。合作方 Zenteiq 用 llm-d 加 GKE 后,每 1000 块 TPU v6e 的日生成量从 14.7 亿 token 涨到 59.7 亿,提升 4 倍以上。两组都来自谷歌或合作方自测,公告没有附完整复现配置。
Meta 为什么站台
Meta PyTorch 工程总监 Jana van Greunen 在公告里给了一段话:
“We cannot be constrained by a single hardware architecture.” 我们不能被单一硬件架构绑住。
她提到 TorchTPU 已经支撑 Meta 大模型、广告和推荐系统里的“关键生产场景”。具体用了多少 TPU、占 Meta 算力多大比例,这次没有披露。Hugging Face、vLLM 背后的 Inferact、SGLang 背后的 RadixArk 也都出了表态,口径都落在“硬件多样性”上。
同一周,AWS 也交了一份
把 TorchTPU 和前一天 AWS 公布的 TorchNeuron 放在一起看,两家走的是同一条路。TorchNeuron 是 Trainium 的原生 PyTorch 后端,Apache 2.0 开源,10 月 20 日起公开 Beta,支持 Trainium2 和 Trainium3,用户只需 .to('neuron')。它同样拿 Transformers v5 和 TorchTitan 当门面,Meta 那位 PyTorch 工程总监也给 AWS 写了推荐语。
差别在细节。AWS 公开了测试口径:用 10 万个 Hugging Face 模型做盲测,跑 PyTorch 上游测试约 15.4 万项结果,其中约 3.9 万项是 Neuron 主动跳过,包括稀疏张量、动态形状等首版不支持的特性。谷歌这边只列了支持清单,哪些算子回落 CPU、哪些特性暂缺,公告里找不到同等颗粒度的说明。
两家都依赖 PyTorch 社区这几年做的设备无关接口,例如 PrivateUse1 扩展点和 torch.accelerator。此前 PyTorch 用户想上 TPU,主要靠 PyTorch/XLA 经 XLA 编译器转译,调试体验一直被诟病。现在换成原生后端,迁移门槛从“改代码”降到“改设备名”。
对开发者来说,最现实的检验是那些没进官方验证清单的模型。TorchTPU 文档写明的 TPU 型号只有 v6e 和 Ironwood,更早的几代能不能用、性能如何,谷歌暂未说明;配套的 TPU agent 插件也还处在早期预览。
参考来源:Google Cloud 官方博客、PyTorch 官方博客(TorchNeuron 公告)、CocoLoop、TorchTPU GitHub 仓库;MFU 与吞吐数字以谷歌及合作方自测口径为准。