見出し画像

【LM Studio】RTX5070Ti を2枚挿し。PCIe x4でも動くのか検証してみた


きっかけ:ローカルPCでより大きなモデルを動かしたい

ローカルPCにVRAMを増やして、もう少し大きなLLMモデルを使えるようにしたい。けど、RTX5090には手が出ない。

ネットで調べると「グラボの2枚挿しは、2枚目がPCIe x8以上出ていないと性能が大きく劣化する」という話が多く出てくる。ところが自分のマザーボードは2枚目のスロットがx4までしか出ない。背面コネクタ(リアコネクタ)仕様の白いマザーボードが気に入って選んだものだったが、調べた範囲では背面コネクタ・白で2枚目がx8以上出せる製品が見当たらず、「気に入っているこの構成のまま使うか、マザーボードごと買い替えるか」でかなり悩んだ。

そもそも2枚目を挿す一番の目的は速度アップそのものというより、VRAMを増やして1枚では収まらない大きなモデルを動かせるようにすることだった。とはいえ、x4でどこまで実用になるのか裏付けがないまま高額なマザーボード交換に踏み切るのも気が引ける。まずは今の構成のまま、実際どのくらい困るのか検証してみることにした。

検証環境とLM StudioのGPU分割方式

挿せるPCIeスロットの都合で、1枚目は PCIe5.0 x16接続、2枚目は PCIe5.0 x4接続 という非対称構成になっている。

LM Studioには2025年に Tensor Parallel(テンソル並列)という新しいGPU分割方式が追加されている。従来の layer split(層ごとにGPUへ割り振る方式)よりGPU間の通信が頻繁に発生するため、「PCIe帯域が細いGPUがボトルネックになるなら、この機能が一番影響を受けるはずだ」と当たりをつけて検証することにした。

検証方法

  • GPU構成: 1枚のみ(x16側)/1枚のみ(x4側)/2枚+Evenly(layer split)/2枚+Priority order(layer split)/2枚+Tensor Parallel の5パターン

  • モデル: 性格の異なる3モデルを用意した

  • コーディング・ビジネスメール・長文あらすじの3種類のプロンプトで、各条件5回試行(初回はウォームアップとして除外)

  • Temperature=0固定、Context Length=8192固定など、GPU構成以外の条件は全て揃えた

  • LM Studioのモデルロード・GPU切り替えは手動、計測はローカルAPI経由で自動化するスクリプトを自作した

結果1:小型モデル(dense・14B)は素直に2枚化が効く

1枚のGPUだけでも動くサイズのモデルで比較すると:

  • 1枚GPU同士(x16 vs x4)の差はわずか2〜3%。単体GPUで動かす限り、PCIeの帯域はほぼ関係ない(推論中はGPU間通信がほぼ発生しないため)

  • 2枚のlayer split(Evenly)は、なんと1枚(x16)よりわずかに遅い

  • 2枚のTensor Parallelは1枚(x16)より約23%速い。これは体感でもはっきり分かる差

「2枚挿すなら、layer splitではなくTensor Parallelを選ぶべき」——ここまでは想定通りの結果だった。

結果2:大型モデル(MoE・30B)では逆転する

1枚には収まらない大型モデルで比較すると、様相が変わった。

Tensor Parallelの方が、layer splitより約13%遅い。 モデルAとは真逆の結果だ。

このモデルはMoE(Mixture of Experts)構成で、30Bのパラメータのうち実際に計算に使われるのは約3B分だけという設計になっている。Tensor Parallelは行列演算を2GPUで分担する代わりにGPU間の通信が増えるが、MoEのExpertルーティング処理がその通信をさらに増やし、PCIe5.0 x4側のGPUで律速されているのではないかと考えている。

結果3:もう一つのdense大型モデルで再現性を確認

「dense/MoEの違いが効いているのか、それともモデルAとBの個別事情か」を切り分けるため、同じく1枚に収まらないdenseモデル(gemma-4-31b-qat, 31B)でも追加検証した。

Tensor Parallelの方が約41%速い。 サイズが14B→31Bに変わっても、denseモデルなら傾向は同じだった。

まとめ:GPU分割方式の最適解はモデルのアーキテクチャで決まる

3モデルの結果を並べると、denseモデルとMoEモデルで綺麗に傾向が分かれた。

  • denseモデルなら、2枚挿しでTensor Parallelを選ぶと明確に速くなる(サイズが変わっても再現)

  • MoEモデルは逆にTensor Parallelが裏目に出て、従来のlayer split(Evenly/Priority order)の方が速い

  • そもそも「1枚に収まらない大型モデルが動くようになる」こと自体が2枚化の一番の価値でもある。今回の30B級2モデルはどちらも16GB単体には収まらず、共有メモリにあふれて実用速度が出なかった

  • 単体GPUとして見れば、x4でもx16とほぼ変わらない(結果1の通り差はわずか2〜3%)。2枚目を挿す本来の目的だった「VRAM増加による大型モデルの実行」という観点では、x4スロットでも十分に恩恵を得られることが確認できた

「2枚挿せば速くなる」と単純には言えず、モデルの種類によって最適なGPU分割方式が変わるというのが、今回一番の発見だった。GPU Controlsで層分割かテンソル並列かを選べるようになったからこそ見えてきた話でもある。

振り返り

x4スロットのボトルネックを検証しようとして始めた企画だったが、蓋を開けてみると「PCIeレーン幅そのもの」よりも「GPU分割方式とモデルアーキテクチャの組み合わせ」の方がずっと支配的だった。

そして個人的に一番の収穫は、冒頭で悩んでいたマザーボード問題に決着がついたことだ。「2枚目がx8未満だと性能が劣化する」という情報を見て、気に入っている背面コネクタ・白のマザーボードを手放してまで買い替えるべきか迷っていたが、単体GPUとしての速度はx4でもx16とほぼ変わらず、2枚目を挿す本来の目的だったVRAM増加(=より大きなモデルを動かせること)は今の構成で十分に達成できていた。気に入っているマザーボードを買い替えずに済む、という結論が出せたのが一番うれしい結果だった。

これからマルチGPU構成を組む人には、「とりあえずTensor Parallelにしておけば速い」ではなく、使うモデルがdenseかMoEかを見て分割方式を選ぶことをおすすめしたい。そして「2枚目がx8未満だから」というだけで諦める前に、実際の用途(単体GPUで動かすサイズのモデルを使うのか、VRAM不足を補うために大型モデルを動かしたいのか)に照らして判断してみてほしい。

検証機材

今回、検証に使用した機材は以下となります。
グラボは、電源コネクタがバックプレート下に配置されていて、ケーブルの露出が極めて少なく、背面コネクタマザーボードとの相性がばっちりです。

Amazonのアソシエイトとして、[takkunblue]は適格販売により収入を得ています。


いいなと思ったら応援しよう!

TakkunBlue よろしければ応援お願いします!