テクニカルガイド

GPU スケジューリングとクラスター オーケストレーション

GPU スケジューリングは、どのジョブをどのアクセラレータでいつ実行するかを決定し、オーケストレーションはマシンのクラスター全体でこれらのジョブを調整します。

2分の読書最終更新日

概要

Together they keep expensive GPUs busy, fair, and reliable for many users and workloads.

ディープダイブ

共有 AI クラスターでは、数十人のユーザーが、それぞれ数万ドルもする希少な GPU を求めて競争します。スケジューラは、各ジョブの要件 (GPU の数、メモリ、トポロジ) を利用可能なハードウェアと照合し、優先順位とフェアシェア クォータを適用し、クラスターがいっぱいの場合でもキューが機能します。オーケストレーションはさらに進化し、コンテナーの配置、データのマウント、障害の処理、クラッシュしたワーカーの再起動、およびマルチノード分散トレーニングの結合を行います。 NVIDIA デバイス プラグインと Volcano や Kueue などのアドオンを備えた Kubernetes は、分散ジョブのすべてのワーカーが同時に開始する必要がある、または誰も開始しないギャング スケジューリングを処理します。適切なスケジューリングでは、GPU インターコネクト トポロジも考慮され、高速な NVLink 通信を必要とするランクを同じ場所に配置して、低速のクロスノード ボトルネックを回避します。

技術的な洞察

GPU は可算で分割不可能なリソースとして公開されるため、スケジューラーは共有可能な CPU サイクルではなく、整数のようにそれらを追跡します。ギャング (または共同) スケジューリングは重要です。60 個の GPU しか許可されていない場合、64 ランクの分散トレーニング ジョブはデッドロックになるため、スケジューラはオール オアナッシングを割り当てる必要があります。トポロジーを意識した配置により、NVLink および InfiniBand レイアウトが読み取られて、通信ランクを近くに保ち、大規模モデルのトレーニングに影響を与える遅延を最小限に抑えます。

戦略的影響

費用と予算

アーキテクチャの決定により、パフォーマンスと運用コストが何年にもわたって推進されます。

より明確な判決

技術教育は、チームが最新のスタックだけでなく、適切なスタックを選択するのに役立ちます。

品質管理

より良いエンジニアリングの選択により、本番環境での信頼性に関するインシデントが減少します。

GPU スケジューリングとクラスター オーケストレーションの将来

スケジューラーは、フラクショナル GPU とタイムシェアリング GPU、MIG 対応のビン パッキング、優先度の高い作業の容量を再利用するためにジョブをチェックポイントするプリエンプションに関してより賢くなっています。エネルギーとコストの最適化、スポット容量の再利用、従業員数を増減させる柔軟なトレーニングのための自動ギャング スケジューリングとのより深い統合が期待されます。クラスターが数万の GPU に拡張されると、頻繁なハードウェア障害に耐えられるフォールトトレラントなオーケストレーションが不可欠になります。

現実世界の実装

研究ラボではフェアシェア クォータを使用しているため、他のチームがキューで待機している間、単一のチームがすべての GPU を独占することはできません。

Volcano を使用した Kubernetes は 32 GPU トレーニング ジョブをギャング スケジュールするため、すべてのワーカーが同時に開始され、部分割り当てのデッドロックが回避されます。

スケジューラは、優先度の低い実験をプリエンプトしてチェックポイントを作成し、緊急の実稼働再トレーニング実行のために GPU を解放します。

トポロジを意識した配置により、NVLink に接続された 1 つのノード上に 8 つのランクが共存し、勾配のオール リデュースが高速化されます。

リスクとガードレール

1 つのベンチマークを最適化すると、より広範なシステムの弱点が隠れる可能性があります。

インフラストラクチャとメンテナンスのコストは過小評価されがちです。

システムが複雑になるにつれて、セキュリティと可観測性のギャップが拡大する可能性があります。

実装ロードマップ

1

実装前にレイテンシ、品質、コストの目標を定義します。

2

現実的な負荷とデータ条件でのベンチマーク。

3

エラー、ドリフト、ユーザーへの影響を計測器で監視します。

4

スケーリングの前に、ロールバックとインシデント対応のパスを準備します。

探検を続けましょう

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the GPU Scheduling and Cluster Orchestration quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

クイズを開始する

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

次のガイド

学習率のスケジューリング

よくある質問

What is GPU Scheduling and Cluster Orchestration?

GPU スケジューリングは、どのジョブをどのアクセラレータでいつ実行するかを決定し、オーケストレーションはマシンのクラスター全体でこれらのジョブを調整します。これらを組み合わせることで、高価な GPU が多くのユーザーやワークロードに対してビジーで公平かつ信頼できる状態に保たれます。

分散トレーニング ジョブにおいてギャング スケジュールが重要なのはなぜですか?

分散トレーニングでは、すべてのランクを同時に実行する必要があります。全か無かのギャング スケジュールにより、部分的な割り当てがハングするのを防ぎます。

GPU は通常、スケジューラによってリソースとしてどのようにモデル化されますか?

任意にスライスできる CPU シェアとは異なり、GPU は通常、数えられる全体の単位として扱われます。

トポロジ認識スケジューリングは何を最適化しようとしていますか?

データを交換するランクを同じ場所に配置して高帯域幅リンクを使用し、通信遅延をすべて削減します。

AI ジョブのバッチおよびギャング スケジューリングのために Kubernetes で一般的に使用されるアドオンはどれですか?

Volcano (および Kueue) は、AI ワークロードに対して標準的な Kubernetes にはないバッチおよびギャング スケジューリング機能を追加します。

GPU スケジューラでのプリエンプションは何に使用されますか?

プリエンプションは優先度の低いジョブを一時停止またはチェックポイントするため、緊急で優先度の高い作業が GPU を要求する可能性があります。