管理受管理容量模式下 TPU 的維護事件
TPU VM 是指附加 TPU 硬體的 Compute Engine VM 執行個體。Compute Engine VM 會受到 Compute Engine VM 維護事件影響。每個 TPU 都會連線至 Compute Engine VM,因此使用更多 TPU (例如在 TPU 節點中) 時,VM 遇到維護事件的機率就會增加。
本文將探討如何處理 TPU 上長期執行的訓練工作維護事件。如要瞭解如何處理 Google Kubernetes Engine (GKE) 中 TPU 的維護事件,請參閱「管理 GPU 和 TPU 的 GKE 節點中斷」。
查看即將進行維護作業的通知
監控執行個體即將進行的維護作業,有助於您主動準備工作負載,以盡量減少中斷時間的方式處理即將進行的維護作業。詳情請參閱 Compute Engine 說明文件中的「監控及規劃主機維護事件」。
使用檢查點,在維護事件後快速復原
查核點是從維護事件快速復原的關鍵,因此應經常儲存。建議您大約每小時儲存一次檢查點。如果檢查點不夠頻繁,維護事件或其他訓練中斷情況可能會導致大量訓練進度遺失。
檢查點通常是指訓練時使用的所有已儲存參數,例如模型權重。儲存查核點所需時間可能為數秒至數分鐘。
雖然 TPU 通常會在維護作業後自動復原,但有時作業不會自動重新啟動。發生這種情況時,您需要刪除並重新建立 TPU 資源,然後從儲存的檢查點重新啟動訓練工作。如要瞭解如何偵測及從自動復原失敗中復原,請參閱「偵測及從 TPU 故障中復原」。
每個機器學習架構都有不同的機制,可儲存及載入檢查點。支援的 Cloud TPU 模型通常內建檢查點功能。如要進一步瞭解檢查點,請參閱下列文件:
偵測維護事件
如要偵測 TPU 是否發生維護事件,以及發生時間,請查看 Cloud Logging 中的系統事件稽核記錄。詳情請參閱「查看維護事件記錄」。
您也可以使用 gcloud compute
instances describe 指令,查看即將進行的維護作業。
詳情請參閱 Compute Engine 說明文件中的「監控及規劃主機維護事件」。
查看維護事件記錄
您可以在 系統事件稽核記錄中,查看 TPU 維護事件的歷來記錄。
在 Google Cloud 控制台導覽選單中,前往「Logs Explorer」頁面:
使用下列搜尋查詢,查看因維護而終止的 TPU VM:
"compute.instances.terminateOnHostMaintenance"結果會顯示搜尋時間範圍內,TPU 工作站中斷和修復的記錄。記錄包括:
- 活動的日期和時間
- 活動類型
protoPayload.metadata.terminateReason欄位中的終止原因
手動啟動維護作業
您可以手動啟動 TPU VM 上待處理的主機維護事件,主動處理即將進行的維護作業,盡量減少中斷。詳情請參閱 Compute Engine 說明文件中的「手動啟動主機維護事件」。