NVIDIA AIPerf公開:大規模LLM推論ベンチマークツール

基本情報
| 項目 | 内容 |
|---|---|
| 公開元 | NVIDIA Developer |
| 公開日 | 2026-09-19 |
| 出典の種類 | 公開元の一次情報(NVIDIA公式開発者ブログからの一次情報) |
収集・肉付けの時点で当サイトのコードが確定させた値です。日付はJST。
概要
NVIDIA Developerは、大規模なLLM推論のベンチマーク測定を目的としたツール「NVIDIA AIPerf」を発表した。単一プロセスの制限やPythonのGILによるボトルネックを回避するマルチプロセスアーキテクチャを採用し、実運用に近いワークロードでの性能測定を可能にする。
主張と根拠
NVIDIA AIPerfは、従来のGenAI-Perfを全面的に書き直した後継ツールであり、高並行環境下でのクライアント側の性能低下を防ぐ設計になっている。発表者の解説では、ワーカープロセスが負荷を生成し、別のレコードプロセッササービスが結果を処理、ZMQで調整するマルチプロセスシステムを採用することで、サーバーの正確なベンチマーク測定を実現しているとされる。
対応する機能やデータセットとしては、以下が挙げられている。
- 15種類以上のエンドポイントタイプ(チャット、レスポンス、NIMランキング、画像生成など)
- パブリックデータセット(ShareGPTなど)およびトレースリプレイ形式(Mooncake、Baseten、WEKA AgentXなど)
- トラフィック特性に合わせた負荷制御(定常、ポアソン、ガンマ分布などの到着パターンと、バースト性の調整)
測定されるコアメトリクスには、TTFT(Time to First Token)、ITL(Inter-Token Latency)、リクエストレイテンシ、出力トークンスループットが含まれ、それぞれパーセンタイル(p25、p50、p75、p90、p95、p99)の分解能や最小・最大・平均・標準偏差で報告される。また、DCGMやpynvmlが利用可能な環境では、GPUの消費電力、稼働率、メモリ消費量のテレメトリも同時に収集される。
前提条件
資料のチュートリアルおよび検証における条件は以下の通り。
- 対象モデル: Qwen/Qwen3-0.6B
- サーバーソフトウェア: vLLM (
vllm/vllm-openai:latest)、推論パーサとして--reasoning-parser qwen3を有効化 - ハードウェア: 単一GPU環境(
--gpus all) - インストール方法:
uvを用いたインストール(uv tool install aiperfまたは仮想環境でのuv pip install aiperf) - aarch64環境での注意点:
crick依存関係がソースからビルドされるため、Cツールチェーン(Debian/Ubuntuの場合はbuild-essential、RHELの場合はDevelopment Tools)が必要
手元で再現できる範囲
サーバーの起動から、静的ベンチマークおよびポアソン到着パターンを用いたプロファイルの実行手順が公開されている。
サーバーの起動コマンド:
docker pull vllm/vllm-openai:latest
docker run --gpus all -p 8000:8000 -e HF_TOKEN vllm/vllm-openai:latest \
--model Qwen/Qwen3-0.6B \
--reasoning-parser qwen3 \
--host 0.0.0.0 --port 8000
静的ベンチマークの実行コマンド:
aiperf profile \
--model Qwen/Qwen3-0.6B \
--endpoint-type chat \
--streaming \
--url localhost:8000 \
--synthetic-input-tokens-mean 128 \
--synthetic-input-tokens-stddev 0 \
--output-tokens-mean 128 \
--output-tokens-stddev 0 \
--extra-inputs min_tokens:128 \
--extra-inputs ignore_eos:true
動的な負荷パターン(ポアソン分布)での実行コマンド:
aiperf profile \
--model Qwen/Qwen3-0.6B \
--endpoint-type chat \
--streaming \
--url localhost:8000 \
--request-rate 10 \
--arrival-pattern poisson \
--synthetic-input-tokens-mean 512 \
--synthetic-input-tokens-stddev 128 \
--output-tokens-mean 128 \
--output-tokens-stddev 32 \
--random-seed 42 \
--request-count 200
結果はコンソールへの出力に加え、CSVおよびJSON形式で保存される。

