AI関連の最新ニュースをピックアップ
米NVIDIAは、並行処理フレームワーク「CUDA(NVIDIAのGPU向け並行計算プラットフォームおよびプログラミングモデル)」のバージョン13.1において、GPUの計算リソースを単一プロセス内で明示的に分割できる新機能「Green Contexts(GPUの計算ユニットやキューを明示的に分割し競合を防ぐ軽量な実行コンテキスト)」のRuntime API対応を正式発表しました。これまでCUDA 12.4以降のDriver APIでのみ利用可能だったGPUリソース分割制御が、標準的なRuntime API経由で直接利用可能になります。これにより、低遅延が要求されるAIセンサー処理や推論タスクと、計算量の大きいバックグラウンド学習処理を同一GPU上で干渉なく並行稼働させることが容易になります。
従来のCUDAコンテキストは単一アプリケーションによるGPU占有を想定した重量級の設計であり、同一GPU上で異なるワークロードを並行実行する際にはSM(Streaming Multiprocessor)やワークキューの奪い合いが発生していました。ストリーム優先度を設定しても、先行する大規模カーネルがSMを埋め尽くしている場合、優先カーネルは先行ブロックの完了(ドレイン)を待機しなければならない制約がありました。
Green Contextsでは、開発者がアプリケーションコード内でGPUのSM群を明示的に切り分ける「SMパーティショニング」と、ワークキューリソースの個別プロビジョニングが可能となります。Runtime APIでは cudaExecutionContext_t 型が導入され、cudaGreenCtxCreate() で取得したハンドルを cudaExecutionCtxStreamCreate() に渡すことで、指定した計算資源に結びついたストリームを生成できます。
NVIDIAが公開した「Blackwell(NVIDIAの最新データセンター向けGPUマイクロアーキテクチャ)」GPU(148 SM搭載)における検証データでは、以下の測定結果が報告されています。
| 実行モード | クリティカルカーネルの実行遅延 | 備考 |
|---|---|---|
| Green Contexts分割(8 SM専用割当 / 140 SM通常割当) | 0.007 ms | 専用SMにより先行処理の待機を完全回避 |
| デフォルトコンテキスト(高優先度ストリーム設定) | 0.140 ms | 先行するバルクブロックのドレイン待ちが発生 |
| デフォルトコンテキスト(同一優先度) | 3.727 ms | 同一SMを競合し約532倍の遅延が発生 |
高優先度設定のみの場合と比較しても約20倍、優先度設定なしと比較すると約532倍の遅延短縮が達成されています。
Green Contextsの導入にあたっては、以下の制約とトレードオフを理解しておく必要があります。
smCoscheduledAlignment)を満たす必要があり、任意のSM数に細かく分割できるわけではありません。日本のAIインフラ開発現場やロボティクス・自動運転分野(NVIDIA Holoscanなど)において、同一エッジデバイスやGPUノード上でリアルタイム制御と大規模推論を混在させるユースケースでは、本APIの活用によりシステムの確定的な応答性が大幅に向上するとみられます。
AIアプリケーションが単一モデルの実行から、前処理・推論・後処理・通信が同一プロセス内で協調する複合エージェント型システムへと進化する中、GPUリソースの制御粒度は従来のGPU単位(ホスト全体)やMIG(Multi-Instance GPU:ハードウェアレベルの粗い分割)から、プロセス内のAPIレベルへと細分化されています。
Green ContextsのRuntime API対応は、開発者が特別なドライバ権限やインフラ再起動を伴わずに、コードレベルで決定論的な並行性を制御できる道を拓くものです。今後は分散推論時の通信(NCCL等)とGEMM(行列積)計算の重複実行など、推論サービングエンジンの最適化レイヤーへの採用が加速するとみられます。