本文說明加速器最佳化機器家族中,搭載 Tensor Processing Unit (TPU) 的 Compute Engine 執行個體。TPU 是 Google 開發的客製化特殊應用積體電路 (ASIC),專門針對人工智慧 (AI) 和機器學習 (ML) 工作負載進行最佳化。
Compute Engine 支援下列 TPU 版本:
- TPU7x
- TPU v6e
- TPU v5p
每個版本中的每個機型都有特定拓撲,並連結多個 TPU 晶片。
TPU 架構基本概念
瞭解 TPU 架構的基本概念,有助於您為工作負載選擇 TPU 版本和機器類型。
TPU 晶片:TPU 晶片是 Google 專為機器學習設計的加速器。每顆 TPU 晶片包含一或多個 TensorCore,可處理大量矩陣運算。每個 TensorCore 包含一或多個矩陣乘法單元 (MXU),這些單元採用脈動陣列架構,每週期可執行數千次乘法累加運算,不需持續存取記憶體。TPU 晶片主要用於高速矩陣處理,但也包含向量和純量單元,可用於一般運算和控制流程作業。
TPU Pod:TPU Pod 是透過專用網路分組的一組連續 TPU。TPU Pod 中的 TPU 晶片數量取決於 TPU 版本。
TPU 執行個體:在 TPU 主機上執行的 Linux 運算執行個體,可直接存取基礎 TPU 硬體,提供高效能程式庫、SSH 連線能力和執行階段偵錯記錄檔。
TPU 配量:互連 TPU 晶片的邏輯群組,可透過一或多個 TPU 執行個體存取。切片具有下列其中一個範圍:
- 單一主機配量:由一部主機組成的配量。一般來說,這會對應至一個 TPU 執行個體。
- 多主機配量:由多個 TPU 執行個體組成的配量,使用高速晶片間互連 (ICI) 相互連結。
TPU 立方體:互連 TPU 晶片的 4x4x4 拓撲。這種架構僅適用於 3D 拓撲。
SparseCore:SparseCore 是資料流處理器,可使用稀疏運算加速模型。主要用途是加速推薦模型,這類模型高度仰賴嵌入。
TPU 版本:TPU 晶片的確切架構取決於您使用的 TPU 版本。每個 TPU 版本也支援不同的切片大小和設定。
如要瞭解 TPU 的運作方式,請參閱 Cloud TPU 說明文件中的「TPU 架構」一文。
依工作負載類型推薦的 TPU 版本
選擇合適的 TPU 模型時,應考量工作負載的運算特性、記憶體需求和擴充性需求。選取下列其中一個分頁標籤,即可查看建議。
AI/機器學習訓練
AI/機器學習推論
線上提供模型:部署模型以進行即時互動,低延遲是關鍵。在依序生成權杖時,這些工作負載會受到記憶體頻寬限制。
執行批次推論:離線處理大型資料集,主要目標是高處理量。在提示預先填入階段,這些工作負載會受限於運算能力。
推薦系統
強化學習
用量方案
為充分運用資源、降低成本,並兼顧工作負載效能,Compute Engine 支援下列 TPU 消耗選項:
隨選:不預先安排容量,直接使用 TPU。要求資源前,請務必確認您有足夠的隨選配額,可建立特定類型和數量的 TPU 執行個體。隨選是最有彈性的用量選項,但無法保證有足夠的隨選資源可滿足您的要求。
Spot:佈建 Spot VM 可享有大幅折扣,但 Spot VM 可能隨時遭到先占,並在 30 秒前發出警告。詳情請參閱「關於 Spot VM」。
彈性啟動:佈建 {flex_start_vms_name},最長可運作七天,Compute Engine 會根據可用性,盡可能自動分配硬體。詳情請參閱「關於 {flex_start_vms_name}」。
容量區塊的未來預留項目:要求一年以上的未來預留項目。詳情請參閱 Cloud TPU 說明文件的「要求一年以上的未來預留項目」一節。
日曆模式的未來預留項目:在指定時間範圍內,佈建 TPU 資源最多 90 天。詳情請參閱「關於日曆模式中的未來預留項目要求」。
如未指定其他選項,TPU 的預設隨選計費模式。
如要瞭解啟用消耗選項的基礎佈建模式,請參閱「關於 VM 佈建模式」。
各 TPU 版本的用量方案
下表摘要說明各 TPU 版本的用量選項。
| TPU 版本 | 隨選 | Spot | 彈性啟動 | 隨需預留項目 | 未來預留項目 | 日曆模式的未來預留項目1 | 容量區塊的未來預留項目 |
|---|---|---|---|---|---|---|---|
| 2 | 2 | 2 | 2 | ||||
1 使用「所有運算能力」模式時,無法在日曆模式中建立未來預留項目要求。
2 Spot、彈性啟動、日曆模式的未來預留項目,以及 TPU7x 容量區塊的未來預留項目,都受到許可清單限制。如要申請存取權,請與帳戶團隊或銷售團隊聯絡。
所有容量模式
根據預設,TPU 預留項目包含自動故障復原功能。Cloud de Confiance 會自動將故障的 TPU 機器替換為預留容量中的健康機器,確保有可用資源重新啟動 TPU 磁碟切片,藉此管理這項程序。
或者,如果是 TPU v6e 和 TPU7x,您可以在所有容量模式中要求 TPU 容量。這個模式可讓您存取完整的預留容量,並完整查看拓撲。在這個模式中,您也可以指定特定區塊或子區塊,精準地依據拓撲結構安排工作負載。不過,您必須負責管理硬體故障和維護作業。
如要進一步瞭解這些模式,請參閱 Cloud TPU 說明文件中的「TPU 容量模式」。
TPU 版本比較
比較不同 TPU 版本的特性。您可以在「Choose properties to compare」(選擇要比較的屬性) 欄位中選取特定屬性,在下表中比較所有 TPU 版本的這些屬性。
| 加速器最佳化 | 加速器最佳化 | 加速器最佳化 |
| VM | VM | VM |
| Intel Emerald Rapids | AMD EPYC Genoa | Intel Sapphire Rapids |
| x86 | x86 | x86 |
| 224 | 44 到 180 | 208 |
| 討論串 | 討論串 | 討論串 |
| 960 GB | 176 至 1440 GB | 448 GB |
| NUMA | NUMA | NUMA |
| — | — | — |
| — | — | — |
| — | — | — |
| — | — | — |
| — | — | |
| NVMe | NVMe | NVMe |
| — | ||
| — | — | — |
| — | — | — |
| — | — | — |
| — | — | — |
| — | — | — |
| — | — | |
| — | — | — |
| — | — | — |
| gVNIC | gVNIC | gVNIC |
| 400 Gbps | 50 至 400 Gbps | 200 Gbps |
| 4 | 8 | 4 |
| — | — | — |
| — | — | — |
TPU 架構規格
下表列出各 TPU 版本的主要規格。
| 規格 | TPU7x | TPU v6e | TPU v5p |
|---|---|---|---|
| 每個 Pod 的晶片數量 | 9216 | 256 | 8960 |
| 每顆晶片的尖峰運算效能 (BF16) (TFLOPs) | 2307 | 918 | 459 |
| 每顆晶片的尖峰運算效能 (FP8) (TFLOPs) | 4614 | 918 | 459 |
| 每個晶片的 HBM 容量 (GiB) | 192 | 32 | 95 |
| 每顆晶片的 HBM 頻寬 (GBps) | 7380 | 1638 | 2765 |
| vCPU 數量 (4 晶片 VM) | 224 | 180 | 208 |
| RAM (GiB) (4 晶片 VM) | 960 | 720 | 448 |
| 每個晶片的 TensorCore 數量 | 2 | 1 | 2 |
| 每個晶片的 SparseCore 數量 | 4 | 2 | 4 |
| 每個晶片的雙向晶片間互連 (ICI) 頻寬 (GBps) | 1200 | 800 | 1200 |
| 每個晶片的資料中心網路 (DCN) 頻寬 (Gbps) | 100 | 100 | 50 |
TPU 機型
以下各節說明各 TPU 版本適用的機器類型。
TPU7x (Ironwood)
每個 TPU7x 虛擬機器 (VM) 含有 4 個 TPU 晶片。所有 TPU7x 配量都使用完整主機、4 晶片 VM。
每顆 TPU7x 晶片包含兩個 TensorCore 和四個 SparseCore。
Ironwood 程式設計模型可讓您存取兩個 TPU 裝置,而非前幾代使用的單一邏輯核心架構。詳情請參閱 Cloud TPU 說明文件中的「雙小晶片架構」。
| 機型 | vCPU 數量 | 執行個體記憶體 (GiB) | 實體 NIC 數量 | 網路頻寬上限 (Gbps) | 每個 VM 的 TPU 晶片數量 | NUMA 節點數量 | TPU 記憶體總量 (GiB HBM) |
|---|---|---|---|---|---|---|---|
tpu7x-standard-4t |
224 | 960 | 2 | 400 | 4 | 2 | 768 |
如要進一步瞭解 TPU7x 架構,請參閱 Cloud TPU 說明文件中的「TPU7x (Ironwood)」。
TPU v6e (Trillium)
每個 TPU v6e VM 可含有 1、4 或 8 顆 TPU 晶片。4 晶片和更小的配量具有相同的非統一記憶體存取 (NUMA) 節點。
v6e 配量是使用半主機 VM 建立,每個 VM 有 4 個 TPU 晶片,但下列情況除外:
- 只有一個 TPU 晶片的
ct6e-standard-1t主要用於測試。 ct6e-standard-8t是經過最佳化的完整主機 VM,適用於推論用途,可讓附加至單一 VM 的所有 8 個 TPU 晶片用於單一服務工作負載。
| 機型 | vCPU 數量 | 執行個體記憶體 (GB) | 實體 NIC 數量 | 網路頻寬上限 (Gbps) | 每個 VM 的 TPU 晶片數量 | NUMA 節點數量 | TPU 記憶體總量 (GiB HBM) |
|---|---|---|---|---|---|---|---|
ct6e-standard-1t |
44 | 176 | 1/4 | 50 | 1 | 1 | 32 |
ct6e-standard-4t |
180 | 720 | 2 | 400 | 4 | 1 | 128 |
ct6e-standard-8t |
360 | 1440 | 1 | 200 | 8 | 2 | 256 |
如要進一步瞭解 TPU v6e 架構,請參閱 Cloud TPU 說明文件中的「TPU v6e」。
TPU v5p
TPU v5p Pod 由 8,960 個 TPU 晶片組成,這些晶片透過可重新設定的高速連結互連。TPU v5p 的彈性網路可讓您以多種方式,連結相同大小配量中的 TPU 晶片。單一配量訓練最多支援 6144 個 TPU 晶片。
| 機型 | vCPU 數量 | 執行個體記憶體 (GB) | 實體 NIC 數量 | 網路頻寬上限 (Gbps) | 每個 VM 的 TPU 晶片數量 | NUMA 節點數量 | TPU 記憶體總量 (GiB HBM) |
|---|---|---|---|---|---|---|---|
ct5p-hightpu-4t |
208 | 448 | 1 | 200 | 4 | 2 | 380 |
如要進一步瞭解 TPU v5p 架構,請參閱 Cloud TPU 說明文件中的「TPU v5p」。
TPU 拓撲
拓撲定義了 TPU 切片中 TPU 的實體排列方式。拓撲可能是二維或三維,視 TPU 版本而定。只要計算拓撲中各個大小的乘積,即可找出配量中的 TPU 晶片數量。例如:
- 採用
2x2x2拓撲的tpu7x-standard-4t機型是 8 晶片多主機 TPU7x 配量。
下表列出各 TPU 版本可用的拓撲。
| TPU 版本 | 機型 | 範圍 | 技術規格 |
|---|---|---|---|
| TPU7x (Ironwood) | tpu7x-standard-4t |
單一主機 |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
多主機 |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
多主機 |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
多主機 |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
多主機 |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
多主機 |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
多主機 |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
多主機 |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
多主機 |
|
| TPU7x (Ironwood) | tpu7x-standard-4t |
多主機 |
|
| TPU v6e (Trillium) | ct6e-standard-1t |
單一主機 |
|
| TPU v6e (Trillium) | ct6e-standard-8t |
單一主機 |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
單一主機 |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
多主機 |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
多主機 |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
多主機 |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
多主機 |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
多主機 |
|
| TPU v6e (Trillium) | ct6e-standard-4t |
多主機 |
|
| TPU v5p | ct5p-hightpu-4t |
單一主機 |
|
| TPU v5p | ct5p-hightpu-4t |
多主機 |
|
| TPU v5p | ct5p-hightpu-4t |
多主機 |
|
| TPU v5p | ct5p-hightpu-4t |
多主機 |
|
| TPU v5p | ct5p-hightpu-4t |
多主機 |
|
-
計算方式是將拓撲乘積除以四。 ↩
後續步驟
- 瞭解 Compute Engine 中的 TPU 資源
- 試用快速入門導覽課程:建立單一 TPU VM