vLLM、NVIDIA Vera Rubin NVL72サポートを追加、スループット7.8倍を実現

TL;DR

vLLMは、NVIDIA Vera Rubin NVL72 GPUの公式サポートを発表しました。前世代のGB200 NVL72と比較して、GPUあたりの推論スループットが最大7.8倍向上し、MLPerfではVision-Language Model(VLM)スループットが最大3.7倍向上しています。


Vera Rubin NVL72の概要

  • 計算アドバンテージ – NVL72は、GB200 NVL72の約5倍のNVFP4推論FLOPSを提供します。
  • メモリ帯域幅 – RubinのHBM4は、GB200のHBM3eの2.4倍の帯域幅を提供します。
  • GPU間ネットワーキング – 第6世代NVLinkは、Blackwell世代より1.7倍の帯域幅を提供し、集団通信のレイテンシを削減します。
  • Softmaxアクセラレーション – 指数演算のスループットは、FP32で2倍、BF16/FP16で4倍高速化され、より高速なGEMMカーネルに追従するアテンションを支援します。

これらのハードウェア改善は、エージェント型AIワークロード向けに設計されており、vLLMが報告するパフォーマンス向上の基盤となっています。


Day-0互換性

  • Blackwellファミリーカーネル – RubinはBlackwell派生アーキテクチャ(SM107)です。vLLMの既存のBlackwellカーネル(SM100fをターゲット)は、変更なしでRubin上で動作します。
  • コンテナの利用可能性 – CUDA 13.4とPyTorch 2.15でビルドされたナイトリーダッカーイメージがvllm/vllm-openai:cu134-nightlyとして公開されており、Rubinデプロイメント用に直接プルできます。
  • モデルカバレッジ – すぐに使えるサポートには、DeepSeek、Kimi、GLM、MiniMax、その他のコミュニティモデルが含まれます。

Rubinチューニング済みカーネル

vLLMは、FlashInfer 0.7.0と独自のフォークを介して、いくつかのRubin固有カーネルを統合しています:

  • Rubinのテンソルコア命令向けにチューニングされたアテンション、GEMM、MoEカーネル。
  • Rubinの指数演算向けに最適化されたMiniMax Sparse Attention(MSA)プレフィルカーネル。
  • Rubinの高スループットFP8パスを活用した、アテンションとMSA用のFP8カーネル。

これらのカーネルはFlashInfer、MSA、Hummingなどのライブラリにアップストリームされ、エコシステム全体への利益を保証します。


局所性を考慮したMixture-of-Experts(MoE)

  • CUDA 13.4の局所性ドメインにより、SMは最も近いHBM領域から重みを読み取ることができ、クロスドメイントラフィックを削減します。
  • Split-N戦略は、MoE重み行列を列方向にシャーディングし、各シャードを異なる局所性ドメインに割り当てます。
  • パフォーマンスへの影響 – MiniMax M3 MoEモデルでの初期実験では、局所性ドメインを有効にすると、212個中200個のSMのみがアクティブな場合(デフォルトモード)でも、小トークンデコードで平均1.2倍の高速化を示しています。バックフィルモードでは、同様の利点で完全なSM使用率を復元します。

これらの結果は、Rubinの増加したメモリ帯域幅が、ソフトウェアレベルのメモリ局所性最適化を通じて効果的に活用できることを示しています。


ベンチマーク結果

AgentX(SemiAnalysis) – LLMスループット

  • GPUあたりのスループット – Rubin NVL72上のvLLMは、一致するインタラクティブ性でGB200 NVL72の7.84倍のスループットを達成します。
  • TPS制約シナリオ – 150 TPS制限下では、Rubinは5.18倍のスループットを提供します。

MLPerf Inference v6.1 – Vision-Language Model

  • モデル – vLLM(バックエンド)とDynamo(ルーター)を介して提供されるQwen3-VL-235B-A22B。
  • スループット向上 – Rubin NVL72は、オフライン、サーバー、インタラクティブモード全体で、GB300 NVL72より最大3.7倍のスループットを提供します。
  • リファレンス – 詳細な結果は、RubinのMLPerfパフォーマンスに関するNVIDIAのブログ投稿に公開されています。

これらの初期数値は、Rubinのアーキテクチャアップグレードが、テキストのみおよびマルチモーダルワークロードの両方で、実世界の推論速度向上に変換されることを確認しています。


ロードマップと将来の最適化

vLLMコミュニティは、Rubinの機能をさらに活用するためのいくつかの次のステップを計画しています:

  • FlashInferのsm107 MegaMoEカーネルを統合。
  • すべてのMoEレイヤーで局所性ドメインを完全に有効化。
  • PDLとLamport Syncを使用したカーネルのオーバーラップによるレイテンシの隠蔽。
  • レイテンシ重視のサービング用のメガカーネルを開発。
  • Kimi K3用のKDA/MLAカーネルと、DeepSeek-V4.1-Flash用のRubin固有CSA/HCAカーネルを最適化。
  • Rubin固有のMSAデコードカーネルと、FlashInferを介したCFT counted-write MoE all-to-allカーネルを完了。

NVIDIA、Inferact、Red Hat、およびより広いvLLMコミュニティ間の継続的なコラボレーションが、これらの強化を推進します。


はじめに

  1. Rubin互換のナイトリーイメージをプルします:
    docker pull vllm/vllm-openai:cu134-nightly
    
  2. 適切なバックエンドフラグ(例:--linear-backend flashinfer_cutedsl、--moe-backend flashinfer_cutedsl)を指定してvLLMを起動します。
  3. 完全なSM使用率が必要な場合は、cudaDevSmResourceGroupBackfill=1を設定して局所性ドメインを有効にします。

RubinサポートのリポジトリのPR参照には、#55953、#53443、#54640、#56545、#59288が含まれます。


謝辞

このリリースは、NVIDIA、Inferact、Red Hat、およびvLLMコミュニティの共同作業を反映しています。早期のハードウェアアクセスを提供し、Rubin固有のカーネルチューニングに貢献し、毎日のDockerビルドを維持してくれたエンジニアに特に感謝します。


付録:カーネル設定チートシート

カーネル 有効化フラグ メモ
Dense NVFP4 / MXFP4 GEMM --linear-backend flashinfer_cutedsl(NVFP4)またはflashinfer_cutlass(MXFP4) 一致するチェックポイントのデフォルト
NVFP4 MoE --moe-backend flashinfer_cutedsl
バッチ処理されたエキスパート形式MoE(W4A4) `--enable-expert-parallel --data-parallel-size N --all2all-backend deepep_low_latency nixl_ep`
FP8 BMM(静的パーテンソル) FlashInferを介して自動チューニング
FP8アテンション(TRT-LLM) --kv-cache-dtype fp8 + `--attention-backend FLASHINFER FLASHINFER_MLA`
FP8 MSAプレフィル --attention-config.minimax_m3_msa_decode_backend=cutlass

これらのフラグは、上記のパフォーマンス向上を提供するRubin最適化パスを公開します。

Sources