Azure 基礎結構上 AI 工作負載的記憶體建議 (IaaS)
本文提供在 Azure 基礎結構上執行 AI 工作負載的組織 (IaaS) 的記憶體建議。 Azure 基礎結構上 AI 工作負載的記憶體解決方案必須能夠管理 AI 模型定型和推斷固有的數據記憶體、存取和傳輸需求。
AI 工作負載需要高輸送量和低延遲,以有效率地擷取和處理數據。 它們也需要數據版本設定和一致性的機制,以確保在分散式環境中正確且可重現的結果。 選取適當的記憶體解決方案時,請考慮數據傳輸時間、延遲、效能需求,以及與現有系統的相容性等因素。
使用檔案系統進行使用中數據。 實作文件系統來儲存 AI 作業主動使用或產生的「作業特定/經常性」數據。 此解決方案非常適合用於即時數據處理,因為其低延遲和高輸送量功能。 這些功能對於優化 AI 工作流程的效能至關重要。 Azure 有三個主要文件系統解決方案,可支援在 Azure 基礎結構上定型和推斷 AI 模型。 若要選擇正確的文件系統,請遵循下列建議:
使用 Azure Managed Lustre 來取得最低的數據傳輸時間,並將延遲降到最低。 Azure 受控 Lustre 透過平行文件系統功能提供高效能,並簡化 Azure 整合的管理。 其符合成本效益,使用以使用量為基礎的記憶體成本,並允許選擇性地從 Blob 記憶體匯入數據,以優化數據處理。
當您需要 AI 工作負載的企業級功能和效能時,請使用 Azure NetApp Files。 Azure NetApp Files 提供高可用性和效能,非常適合任務關鍵性應用程式。 如果您有對 NetApp 基礎結構的現有投資,Azure NetApp Files 會很有説明。 這有利於混合式雲端功能,以及當您需要自定義和微調記憶體組態時。
當效能是最高優先順序時,請使用本機 NVMe/SSD 檔案系統。 它會使用 BeeGFS 隨選 (BeeOND) 等作業專用的平行檔系統,匯總計算的本機 NVMe(背景工作節點)。 它們會直接在計算節點上運作,以在作業期間建立暫時的高效能文件系統。 這些系統提供超低延遲和高輸送量,使其適用於 I/O 密集的應用程式,例如深度學習定型或即時推斷。
將非使用中數據傳送至 Azure Blob 儲存體。 完成作業之後,請從 Azure 受控 Lustre 將非作用中的作業數據傳送至 Azure Blob 儲存體,以進行長期符合成本效益的記憶體。 Blob 記憶體提供具有不同存取層的可調整選項,確保有效儲存非使用中或不常存取的數據,同時在需要時隨時可供使用。
實作模型定型的檢查點。 設定檢查點機制,以定期儲存模型的狀態,包括定型權數和參數,例如每 500 個反覆專案。 將此檢查點數據儲存在 Azure Managed Lustre 中,以允許從先前儲存的狀態重新啟動模型定型,以改善 AI 工作流程的彈性和復原能力。
將數據遷移至成本較低的儲存層自動化。 設定 Azure Blob 儲存體 生命週期管理原則,以自動將較舊、不常存取的數據遷移至成本較低的儲存層,例如非經常性存取層或封存層。 這種方法可優化記憶體成本,同時確保重要數據在需要時仍可存取。
確保跨分散式環境的數據一致性。 藉由設定 Azure 受控 Lustre 與 Azure Blob 儲存體 之間的同步處理,確保分散式 AI 工作負載之間的數據一致性。 此同步處理可確保存取數據的所有節點都使用相同的一致版本,防止分散式環境中的錯誤和差異。
啟用數據版本控制以重現性。 在 Azure Blob 儲存體 中啟用版本控制,以追蹤一段時間的數據集和模型變更。 此功能有助於復原、增強重現性,並支援共同作業。 它會維護數據與模型修改的詳細歷程記錄,並可讓您視需要比較和還原舊版。