Megascale 統計資料工具
您可以使用 Megascale Stats 工具,分析跨多個 TPU Slice 的工作負載的 Slice 間通訊效能,這些工作負載會透過資料中心網路 (DCN) 通訊。
Megascale Stats 工具中顯示的所有指標,都是以每個 TPU 為單位產生。
支援平台
Megascale Stats 工具僅支援 TPU。
與集合相關的術語
這項工具會顯示與 TPU 配量間通訊相關的指標,包括下列作業:
send:中斷主機以啟動直接記憶體存取 (DMA),並提供已填滿的緩衝區給主機,以啟動資料轉移。send-done:向主機發出信號,表示資料移轉已完成。recv:提供空白緩衝區,供主機填入轉移的資料。recv-done:向主機發出信號,表示已收到資料。
集合是由 send 作業啟動,並由相符的 recv-done 作業完成。資料實際傳送作業會在傳送作業完成後進行。send-done 作業會在資料傳送後執行。同樣地,資料會在 recv 作業完成後收到。recv-done 作業會在收到資料後執行。
介面元件
這項工具會顯示表格,其中包含下列各欄,每個剖析的集體作業各佔一列:
- DCN 集體名稱:由 XLA 指派。
- Recv op name:TPU
recv-done作業名稱。方便您在追蹤記錄檢視器中,搜尋對應的集合 TPU 作業。 - 傳送作業名稱:TPU
send作業名稱。 - 空閒時間:定義為集體傳輸資料時,與網路無關的時間。這是指集合可用於傳送及接收資料的時間,不包括
send、send-done、recv或recv-done作業。增加閒置時間可降低集體 TPU 停滯的機率。舉例來說,假設有下列時間軸:

Slack time is calculated in this example as:
Slack time = t<sub>1</sub> + t<sub>2</sub> + t<sub>3</sub>
- 觀察到的時間長度:每個集合觀察到的時間長度。計算方式為從
send作業開始到對應recv-done作業結束之間的時間間隔,包括傳送及接收資料所花費的時間。舉例來說,假設有以下時間軸:

Observed duration is calculated as:
Observed duration = t<sub>send</sub> + t<sub>1</sub> + t<sub>send-done</sub> + t<sub>2</sub> + t<sub>recv</sub> + t<sub>3</sub> + t<sub>recv-done</sub>
- 停滯時間:集體停滯 TPU 的時間長度。這是集合在
send、send-done、recv和recv-done作業中花費的總時間,不包括傳輸資料所花費的時間。舉例來說,假設有以下時間軸:

Stall duration is calculated in this example as:
Stall duration = t<sub>send</sub> + t<sub>send-done</sub> + t<sub>recv</sub> + t<sub>recv-done</sub>
- 發生次數:在設定檔期間,集體活動啟動及完成的總次數。
send作業及其相符的recv-done作業必須在設定檔持續時間內發生,才能納入這項指標。 - 匯總的總停滯時間:在設定檔期間,集合體停滯 TPU 的總時間量。匯總總停頓次數的計算方式如下:
- 匯總總停頓時間 = 停頓時間 * 發生次數
- 傳輸的資料大小:透過網路傳輸的資料量,以 XLA 作業形狀為計算依據。
- 所需頻寬:在提供的緩衝時間內傳輸資料所需的頻寬。您可以使用這項指標,查看設定檔期間爭奪網路頻寬的集合數量。所需頻寬的計算方式如下:
- 所需頻寬 = 傳輸資料大小 / 閒置時間
分析 Megascale Stats Tool 資料
如要分析工具中顯示的資料,請按照下列步驟操作:
- 依「
Aggregated Total Stall」遞減排序表格。 - 找出
Aggregated Total Stall最高的 DCN 集體名稱。 如果值明顯高於其他值,可能表示有瓶頸。 - 將 DCN 集體的
Required Bandwidth乘以核心數量 (例如 每個 v4 TPU 主機 8 個)。如果這個值大於 TPU 的最大網路頻寬,可能表示網路壅塞。請嘗試變更分片機制,以減少所需頻寬。 - 產生 HLO 傾印,檢查編譯器問題。擴展
send和recv-done作業可排定更多重疊的 HLO 作業,並減少 TPU 停滯時間。 - 在「追蹤記錄檢視器」中,檢查
recv-done作業的持續時間,找出總停滯時間最長的集合。如果傳輸時間過長,可能表示頻寬不足,因為recv-done作業通常會遭到網路封鎖。 - 如果
recv-done作業的持續時間與閒置時間相比並未過長,可能表示有硬體問題。