本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
HyperPod 上模型部署的任務控管
本節說明如何針對即時推論工作負載最佳化共用的 Amazon SageMaker HyperPod EKS 叢集。您將學習如何設定 Kueue 的任務控管功能,包括配額管理、優先順序排程和資源共用政策,以確保您的推論工作負載在流量激增期間取得所需的 GPU 資源,同時維持團隊訓練、評估和測試活動的公平分配。如需任務控管的更多一般資訊,請參閱 SageMaker HyperPod 任務控管 。
推論工作負載管理的運作方式
若要有效管理共用 HyperPod EKS 叢集中的即時推論流量峰值,請使用 Kueue 的現有功能實作下列任務控管策略。
優先順序類別組態
為具有高權重 (例如 100) 的推論工作負載定義專用優先順序類別,以確保在其他任務類型之前認可和排程推論 Pod。此組態可讓推論工作負載在叢集載入期間先佔較低優先順序的任務,這對於在流量激增期間維持低延遲需求至關重要。
配額大小和配置
在團隊的 中預留足夠的 GPU 資源ClusterQueue
,以處理預期的推論尖峰。在低推論流量期間,未使用的配額資源可以暫時分配給其他團隊的任務。當推論需求增加時,可以回收這些借用的資源,以排定待定推論 Pod 的優先順序。如需詳細資訊,請參閱叢集佇列
資源共用策略
根據您的需求,在兩種配額共用方法之間進行選擇:
-
嚴格資源控制:停用配額貸款和借用,以確保您的工作負載始終可以使用預留 GPU 容量。此方法需要夠大的配額大小,才能獨立處理尖峰需求,並可能在低流量期間導致閒置節點。
-
彈性資源共用:啟用配額借用,以在需要時利用其他團隊的閒置資源。借出的 Pod 會標記為可先佔,如果借出團隊回收容量,可能會移出。
團隊內先佔
在相同配額下執行混合工作負載 (評估、訓練和推論) 時,啟用團隊內先佔。這可讓 Kueue 先佔團隊中的低優先順序任務,以容納高優先順序推論 Pod,確保即時推論可以在不依賴外部配額借用的情況下執行。如需詳細資訊,請參閱先佔
範例推論工作負載設定
下列範例顯示 Kueue 如何管理共用 Amazon SageMaker HyperPod 叢集中的 GPU 資源。
叢集組態和政策設定
您的叢集具有下列組態:
-
團隊 A:10 P4 GPU 配額
-
團隊 B:20 P4 GPU 配額
-
靜態佈建:無自動擴展
-
總容量:30 P4 GPUs
共用 GPU 集區使用此優先順序政策:
-
即時推論:優先順序 100
-
訓練:優先順序 75
-
評估:優先順序 50
Kueue 會強制執行團隊配額和優先順序類別,並啟用先佔和配額借用。
初始狀態:正常叢集使用率
在正常操作中:
-
團隊 A 在所有 10 個 P4 GPUs 上執行訓練和評估任務
-
團隊 B 在 20 P4s) 和評估 (10 個 P4s)
-
叢集已完全用於所有獲認可和執行的任務
推論峰值:團隊 B 需要額外的 GPUs
當 B 團隊遇到流量激增時,額外的推論 Pod 需要額外 5 個 P4 GPUs。Kueue 偵測到新 Pod 為:
-
在團隊 B 的命名空間內
-
Priority 100 (即時推論)
-
由於配額限制而等待許可
Kueue 的回應程序會在兩個選項之間進行選擇:
選項 1:配額借用 - 如果團隊 A 只使用其 10 個 P4s中的 6 個,Kue 可以使用閒置的 4 個 P4s 來認可團隊 B 的 Pod。不過,這些借用的資源是可先佔的,如果 A 團隊提交任務以達到其完整配額,Kue 會移出 B 團隊借用的推論 Pod。
選項 2:自我先佔 (建議) - 團隊 B 執行低優先順序評估任務 (優先順序 50)。當高優先順序推論 Pod 等待時,Kue 會先佔小組 B 配額內的評估任務,並認可推論 Pod。此方法提供安全的資源配置,沒有外部移出風險。
Kueue 遵循配置資源的三個步驟:
-
配額檢查
問題:團隊 B 是否有未使用的配額?
-
是 → 認可 Pod
-
否 → 繼續步驟 2
-
-
團隊 B 內的自我先佔
問題:較低優先順序的團隊 B 任務是否可以先佔?
-
是 → 先佔評估任務 (優先順序 50)、免費 5 P4s,以及認可推論 Pod
-
否 → 繼續步驟 3
這種方法將工作負載保持在團隊 B 的保證配額內,避免外部移出風險。
-
-
從其他團隊借用
問題:是否有來自其他團隊的閒置、可借用配額?
-
是 → 使用借用配額允許 (標記為可先佔)
-
否 → Pod 保持
NotAdmitted
狀態
-