「GPUが強いほどLLMは速い」── 多くの人がそう思っています。TFLOPSの高いGPUを買えば速くなる、と。
これは半分間違いです。少なくとも、手元で1人で使う場合には。
1トークン作るのに、何をしているか
レッスン1-1で見たとおり、LLMは1トークンずつ生成します。そして1トークン作るために、モデルの重みを全部読む必要があります。
27BのモデルをQ4で持っているなら、16.2GB。1トークンごとに、16.2GBをメモリから読み出している。1秒に20トークン出ているなら、毎秒324GBを読んでいることになります。
ここがボトルネックです。計算そのものは一瞬で終わる。データを持ってくるほうが遅い。だから、生成速度の理論上限はこうなります。
理論上限の速度 = メモリ帯域 ÷ 1トークンあたりの読み出し量ここが要点
演算性能(TFLOPS)は、この式に出てきません。出てくるのはメモリ帯域(GB/s)と、モデルの読み出し量(GB)だけです。
実機の帯域で計算してみる
代表的な3機種のメモリ帯域です。容量と帯域が別の軸であることに注目してください。
| マシン | メモリ帯域 | メモリ容量 |
|---|---|---|
| RTX 5090 | 1,792 GB/s | 32 GB |
| MacBook Pro M5 Max | 614 GB/s | 128 GB |
| DGX Spark | 273 GB/s | 128 GB |
27BのモデルをQ4(16.2GB)で動かすと、理論上限はこうなります。
| マシン | 計算 | 理論上限 |
|---|---|---|
| RTX 5090 | 1792 ÷ 16.2 | 約 110 tok/s |
| M5 Max | 614 ÷ 16.2 | 約 38 tok/s |
| DGX Spark | 273 ÷ 16.2 | 約 17 tok/s |
帯域の比が、そのまま速度の比になっています。公開ベンチマークではRTX 5090がllama.cppで27B級を回すと75〜158 tok/s。理論値の110がちょうど真ん中に収まります。 ざっくりした式のわりに、かなり当たります。
だから、DGX Sparkは「遅い」
身も蓋もないことを書いておきます。DGX SparkはNVIDIAのBlackwellが載った立派なマシンですが、メモリがLPDDR5xなので帯域が273GB/sしかありません。RTX 5090の約6.6分の1です。
両方に載るサイズのモデルなら、RTX 5090が圧勝します。Sparkの価値は速度ではなく、128GBという容量にあります。 「NVIDIAの新しいやつだから速いだろう」と思って買うと、たぶんガッカリします。Sparkは「大きいモデルを動かすための箱」であって、速度を買うマシンではないです。
そして、逆転が起きる
ここからが面白いところです。MoE(レッスン1-6)を思い出してください。
GLM-5.3 Flashは総パラメータ320B、アクティブ18B。1トークンあたりに読むのは、アクティブな18B分だけです。
GLM-5.3 Flash(320B MoE): 18B × 0.6バイト = 10.8 GB/トークン
Qwen3.8 27B(dense) : 27B × 0.6バイト = 16.2 GB/トークン320Bのモデルのほうが、読み出し量が少ない。つまり同じマシンなら、320Bのモデルのほうが27Bより速く出てきます。
初めて計算したときは二度見しました。でも理屈は通っています。メモリは320B分を占有するけれど、1トークンあたりに読むのは18B分だから。
自分で動かして確かめる
式を眺めるより、数字を動かすほうが早いです。モデルを切り替えて、バーの長さがどう入れ替わるかを見てください。 特に「Qwen3.8 Flash-Next(125B / アクティブ12B)」と「Qwen3.8 27B」の比較が分かりやすいはずです。
Interactive
速度シミュレータ
生成速度 = メモリ帯域 ÷ 1トークンあたりの読み出し量。演算性能は式に出てきません。
27B × 0.6 バイト / 常駐に要するメモリ 18.4 GB(総パラメータ 27B 分)
このモデルを、マシン別に
同じマシンの上で、モデル別に
「載らない」の判定は、コンテキスト8Kのときの常駐メモリとマシンの実効容量(ユニファイドメモリは約75%)の比較です。 載らないマシンでもバーを出しているのは、速度と容量が別の軸であることを見てもらうためです。 実効目安の70%という係数は経験則で、実行環境やモデルによって上下します。ここの数字は理論値であり、実測値ではありません。
触っていると、たぶんこのあたりに気づきます。
- 量子化を軽くすると、速度も上がる。読み出し量が減るからです。メモリが浮くだけではない。
- DGX Sparkを2台にしても、速度は1台と同じ。増えるのは容量だけで、帯域は足し算になりません(レッスン2-6)。
- 載らないマシンにも、バーは出る。速度と容量は別の軸だからです。帯域が速くても、容量がなければそもそも動きません。
注意
ここで出しているのはすべて理論値です。実際にはMoEのルーティング処理、メモリアクセスの効率、 実行環境の実装差で理論値より落ちます。だいたい理論値の60〜80%に収まることが多い、という程度に見てください。 実測との答え合わせは別途やります。
まとめ
- 生成速度の上限は メモリ帯域 ÷ 1トークンあたりの読み出し量。演算性能は出てこない。
- だから容量の大きいマシンが速いとは限らない。SparkとRTX 5090はそもそも売っているものが違う。
- MoEは読み出し量だけが小さいので、巨大モデルがdenseの中型モデルより速くなる逆転が起きる。
- 「とにかく容量」と言われるのは、容量さえ用意できれば巨大モデルが実用速度で動くから。
