翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SageMaker HyperPod タスクガバナンスでのギャングスケジューリングの使用
分散 ML トレーニングでは、ジョブで複数のポッドがノード間で同時に実行され、pod-to-pod通信が必要になることがよくあります。HyperPod タスクガバナンスは、Kueue waitForPodsReadyの機能を使用してギャングスケジューリングを実装します。有効にすると、すべてのポッドの準備が整うまで、ワークロードは Kueue によってモニタリングされます。つまり、スケジュール、実行、オプションの準備状況プローブを渡します。ワークロードのすべてのポッドが設定されたタイムアウト内に準備ができていない場合、ワークロードは削除され、再キューに入れられます。
ギャングスケジューリングには以下の利点があります。
-
リソースの浪費を防止 — すべてのポッドの準備が整っていない場合、Kueue はワークロードを削除して再キューに入れ、部分的に実行されているワークロードによってリソースが無期限に保持されないようにします。
-
デッドロックの回避 — ジョブが部分的なリソースを保持し、互いに無期限にブロックするのを防ぎます。
-
自動復旧 — ポッドがタイムアウト内に準備できない場合、ワークロードは無期限にハングアップするのではなく、設定可能なエクスポネンシャルバックオフで削除および再キューに入れられます。
ギャングスケジューリングをアクティブ化する
ギャングスケジューリングを有効にするには、タスクガバナンス Amazon EKS アドオンがインストールされた HyperPod Amazon EKS クラスターが必要です。アドオンのステータスは Activeまたは である必要がありますDegraded。
注記
ギャングスケジューリングは、クラスターの Kueue 設定を編集kubectlすることで、 を使用して直接設定することもできます。
ギャングスケジューリングを有効にする (SageMaker AI コンソール)
-
Amazon SageMaker AI コンソール
を開き、HyperPod クラスターに移動します。 -
ポリシー管理タブを選択します。
-
「タスクガバナンス」セクションで「アクション」を開き、「ギャングスケジューリングの設定」を選択します。
-
ギャングスケジューリングを切り替えて設定を行います。
-
[保存] を選択します。Kueue コントローラーが再起動して変更を適用します。
ギャングスケジューリング設定
次の表に、ギャングスケジューリングの設定を示します。
| 設定 | 説明 | デフォルト |
|---|---|---|
timeout |
ワークロードを削除して再キューイングする前に、すべてのポッドの準備ができるまで Kueue が待機する時間。 | 5m |
recoveryTimeout |
ノード障害後に Kueue がポッドが復旧するのを待ってからワークロードを再キューに入れる時間。を に設定0sして無効にします。設定timeoutされていない場合は、デフォルトで の値になります。 |
5m |
blockAdmission |
有効にすると、ワークロードは順番に許可されます。現在のポッドのすべてのポッドの準備ができるまで、新しいワークロードは許可されません。リソースに制約のあるクラスターのデッドロックを防止します。 | オフ |
requeuingStrategy timestamp |
再キューの順序が Creation (元の送信時間、キューの位置を保持) と Eviction (最後の削除時間、繰り返し失敗するジョブの優先度を効果的に解除) のどちらを使用するか。 |
エビクション |
requeuingStrategy backoffLimitCount |
Kueue がワークロードを完全に非アクティブ化するまでの最大再キュー試行回数。無制限の再試行には空のままにします。 | 無制限 |
requeuingStrategy backoffBaseSeconds |
連続するタイムアウトのたびにワークロードを再キューに入れるときのエクスポネンシャルバックオフのベース時間を秒単位で表します。指数は 2 です。 | 60 秒 |
requeuingStrategy backoffMaxSeconds |
エクスポネンシャルバックオフ遅延の上限。に達すると、Kueue はこの固定間隔でキューイングを続行します。 | 3600 秒 |
注記
ギャングスケジューリング設定を変更すると、Kueue コントローラーが再起動され、ジョブの受け入れが一時的に遅延する可能性があります。これは、値を有効化、無効化、または更新する場合に適用されます。実行中のジョブは中断されません。
注記
ギャングスケジューリングはクラスター全体で行われます。これは、特定のチームやキューだけでなく、クラスター上のすべての Kueue マネージドワークロードに適用されます。