応答速度と加速
最終更新
CMP 170HXを2枚にすると速度も2倍になる?
2枚でモデルを分割できますが、接続経路によって性能は変わります。
マルチGPU1モデル並列化は、1つのモデルの重みと計算を複数GPUに分け、リクエスト処理中の中間結果をカード間で渡す方式です。モデルとリクエストを入力すると、分割されたGPUが協力して次のトークン2を計算し、回答を返します。
2枚に分けることで1枚に収まらないモデルを実行でき、単一リクエストが速くなる場合もあります。ただしカード間通信があるため、速度が自動的に2倍になるわけではありません。まず2枚の接続経路を確認し、単一利用者の応答速度と複数リクエストの合計処理量を分けて測定します。
GPU間でモデルを分割すると通信も必要です

PCIeトポロジーでGPU間の経路を確認します
Linuxのnvidia-smi topo -mはGPUとCPU5の接続を行列で示します。GPU番号とカード間のPCIe経路を確認し、nvidia-smi -q -d PCIで各カードの現在のリンク状態を読み取ってください。同じサーバーの2枚でも、CPUやPCIeスイッチの配置によってデータ経路が異なります。
CMP 170HXではPCIe Gen2が試験され、確認された4枚すべてでヒューズによりGen3が使えませんでした。x16コネクターがあっても、実際のリンク幅や速度はカード、ライザー、スロット、ホスト設定によって異なります。出力を保存し、想定したスロット経路と違う場合はランタイム6より先にスロット配置とBIOS設定を確認してください。
nvidia-smi topo -mnvidia-smi -q -d PCI
Qwen TP2の速度向上は特定条件の比較です
1枚TP1と2枚TP2の出力速度と同時処理量を比較します。単一リクエストのデコード7は1つの回答がどれだけ速く続くか、合計処理量は複数リクエストを同じ時間にどれだけ処理するかを示します。
| 構成 | 単一リクエストのデコード | 同時16ストリームの合計 |
|---|---|---|
| TP1 · 1 GPU | 53.97 tok/s | 545.78 tok/s |
| TP2 · 2 GPU | 71.96 / 71.88 tok/s | 529.70 / 534.74 tok/s |
PixelMLは2026-10-01の試験でQwen3.8-27B W4A16チェックポイント8、vLLM、64GB CMP 170HX 2枚、PCIe Gen2 x16、カードごと180W、P2P無効の条件でTP1とTP2を比較しました。
単一リクエストは短いgreedy 256トークンのデコード、同時負荷は16ストリームです。TP2の2つの値は同じPLXスイッチ/異なるPLXスイッチの順です。原ノートブックと実行レシート
単一応答の速度と同時処理量は別々に確認します。1件の回答を早く終えることが目標なら初回トークンまでの待ち時間と出力tok/sを記録し、複数利用者向けのサーバーなら同時リクエスト数と合計tok/sを測定してください。この試験では同じPLXスイッチ内か別のスイッチかによる差は小さかったものの、実機のトポロジーを確認し、同じ条件で比較してください。
P2Pは基本導入とは異なる高度な構成です
P2Pを使わない256MiB転送では、ホストメモリのステージングが6.21~6.30GB/sでした。別の高度な実験では、BAR1静的マッピングパッチ4つ、手動配置レイアウト、kexecによる再起動経路を使ってP2Pを構成しました。12組すべてがバイト単位の検証に合格し、転送速度は5.79GB/sでした。
Qwen TP2ではP2Pを使うとデコードが11%速くなり、MTP9 k=3では14%速くなりました。一方、Broadwell PLX経路のGLM TP4では、単一ユーザーのデコードが20~26%、8ユーザーの合計処理が38~48%遅くなりました。
Morrowmakeが測定したEPYCルートポート構成では、P2Pにより11%高速化しました。CPU・スイッチ・P2P経路によって結果が異なるため、ひとつの数値として一般化できません。
この構成はBAR1アドレス空間を静的に配置し、kexecで再起動してカーネルにそのレイアウトを適用します。基本導入よりもドライバー、ボード、PCIe配置の条件を揃える必要があります。まず通常のTP2動作とトポロジーを確認し、専門的な実験として進める場合だけPixelMLのBAR1 P2Pノートブックに記録された配置と12組すべてのGPU間データ一致検証手順に従ってください。
容量や処理量が課題の場合に2枚目を検討します
1枚にモデルが収まらない場合、TPやPPで必要な容量を分散できる可能性があります。合計処理量が目標なら、1つのモデルを分割する構成とGPUごとにモデルを複製してリクエストを分散する構成を、ランタイムの対応状況に応じて比較してください。前者では初回トークンや完了時間、後者では同時処理量が重要になる場合があります。
1枚でモデルが動き、必要な応答速度も得られるなら、2枚目を加える理由は小さくなります。同じ負荷で基準を作り、トポロジー、モデル分割オプション、リクエスト数を一つずつ変えてください。容量不足や同時処理目標の未達が確認できたとき、ボードのPCIe経路も含めて2枚構成を比較すれば、追加カードが解決する課題を特定できます。

用語の注釈
GPU — 多くの計算を並列に処理するプロセッサーです。AIモデルの実行ではモデル計算を担います。
本文に戻るトークン — モデルが入力や出力を分けて処理する単位です。
本文に戻るテンソル並列 — モデルの層内の行列や演算を複数の装置に分割して計算する方式です。部分結果をまとめるために装置間通信が必要です。
本文に戻るパイプライン並列 — モデルの層を装置ごとの段階に分け、各段階の出力活性値を次の装置へ渡して処理する並列化方式です。
本文に戻るCPU — OSや一般的なプログラム命令を実行する中央処理装置です。AIでは前処理やデータ転送などの汎用処理も担います。
本文に戻るランタイム — プログラムの実行時に必要な機能を提供するソフトウェア環境です。ローカルAIではモデル実行エンジンを指すこともあります。
本文に戻るトークンのデコード — 入力とそれまでの回答をもとに、次の出力トークンを順に生成する段階です。
本文に戻るチェックポイント — 学習済みモデルの重みなどを保存したファイルです。同じモデル系列でも、版や用途によって異なるチェックポイントを使うことがあります。
本文に戻るMTP — 複数の将来トークンを一度に予測する学習目標、またはそれを行うモデル構成です。投機的デコーディングでは、その予測を候補トークンとして提案できます。
本文に戻る
よくある質問
- この記事で最初に確認すべきことは何ですか?
- マルチGPUモデル並列化は、1つのモデルの重みと計算を複数GPUに分け、リクエスト処理中の中間結果をカード間で渡す方式です。モデルとリクエストを入力すると、分割されたGPUが協力して次のトークンを計算し、回答を返します。
- 必要なメモリはどのくらいですか?
- CMP 170HXのメモリ解放はカードで使えるメモリを増やす作業です。GPU間peer-to-peer(P2P)を有効にするものではありません。P2Pが使えない場合、通信はホストメモリを経由することがあります。またCMP 170HXには使用可能なNVLinkブリッジ回路がありません。
