WindowsでローカルLLMを複数GPUで動かす方法|VRAM・runtimeの選び方

公開日
2026-09-28
更新日
2026-09-28
情報確認日
2026-09-28
編集・運営
Local AI Compass

同じPCにGPUを2枚挿しても、WindowsがVRAMを一枚の大きな領域にまとめるわけではありません。実際に1つのモデルを分けて載せるかはruntimeごとに異なり、Ollamaは空きVRAMに応じて自動配置、llama.cppは分割方式やdeviceを選べます。まず使用中のruntimeが両方のGPUを認識するか確認し、同じモデル・contextで速度と各GPUのメモリ使用を比べてください。

導入前に確認すること

  • Windowsのバージョン、メモリ容量、GPU/VRAM、空き容量を確認する
  • 最初は軽量モデル、短い質問、少ない同時作業から始める
  • 公式サイトの対応OS、利用規約、モデルのライセンスを確認する

結論:VRAMの容量を足しただけでは動作は決まらない

1台のPCに複数GPUを取り付けても、VRAMがWindows共通の一枚のメモリになるわけではありません。推論runtimeがモデルの重みや処理をGPUごとに割り振ることで、1つのモデルが単体GPUより大きなVRAM範囲を使える場合があります。複数GPUを認識しないruntimeでは、2枚挿しても1枚分しか使われません。

「モデルが載るか」と「速くなるか」は別の判断です。モデルの重みだけでなく、contextに応じたKV cache、runtimeの作業領域、起動中の他アプリがVRAMを使います。2枚の合計容量を、そのままモデルに使える容量と見積もらず、load時に空いている領域とruntimeの割り当てを確認してください。

複数GPUで実現したい処理を分ける
やりたいこと必要な仕組み判断の目安
1つのモデルを2枚のGPUへ分けるruntimeが同一PC内のmulti-GPU分割に対応model、backend、GPU構成を同じruntimeで確認する
別々のモデルを各GPUで同時に動かすアプリごとのdevice選択や複数runtime processVRAM、RAM、電源、冷却を各processごとに確認する
2台のPCへ別々の依頼を送るnetwork routingやscheduler同一PCのGPU分割とは別の構成として調べる

Ollamaとllama.cppはGPUの割り当て方が違う

複数GPUへの割り当てはWindowsの共通設定ではなく、推論runtimeの機能です。たとえば現在のOllama FAQは、必要なVRAMが一枚のGPUに収まる場合はそのGPUに載せ、どの一枚にも収まらない場合は利用可能なGPUへ分散すると説明しています。llama.cppはdeviceと分割方式を持ち、同じPCのGPUを明示して使えます。これらの挙動を他のGUIアプリやbackendにも当てはめないでください。

ローカルLLM runtimeごとの複数GPUの確認方法
runtimeの例公式に説明されていること動作確認
Ollama単体GPUに収まる場合はそのGPUを使い、収まらない場合は利用可能な複数GPUへ分散するollama psでCPU/GPUの配置を確認し、GPUごとの使用量はカード別の監視表示で確かめる
llama.cpp--list-devicesで見えるdeviceを確認し、--deviceや--split-modeなどを使う実際に使うWindows binaryとbackendがmulti-GPUに対応するか確認してから起動ログを見る
LM StudioなどのGUIアプリmodelごとのGPU offload設定があっても、物理GPUへの分割条件は別途確認が必要現行版の説明と、load中に各GPUのmemoryが変化するかを照合する

llama.cppの公式multi-GPU guideではlayer方式が既定です。tensor方式は実験的とされ、対応architectureやbackendに制約があり、GPU間の接続が遅いと単一GPUより遅くなる場合があります。tensorを選べば常に速い、という意味ではありません。LM Studioの公式docsはmodel単位のGPU offloadなどを設定できると説明していますが、それだけで特定版の複数GPU分割まで確認できるわけではありません。

2枚目を買う前にPC側の条件を確認する

2枚目のGPUは、カードそのものだけでなく、マザーボードの空きslotとlane、電源容量と補助電源、ケース内の寸法、排熱、driver、必要なbackendをまとめて確認します。片方のGPUが画面出力や他のアプリにも使われていれば、推論開始時の空きVRAMも変わります。

  • Windowsのデバイス一覧でGPUの型番とdriverを確認し、推論アプリが対応するbackendを持つか調べる。
  • マザーボードの説明書で、2枚を同時に挿した時のslotとPCIe laneの割り当てを調べる。
  • 電源の定格、必要な補助電源端子、ケースのカード長とslot幅、吸排気の余裕を確認する。
  • 異なるGPUを組み合わせる場合は、使用するruntime/backendが両方を同時に認識するか先に確認する。
  • モデルが現在の1枚に収まるなら、まず単一GPUの基準を測り、2枚目が解決する具体的な問題を決める。

購入後にカードが認識されることと、想定どおりの分割でモデルが動くことは別です。先にruntime側でdeviceが見えるかを確かめてから、model loadと負荷の確認へ進みます。

単一GPUと複数GPUを同じ条件で比べる

比較する時はmodel、quantization、context長、prompt、出力token数をそろえます。modelをloadできたか、生成速度、peak VRAM、system RAM、回答が完了したかを別々に記録してください。複数GPUでは起動時間やGPU間通信も加わるため、単一GPUの結果より遅くても、容量が必要なmodelを載せる目的は達成できる場合があります。

  1. GPUごとの型番、driver、runtime/binaryの版、backendを記録する。
  2. 一枚のGPUで動く同じmodelと短いpromptを使い、単一GPUのbaselineを測る。
  3. multi-GPUのdevice認識と実際の割り当てを確認し、memory使用量をGPUごとに記録する。
  4. 同じmodel、quantization、context、promptで複数回測り、初回loadと定常生成を分ける。
  5. 起動可否、model容量、生成速度、安定性のどれが改善したかを個別に判定する。

llama.cppの分割方式やGPU間転送は計測結果に影響します。CUDAのpeer-to-peer設定など低レベルのoptionを、不安定時の回避策として盲目的に有効化しないでください。使用するbackendとmotherboard/BIOSの公式条件を照合し、小さな同一テストで確認します。

GPUを認識しない・遅い時の切り分け

複数GPUのローカルLLMで起きる症状と確認点
症状確認する順番
2枚目がruntimeに出ないWindowsのdevice状態、driver、binary/backendの対応、--list-devicesなどruntime固有の一覧
片方のGPUしか使われないmodelが一枚に収まっていないか、runtimeが自動分散する仕様か、選択deviceやGPU visibility設定
load中にout-of-memoryになるmodelだけでなくcontext/KV cache、他processのVRAM、runtimeの作業領域
2枚にしたら遅くなったGPU間接続、分割方式、単一GPU時にmodelがすでに収まっていなかったか
一枚を画面用にも使っている表示や他アプリのVRAM使用を含めたload時の空きmemory

GPU使用率が一時的に上がったことだけでは、モデル全体が複数GPUに適切に分散したとは判断できません。runtimeのload表示と各GPUのmemory、同一promptの生成結果を合わせて見ます。

よくある質問

2枚のGPUのVRAMは足し算できますか?

Windowsが2枚を一つの共通VRAMにするわけではありません。runtimeがモデルを分割して両方へ割り当てる場合は一枚より多い領域を使えますが、空き容量、context、backend、model対応に左右されます。

GPUを2枚にするとローカルLLMは速くなりますか?

必ず速くなるわけではありません。GPU間の通信と分割方式で変わるため、同じmodel、context、promptで単一GPUと複数GPUを測ってください。model容量を増やせることと生成速度の改善は別に評価します。

メーカーやVRAM容量が違うGPUでも使えますか?

runtime、backend、modelの組み合わせによります。両方のGPUが使用中のbinaryから見えるか、memory配分を調整できるかを確認し、実際の割り当てをloadログとGPUごとのmemory表示で確かめます。

LM StudioなどGUIアプリなら自動で複数GPUを使いますか?

LM Studioの公式docsにはmodelごとのGPU offload設定がありますが、それだけでは特定版が物理GPU間でmodelを分割するかは分かりません。使用中の版の説明を確認し、load後に各GPUのmemory使用を見てください。

別のPCのGPUも同じモデルに足せますか?

同じPC内のmulti-GPU設定とは別の仕組みです。NVIDIA PAIRは複数PCへの独立したrequestの振り分けを扱い、一つのmodelをPC間で分割する説明ではありません。

次に読むおすすめルート

LM Studio・Ollamaの症状別トラブルを解決したい人

起動、モデルロード、Prompt Processing、generation、API接続、GPU確認をツール別に分けて読みます。

  1. 症状別トラブル解決ハブ
  2. LM StudioのPrompt Processingが遅い
  3. LM Studioの回答が途中で止まる
  4. LM Studioが起動しない
  5. LM StudioのGPUオフロード
  6. Ollamaが遅い
  7. Ollamaの回答が途中で止まる
  8. Ollamaが起動しない・localhost:11434につながらない
  9. WSL2からWindowsのOllamaにつながらない
  10. OllamaでGPUが使われない
  11. 速度・RAM・VRAMを測る方法
  12. コンテキスト長とメモリ負荷
  13. モデルサイズと量子化
  14. メモリ8GB・16GB・32GBの目安
  15. ローカルAI APIの接続確認
  16. PC診断ページ

あなたはどのタイプ?

関連チェック先

  • Ollama FAQ: 複数GPUへのモデル配置 - 単体GPUに収まるモデルを一つのGPUへ配置する条件と、複数GPUへ分散する条件、ollama psでの確認方法を確認できます。
  • Ollama GPU support - OllamaのGPU backendとハードウェア対応条件を確認できます。
  • LM Studio per-model defaults - modelごとのdefault load settingsとGPU offload設定を確認できます。複数deviceへの分割条件は使用中の版の資料で別に照合します。
  • llama.cpp multi-GPU guide - 分割方式、device選択、VRAM、interconnect、architectureごとの制約を確認できます。
  • llama.cpp Windows build guide - Windows buildとGPU backendの現在の要件を確認できます。

関連ツール

    比較表を見る / 最初に検討しやすいツールを確認する