HyperPod 受管層檢查點 - Amazon SageMaker AI

HyperPod 受管層檢查點

本節說明受管層檢查點的運作方式,以及其為大規模模型訓練提供的優勢。

Amazon SageMaker HyperPod 受管層檢查點可協助您更有效率地訓練大規模生成式 AI 模型。它會使用多個儲存層,包括您叢集的 CPU 記憶體。此方法可縮短您的復原時間,並將訓練進度的損失降至最低。它也會在您的訓練基礎設施中使用未充分利用的記憶體資源。

受管層檢查點可讓您以更高的頻率將檢查點儲存至記憶體。它會定期將其保存至耐久的儲存體。這可在訓練過程中同時維持效能與可靠性。

本指南涵蓋如何在 Amazon EKS HyperPod 叢集上設定和使用受管層檢查點搭配 PyTorch 架構。

受管層檢查點的運作方式

受管層檢查點使用多層儲存方法。CPU 記憶體可做為主要層來存放模型檢查點。次要層包括持久性儲存選項,例如 Amazon S3。

當您儲存檢查點時,系統會跨叢集節點將其存放在配置的記憶體空間中。它會自動跨相鄰運算節點複寫資料,以提高可靠性。此複寫策略可防範單一或多個節點故障,同時提供快速存取以進行復原操作。

系統也會根據您的組態,定期將檢查點儲存至持久性儲存體。這可確保訓練進度的長期耐久性。

重要元件包括:

  • 記憶體管理系統:一種記憶體管常駐程式,提供分解的記憶體做為服務進行檢查點儲存

  • HyperPod Python 程式庫:與分解的儲存 API 互動,並提供跨層儲存、載入和管理檢查點的公用程式

  • 檢查點複寫:自動跨多個節點複寫檢查點以進行容錯

系統透過簡單的 API 呼叫與 PyTorch 訓練迴圈無縫整合。它需要對現有程式碼進行最少的變更。

優勢

受管層檢查點為大規模模型訓練提供數個優勢:

  • 改善可用性:管理檢查點儲存、複寫、持久性和復原

  • 檢查點操作更快速:與磁碟型檢查點相比,記憶體型儲存體提供更快的儲存和載入時間,從而導致更快的復原

  • 容錯:跨節點的自動檢查點複寫可防範硬體節點故障

  • 最少程式碼變更:簡易 API 整合只需要對現有訓練指令碼進行次要修改

  • 提高訓練輸送量:減少檢查點負荷意味著花在實際訓練上的時間更多