powered by TechFeed
表示モード
主要ニュース

NVIDIAのGPUオーケストレーション基盤「Run:ai」がオープンソース化 — KubernetesでGPUをチーム間で公平に分け合うスケジューラーがCNCF入りも

10月13日、NVIDIAが「NVIDIA Run:ai Is Now Open Source as Part of NVIDIA DSX AI Factory Platform」と題した記事を公開した。AIワークロード管理・GPUオーケストレーション基盤「NVIDIA Run:ai」のフルプラットフォームをオープンソースとして公開し、NVIDIA DSX AI Factory Platformの一部として提供を開始したという内容だ。有償サブスクリプションなしでコミュニティ製品として利用できるようになっただけでなく、中核スケジューラーはCNCF(Cloud Native Computing Foundation)への寄贈まで果たしており、単なるコード公開にとどまらないエコシステム戦略として注目される。

10月13日、NVIDIAが「NVIDIA Run:ai Is Now Open Source as Part of NVIDIA DSX AI Factory Platform」と題した記事を公開した。AIワークロード管理・GPUオーケストレーション基盤「NVIDIA Run:ai」のフルプラットフォームをオープンソースとして公開し、NVIDIA DSX AI Factory Platformの一部として提供を開始したという内容だ。有償サブスクリプションなしでコミュニティ製品として利用できるようになっただけでなく、中核スケジューラーはCNCF(Cloud Native Computing Foundation)への寄贈まで果たしており、単なるコード公開にとどまらないエコシステム戦略として注目される。


Run:aiがオープンソース化——何が変わるのか

ソースコードはNVIDIA DSX AI Factory GitHubオーガニゼーションに公開されており、Helmチャートを使ったインストールはNVIDIA NGCからも入手可能だ。エンタープライズサポートは含まれないが、コミュニティ利用は無償で可能となった。

Run:aiはもともとKubernetes上でAIワークロードを大規模に実行するためのプラットフォームで、データ処理・学習・推論にまたがるGPUリソースの動的割り当てとライフサイクル管理を担ってきた。これが商用製品からオープンソースへと転換されたことは、AIインフラの民主化という観点で大きな動きである。


4つのモジュラーコンポーネント

プラットフォーム全体の採用だけでなく、以下の4コンポーネントを個別に組み込むことも可能な設計になっている点がエンジニアにとって実用的だ。

KAI Scheduler(スケジューリングエンジン)

最も注目すべきコンポーネントが**KAI Schedulerだ。Apache 2.0ライセンスで公開され、CNCF(Cloud Native Computing Foundation)のSandboxプロジェクトとして寄贈**されている。CNCFはKubernetesやPrometheusなどを擁するクラウドネイティブ技術の中立的な標準化団体であり、Sandboxはその初期インキュベーション段階を指す。寄贈により、Run:aiのスケジューラー部分はNVIDIA単独ではなくコミュニティ主導で継続開発される体制となった。

主な機能は以下のとおりだ:

  • ギャングスケジューリング:マルチポッドジョブを「全員揃ってから配置」する。インメモリシミュレーションで事前に配置確認し、不要なEvictionを防ぐ
  • フェアシェアとクォータ管理:時間ベースのフェアシェアも含み、チーム間でリソース配分を均等に保つ
  • トポロジー対応のビンパッキング:スケジューリング決定レベルでの配置最適化
  • GPUシェアリング:MIG、MPS、タイムシェアリング、HaMi(Heterogeneous AI computing virtualization Middleware)、CUDA 13.4 MPSフラクショニングに対応
  • DRA(Dynamic Resource Allocation)サポート

既存のKubernetesクラスターに、現行スタックと並行してデプロイ可能なため、段階的な導入がしやすい。

GPU Fractioning Operator

GPUのメモリを分割して複数ワークロードで共有する仕組みだ。従来のRun:aiは独自実装でこれを実現していたが、今回はCUDA 13.4で新たに導入されたネイティブのMPSフラクショニング機能を活用する方向に転換し、独自実装は廃止された。CUDA 13.4はリリース時点では比較的新しいバージョンであり、このネイティブ対応によって独自ドライバーパッチへの依存が解消されている。

CUDAドライバーがワークロードごとにGPUメモリの上限を強制し、各ワークロードは自分に割り当てられたメモリ分しか見えない設計だ。GPU Fractioning OperatorはKubernetes上でこのCUDAネイティブ機能を利用するための統合レイヤーを提供する。スケジューラー非依存であり、KAI Scheduler以外とも組み合わせられる。

ノートブック環境や小規模モデルの推論など、GPU全メモリを必要としないワークロードに適している。

KAI Resource Management

スケジューラーが「どこに配置するか」を決めるのに対し、KAI Resource Managementは「誰が何を使えるか」を管理する組織レイヤーだ。

  • プロジェクト・部門単位でのGPUキャパシティの割り当てと保証
  • ノードプールによる異種ハードウェアのグルーピング
  • フェアシェアとクォータのセマンティクス

「研究チームにクラスターの50%を保証しつつ、他チームが残りを独占しないようにする」といった運用が実現できる。スプレッドシートでクォータを管理していたり、チームごとにNamespaceを手動管理しているような環境の置き換え候補として位置付けられている。

Workload Map

Workload Mapは、Kubernetesの多様なワークロードタイプを統一的に扱うための抽象レイヤーだ。なお、GitHubリポジトリのコード名は「karta」となっており、記事中の「Workload Map」という製品名とは異なる点に注意が必要だ。

PyTorchJob、RayCluster、KServe InferenceServiceなど、それぞれ異なる構造・役割・ステータス報告方法を持つワークロードを、共通のインターフェースで管理できるようにする。Goライブラリとして提供され、クラスターに何も追加せずオフラインで動作する。スケジューリング・キューイング・オートスケールの機能は持たず、ワークロード構造の記述に特化した設計だ。


エコシステムパートナーの対応

今回のリリースに合わせ、Crusoe、Mirantis、Nebius、Rafay、Saturn Cloudなど複数のパートナーが対応を表明している。

このパートナー陣営の顔ぶれは、GPUクラウドプロバイダー(Crusoe、Nebius)、Kubernetesディストリビューター(Mirantis)、マルチクラスター管理プラットフォーム(Rafay)、データサイエンス向けクラウド(Saturn Cloud)と多層にわたっており、Run:aiのオープンソース化がインフラ層からプラットフォーム層まで幅広く受け入れられていることを示している。NebiusはManaged Kubernetes上でワンクリックデプロイを提供し、RafayはRun:aiのコントロールプレーンからテナント管理まで含めたフルマネージドサービスとして提供する予定だ。


まとめ

NVIDIAがRun:aiをオープンソース化した背景には、NVIDIA DSX AI Factoryというプラットフォームエコシステムの拡大戦略がある。プラットフォーム全体をそのまま使うか、KAI SchedulerやGPU Fractioning Operatorを既存スタックに組み込むかは、チームの要件次第で選択できる。KAI SchedulerのCNCF Sandbox入りにより、NVIDIAの製品戦略に左右されない形でのコミュニティ主導の継続的な開発が期待される。

詳細はNVIDIA Run:ai Is Now Open Source as Part of NVIDIA DSX AI Factory Platformを参照していただきたい。