大規模GPUクラスターにおけるインパクト駆動型スケジューリングの設計と実装


ADVERTISEMENT

従来型優先度スケジューラーの限界と「コモンズの悲劇」

AIインフラストラクチャにおける最大の課題の一つは、供給をはるかに上回るGPU需要(通常、利用可能なリソースの2〜3倍の競合)をいかに調停するかという点にある。Ai2のクラスター(NVIDIA H100やB200/B300を88〜1024基備える規模)では、従来型の優先度ベースのスケジューラーを採用していた。この構成では、各チームがプリエンプション(割り込み)から保護される同時実行GPU数の上限を持ち、余剰リソースをプリエンプティブなワークロードが利用する仕組みになっていた。

しかし、この運用は構造的なパソロジー(病理現象)を引き起こした。具体的には以下の問題が顕在化した。

  • GPUの「スクワッティング(陣取り)」: デバッグ用ワークロードを即座に起動するため、ユーザーが実態のないノーオプ(No-op)ワークロードを常時接続してリソースを占有する現象。
  • 優先度のインフレ: すべてのユーザーが自己防衛的に「HIGH」優先度を指定するようになり、最終的に全ワークロードの100%が最高優先度化して低優先度タスクが完全に飢餓状態に陥った。
  • オンコールの増大: メンテナンスが必要なノード上で非プリエンプティブなジョブが動作しているため、エンジニアが手動でシャットダウンの交渉を行う必要があった。

経済学や分散システム管理における「コモンズの悲劇」と同様に、個々の研究者が自身の成果最大化を求めてリソースを独占しようとした結果、グローバルな最適性が損なわれていた。

時間予算(Budgets)と階層型フェアシェアによる資源調配

この課題を解決するため、Ai2は静的なスケジューリングパズルを解くアプローチを捨て、**「GPU時間予算(Time Budgets)」と「階層型フェアシェア(Hierarchical Fair-Share)」**を組み合わせたシステムへと移行した。

  • ガバナンスと予算の分離: 各研究プロジェクトやプログラムに対して、リーダーシップ層が戦略的インパクトに基づいて事前に「GPU時間のシェア(例:全体容量に対する35%の権利など)」を割り当てる。優先度はアドホックなジョブ単位ではなく、組織的な投資判断として行われる。
  • コストの発生: 旧システムとは異なり、保護された実行には必ずチームの「予算」が消費される仕組みに変更された。これにより、リソースの買い占めやゲーミング(不正なインフレ)を行うコストが、正当な予算交渉を行うコストよりも高くつく設計となっている。
  • 階層型フェアシェア・アルゴリズム: スケジューラーは過去の一定期間(デフォルトは7日間のスライディングウィンドウ)の実効占有率を追跡し、過小利用されているアロケーションを優先してソートする。これにより、組織はアロケーション通りの計算資源を確実に受け取ることが可能になる。
  • アロケート占有とアンアロケート占有: 予算を消費する「Allocated occupancy」と、予算を消費せず無保証でいつでもプリエンプトされる「Unallocated occupancy」を分離。これにより、需要の隙間を完全に埋め、クラスター全体で98%という極めて高い占有率を維持している。

スケジューリング契約(Scheduling Contract)とシミュレーション駆動検証

長時間の分散トレーニング(数日〜数週間に及ぶジョブ)がリソースを占有し続ける問題を解消するため、**「スケジューリング契約(Scheduling Contract)」**が導入された。

  1. 最小実行時間(Minimum Runtime)の宣言: ワークロードは、意味のある進捗を生むために必要な最短の実行時間を宣言する。この期間中はプリエンプションから保護され、進捗が保証される。

  2. 自動リバランスとドレイン: 最小実行時間を経過したワークロードは、フェアシェアの再計算に基づいて必要に応じて自動的に再キューイング(中断・再開)される。これにより、ハードウェアのメンテナンスや障害ノードのドレインが自動化され、人間による介入が必要な作業が74%削減された。

  3. シミュレーションによる挙動検証: 変更がもたらす影響を予測するため、過去の投入データや構築シナリオを入力してキュー待ち時間やプリエンプションをミリ秒単位で解析するシミュレーション環境を構築。これにより、例えばデバッグ用ワークロード(15分未満の短時間ジョブ)のp90待ち時間が数時間から数十秒へと劇的に短縮されることが事前に検証・実証された。


開発者・エンジニア視点での考察

  1. ジョブのステートレス化と可搬性の重要性: 時間制限付きプリエンプション(タイムスライシング)を導入するクラスターでは、ワークロード側が迅速なチェックポイントと再開(Resume)をネイティブにサポートしていることが前提となる。コンテナやランタイム層でのミリ秒単位のチェックポイント保存機構の最適化が、今後のインフラエンジニアの主要な差別化要因となる。

  2. 「無料リソース」の設計がもたらす行動変容: ユーザーにコスト(予算)を意識させつつ、余剰リソースを「無保証・プリエンプト可能(Unallocated)」として解放するインセンティブ設計は、分散システムのモラルハザードを防ぐ上で極めて効果的である。単にリソースを制限するのではなく、「低リスクで使えるが剥奪される枠」を用意することが高稼働率と公平性の両立の鍵となる。

  3. 対話型・インタラクティブセッションへの個別配慮の必要性: バッチ型の分散トレーニングには有効だったタイムスライシングも、開発者がコードを書きながら対話的にテストするインタラクティブセッションにおいては、状態の消失や再構築コストという新たなボトルネックを生んだ。バッチ処理基盤と対話・データ準備用基盤(CPUクラスタやセッション永続化層)のアーキテクチャ上の分離・適材適所なルーティング設計が不可欠である。

Source / 元記事

この記事について

著者
AIBloom AI編集部
初回公開
最終更新

この記事は、公開されているニュース、論文、公式発表、RSSフィードなどをもとに、AIが要約・補足調査・考察を行って作成しています。

元記事の完全な翻訳・逐語的な要約ではなく、AIによる背景説明や開発者向けの考察を含みます。

重要な技術仕様・価格・提供状況などは、必ず元記事または公式情報をご確認ください。

About AIBloom

ADVERTISEMENT