---
title: "Google 與 Meta 開源 TorchTPU，PyTorch 首次原生跑上 TPU"
url: https://sammy.hk/torchtpu-native-pytorch-tpu/
author: Ethan
published: 2026-11-08T09:41:00+08:00
modified: 2026-11-08T09:41:00+08:00
description: "2026 年 10 月 20 日，Google Cloud 在 PyTorch Conference 2026 宣布 TorchTPU 正式開源，程式碼存放於 GitHub 的 google-pytorch/torch_tpu 專案，採用 Apache 2.0 授權。TorchTPU 由 Google 與 Meta 的…"
categories: ["開放源碼"]
tags: [google, Meta, PyTorch, TPU, "開源"]
source: https://sammy.hk
---
2026 年 10 月 20 日，Google Cloud 在 PyTorch Conference 2026 宣布 TorchTPU 正式開源，程式碼存放於 GitHub 的 google-pytorch/torch\_tpu 專案，採用 Apache 2.0 授權。TorchTPU 由 Google 與 Meta 的 PyTorch 團隊共同開發，把 TPU 變成 PyTorch 的原生執行目標，與 GPU、CPU 並列\[1\]。官方指出，現有 PyTorch 模型只需把 `model.to("cuda")` 改成 `model.to("tpu")`，即可在 TPU 上運行。

## 捨棄延遲張量路線

Google 早於 2020 年推出 PyTorch/XLA，以延遲張量（lazy tensor）方式把 PyTorch 編譯到 TPU\[2\]。官方承認這個方案要求開發者在原始碼中標明可編譯區域，編譯延遲嚴重，亦不支援 PyTorch 的命令式（eager）執行模式，難以追上社群演進的速度。TorchTPU 改為建基於 PyTorch 的 Dispatcher 與 Torch Dynamo，支援約 450 個 Aten 算子，覆蓋主要深度學習架構所需的前向與反向運算，並提供名為 DeferAndFuse 的 eager 模式\[2\]。開發者可以先用 eager 模式除錯，再以 `torch.compile` 取得正式環境的效能；自訂算子則可透過 JAX/Pallas 或 Helion DSL 編寫，執行期不依賴 JAX。

## 生態整合與分散式支援

分散式原語實作於 Process Group API 層，繼承 `c10d::Backend`，因此 DTensor、FSDP、SimpleFSDP 等框架毋須改動即可使用，集體通訊以 StableHLO 算子表達\[2\]。推論方面，vLLM 與 SGLang 均有對應的 TorchTPU 分支；訓練由 TorchTitan 支援，並可配合 Ray 編排。Hugging Face 同步更新，Transformers v5 只要傳入 `device_map="tpu"` 就能把模型部署到 TPU，Diffusers 亦原生支援 eager、torch.compile 與張量並行\[1\]。Google 同時發布 llm-d 1.0，與 Red Hat、IBM 等社群合作，在 Kubernetes 上以同一端點調度 TPU 與 GPU 資源\[1\]。

## 實測數據與實際限制

官方公布的測試中，Llama 3 405B 在 1,024 顆 TPU v7x 上以 BF16 及 8K 上下文訓練，達到每顆晶片每秒 500 個 token、MFU 超過五成；Qwen3 235B 混合專家模型在 8,192 顆 TPU v7x 上、4K 序列長度下達到 28% MFU\[2\]。在 64 顆 TPU v7 的比較中，TorchTitan 錄得 1,828 TPS，JAX 的 MaxText 則為 1,937 TPS\[2\]，兩者差距已相當有限。不過官方明確指出，改一行程式碼只代表模型「跑得起身」，要達到理想效能仍須按 TPU 的形狀、切分方式與算子選型調整，開發者不宜把單行遷移當成終點\[1\]。

## 部署前要注意的事

TorchTPU 目前支援 Python 3.11 至 3.15，並已在 Google Cloud 部分大型客戶的推論與訓練工作負載中投入使用\[1\]\[2\]。對打算在 TPU 上跑現有 PyTorch 專案的團隊而言，較穩妥的做法是先以 eager 模式驗證數值結果與收斂曲線，再逐段啟用 torch.compile，並以 TorchTitan 或 vLLM 的對應分支作為參考實作。若模型依賴 FlexAttention 等尚未支援的算子，官方文件表明需要先以標準的 `scaled_dot_product_attention` 替代，遷移成本不能低估。

## 參考資料

\[1\] [TorchTPU is now open source: Run native PyTorch on TPUs（2026年10月20日）](https://cloud.google.com/blog/topics/ai-infrastructure/torchtpu-is-now-open-source-run-native-pytorch-on-tpus)

\[2\] [Introducing TorchTPU（2026年10月20日）](https://pytorch.org/blog/introducing-torchtpu/)

### 相關文章：

1. [Google 開源 TorchTPU 令 PyTorch 原生跑上 TPU](https://sammy.hk/google-%e9%96%8b%e6%ba%90-torchtpu-%e4%bb%a4-pytorch-%e5%8e%9f%e7%94%9f%e8%b7%91%e4%b8%8a-tpu/ "Google 開源 TorchTPU 令 PyTorch 原生跑上 TPU")
2. [AI 高層人事大執位：Barret Zoph 重返 Google DeepMind，Meta 印度舵手過檔 OpenAI](https://sammy.hk/ai-%e9%ab%98%e5%b1%a4%e4%ba%ba%e4%ba%8b%e5%a4%a7%e5%9f%b7%e4%bd%8d%ef%bc%9abarret-zoph-%e9%87%8d%e8%bf%94-google-deepmind%ef%bc%8cmeta-%e5%8d%b0%e5%ba%a6%e8%88%b5%e6%89%8b%e9%81%8e%e6%aa%94-openai/ "AI 高層人事大執位：Barret Zoph 重返 Google DeepMind，Meta 印度舵手過檔 OpenAI")
3. [Google Project Suncatcher 首次在軌測試：把 TPU 送上太空](https://sammy.hk/google-project-suncatcher-%e9%a6%96%e6%ac%a1%e5%9c%a8%e8%bb%8c%e6%b8%ac%e8%a9%a6%ef%bc%9a%e6%8a%8a-tpu-%e9%80%81%e4%b8%8a%e5%a4%aa%e7%a9%ba/ "Google Project Suncatcher 首次在軌測試：把 TPU 送上太空")
4. [Project Suncatcher 原型衛星入軌：Google 開始收集太空 TPU 數據](https://sammy.hk/project-suncatcher-%e5%8e%9f%e5%9e%8b%e8%a1%9b%e6%98%9f%e5%85%a5%e8%bb%8c%ef%bc%9agoogle-%e9%96%8b%e5%a7%8b%e6%94%b6%e9%9b%86%e5%a4%aa%e7%a9%ba-tpu-%e6%95%b8%e6%93%9a/ "Project Suncatcher 原型衛星入軌：Google 開始收集太空 TPU 數據")
