Markdown 版本
AI-translated from English; not yet reviewed by a fluent editor.
# AWS 的 TorchNeuron 為 Trainium 帶來原生 PyTorch 後端
> AWS 的 Neuron 2.33 版本為 Trainium2 和 Trainium3 推出公開測試版 PyTorch 後端。其支援版本、運算子涵蓋範圍與編譯限制,界定了工程師評估時需要檢查的事項。
By BIG CHANGE Editorial
Published: 2026-10-20T04:20:56.038Z
Updated: 2026-10-20T04:20:56.038Z
Canonical: https://bigchange.ai/blog/aws-torchneuron-native-pytorch-backend-trainium

AI-generated conceptual illustration by BIG CHANGE.
AWS 的 Neuron 2.33 [版本說明](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/release-notes/components/torchneuron.html)將 TorchNeuron 公開測試版的日期列為 10 月 19 日。同樣標註 10 月 19 日的 [PyTorch 公告](https://pytorch.org/blog/introducing-torchneuron-native-pytorch-backend-for-aws-trainium/)則表示,公開測試版與開放原始碼版本將於 10 月 20 日上線。`torch-neuronx` 套件向 PyTorch 註冊一個 `neuron` 裝置供 Trainium2 和 Trainium3 使用,讓支援的模型與張量運算能使用熟悉的 PyTorch API。對考慮採用這些晶片的工程師而言,實用的改變是從既有 PyTorch 程式進入裝置實測的路徑更短。程式能否正確且有效率地運行,仍取決於其運算、形狀與軟體環境。
過去 Trainium 的 PyTorch 路徑使用以 XLA 為基礎的 `torch-neuronx` 函式庫,以及 `torch_xla` 裝置程式碼。AWS 表示,原生後端使用 PyTorch 的 `PrivateUse1` 擴充機制,並將 `xm.xla_device()` 改為 `neuron` 裝置配置。對已使用 Neuron 的專案而言,即使套件名稱很熟悉,這仍是實質的介面變動。此版本適用於 Trn2 和 Trn3 執行個體上的訓練與推論;支援矩陣未列出 Trn1。
## PyTorch 程式有哪些改變
依據 [AWS 版本說明](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/release-notes/components/torchneuron.html),模型可透過 `.to("neuron")` 移動,並以 `device="neuron"` 建立輸入張量。支援的 `torch.nn`、autograd 與最佳化器運算隨後會透過後端執行。依照 PyTorch 的裝置無關 `torch.accelerator` API 編寫的程式碼,無須針對個別裝置重寫即可偵測 Neuron,這是 [TorchNeuron 概觀](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/torch/about-pytorch-neuron.html)所述的能力。
共有兩條執行路徑。即時執行模式會在 Python 呼叫時執行 PyTorch 運算,保留一般控制流程、列印輸出與中斷點。各個運算首次使用時會編譯,後續相符的呼叫則可使用快取。工程師也能透過 `torch.compile(model, backend="neuron", dynamic=False)` 編譯模型或選定區域。原生後端會編譯支援的前向與反向圖;擷取區域以外的程式碼仍以即時執行模式運行。[PyTorch 公告](https://pytorch.org/blog/introducing-torchneuron-native-pytorch-backend-for-aws-trainium/)也介紹了在編譯前設定一次 `torch.compiler.set_default_backend("neuron")` 的做法,如此後續編譯呼叫即可省略後端引數。
此版本包含一個 `neuron` 後端,供 `torch.distributed` 使用,並有文件說明的集合通訊與點對點運算。AWS 列出的支援 API 包括 DistributedDataParallel、FSDP2、DTensor、DeviceMesh 與管線平行處理。這些是分散式訓練專案值得檢視的路徑,但版本說明並未證明既有多節點工作能原封不動運行,或達到特定吞吐量目標。
## 評估從相符的環境開始
AWS 的 [安裝快速入門](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/torch/get-started/quickstart-torch-neuron.html)要求使用 Trn2 或 Trn3 執行個體,並搭配 Neuron Base DLAMI 或支援的 Ubuntu AMI。版本矩陣指定 Ubuntu 24.04 或 26.04 上的 Linux x86\_64。此版本已結束對 Ubuntu 22.04 的支援。它列出 Python 3.12、3.13 與 3.14,並以 `torch-neuronx` 2.13.3.0 搭配 PyTorch 2.13.0,或以 `torch-neuronx` 2.14.3.0 搭配 PyTorch 2.14.0。套件系列必須與 PyTorch 版本相符。
快速入門會安裝 `torch-neuronx==2.14.*`,並一併安裝 `neuronx-cc==2.*` 與 `nki`,套件來源為 Neuron 與 PyTorch 套件索引。接著會檢查裝置是否可用,並將 Neuron 上的小型矩陣運算與 CPU 結果比較。這驗證的是 AWS 範例中已安裝的裝置路徑,並不能驗證讀者自己的模型。合理的下一步評估,是執行實際模型的前向與反向路徑,使用 `torch_neuronx.get_fallback_ops()` 檢視記錄到的 CPU 回退運算,將輸出與現有環境比較,並分別量測編譯與穩態執行。最後這些步驟是 BIG CHANGE 提出的評估問題,並非我們做過的測試。
## 測試版仍可能改變工作方式之處
在即時執行模式下,不支援的運算可能回退至 CPU,並發出警告。在 `torch.compile` 下,若擷取至圖中的運算無法由 Neuron 後端降階轉換,預設會導致編譯失敗。AWS 請開發者參考其 [運算子相容性表](https://github.com/aws-neuron/torch-neuronx/blob/main/docs/torch_api_compatibility.md),確認各運算的涵蓋範圍。因此,即時執行順利完成,本身並不代表完全在裝置上執行,或具備編譯相容性。
版本說明也表示,`torch.compile` 需要設定 `dynamic=False`;新的輸入形狀可能需要重新編譯。AWS 建議使用填補或分桶來減少形狀變化。若沒有相符的快取產物,第一次執行會包含編譯。為工作負載計時時,這些細節很重要:編譯延遲與輸入形狀的分布,可能改變評估結果。
其他明確限制也縮小了相容性主張的適用範圍。此測試版不支援 `torch.sparse`、`torch.func`、`torch.nested` 或 `torch.distributions`。只有部分 `torch.fft` 轉換可在 Neuron 上運行,而 `float64` 會以 `float32` 執行並發出警告。此版本缺少 TorchAO 整合與複合 MXFP8 資料型別支援。使用這些功能介面的團隊,在把裝置配置視為遷移計畫之前,需要先檢查自己的程式路徑。
### 重大改變
TorchNeuron 在公開測試版中,將 Trainium 接到 PyTorch 原生裝置與編譯介面之後。這讓支援的 PyTorch 程式能更直接地進行初次試用,也讓既有 Neuron 使用者有一條不同於 XLA 程式碼的路徑。採用與否的決定性證據,將來自各個工作負載:運算子是否留在預定裝置上、數值結果是否仍可接受,以及量測到的效能與成本是否足以支持執行個體與遷移工作。BIG CHANGE 為這篇分析查閱了文件與公告;我們沒有運行 TorchNeuron,也沒有獨立驗證 AWS 的效能主張。
## 資料來源與延伸閱讀
- [AWS Neuron 2.33 TorchNeuron 版本說明](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/release-notes/components/torchneuron.html):發布日期、測試版狀態、版本與作業系統矩陣、API,以及已知限制。
- [AWS 的 TorchNeuron 概觀](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/torch/about-pytorch-neuron.html):裝置整合、即時與編譯執行、CPU 回退行為,以及經由 Neuron 的軟體路徑。
- [AWS 安裝與驗證快速入門](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/torch/get-started/quickstart-torch-neuron.html):執行個體與映像檔先決條件、套件安裝,以及文件中的裝置檢查。
- [PyTorch 部落格:介紹 TorchNeuron](https://pytorch.org/blog/introducing-torchneuron-native-pytorch-backend-for-aws-trainium/):從 PyTorch 角度說明裝置切換、編譯與分散式 API。此文是 AWS 貢獻者在 PyTorch 部落格發布的公告,並非獨立效能評測。
- [Amazon 公告](https://www.aboutamazon.com/news/innovation-at-amazon/torchneuron-pytorch-aws-trainium-chips-ai):AWS 對其目標與早期採用者的說明。其遷移、效能與經濟效益主張,需要針對個別工作負載驗證。
## Sources
- [AWS Neuron 版本說明:TorchNeuron](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/release-notes/components/torchneuron.html) — 第一手資料;將公開測試版日期列為 2026-10-19,比 PyTorch 公告所述的公開測試版與開放原始碼上線日期早一天;提供版本矩陣與明列限制。
- [什麼是 TorchNeuron?](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/torch/about-pytorch-neuron.html) — 裝置與後端使用方式的第一手文件。
- [PyTorch 部落格:TorchNeuron,AWS Trainium 的原生 PyTorch 後端](https://pytorch.org/blog/introducing-torchneuron-native-pytorch-backend-for-aws-trainium/) — AWS 貢獻者在 PyTorch 端發布的公告;標註 10 月 19 日,並表示公開測試版與開放原始碼版本於 10 月 20 日上線。有效網址由 Amazon 文章連入;並非獨立效能驗證。
- [Amazon 公告](https://www.aboutamazon.com/news/innovation-at-amazon/torchneuron-pytorch-aws-trainium-chips-ai) — 廠商公告;遷移與經濟效益主張是 AWS 的說法,未經獨立驗證。
- [安裝並驗證 torch-neuronx](https://awsdocs-neuron.readthedocs-hosted.com/en/latest/torch/get-started/quickstart-torch-neuron.html) — AWS 快速入門,涵蓋先決條件、相符套件安裝,以及文件中的 CPU/Neuron 裝置檢查。
- [TorchNeuron API 相容性表](https://github.com/aws-neuron/torch-neuronx/blob/main/docs/torch_api_compatibility.md) — 維護者針對各個 API 列出的原生支援、CPU 回退與不支援分類。
BIG CHANGE 電子報
掌握全貌,按照自己的步調。
關於人工智慧和機器人技術的近期報導、值得關注的轉變,以及可運用的實用想法。選擇每日快訊、每週摘要或每月觀點。
Next scheduled send (UTC): . Your first edition arrives at the next scheduled send after you confirm.