要点

対象:ローカルLLMの速さを比べたい人

  1. 生成の上限は帯域÷重みの大きさ
  2. 5機種の測定では上限の6割弱〜7割
  3. M4 Maxの測定で4ビットの生成は約2.6倍

ローカルLLM(手元の機械で動かすAIモデル)が答えの文字を出す速さは、メモリ帯域(メモリから1秒に読み出せる量)でほぼ決まります。

この記事の目次(8節)
  1. 答えが返るまでの2つの段階
  2. 生成の速さの上限を計算する
  3. プロンプト処理の速さと計算性能
  4. 量子化で変わるのは生成の速さ
  5. GPU・Mac・CPUで速さが違う理由
  6. 速さの数字の見方
  7. つまずきやすいところ
  8. 次に読む回

トークン(AIが文章を区切って扱う単位)を1つ出すたびに、重み(学習で決まった、モデルの中身の数値)を全部メモリから読み出すからです。

速く答えさせたいなら、メモリ帯域の広い機種を選び、量子化(重みの数値を少ないビット数で表すこと)で重みを小さくしてください。長い資料を読ませるなら、GPUの計算性能(1秒にできる計算の回数)も見てください。

この記事は、ローカルAIの講座「1からの道のり」の6回目です。

答えが返るまでの2つの段階

プロンプト処理と生成

ローカルLLMは、まず読ませた文章をまとめて処理し(プロンプト処理)、次に答えを1トークンずつ出します(生成)。速さは1秒に処理できるトークンの数で表します。llama.cpp(ローカルLLMを動かすソフト)では「t/s」と表示されます。111

段階していること速さに大きく効くものソフトの表示
プロンプト処理読ませた文章を、まとめて処理する計算性能llama.cppのpp512・Ollamaのprompt eval rate
生成答えを1トークンずつ出すメモリ帯域llama.cppのtg128・Ollamaのeval rate

pp512は512トークンを読ませたときの速さ、tg128は128トークンを出したときの速さです。Ollamaも、ローカルLLMを動かすソフトです。1115

答え始めるまでの時間は、プロンプト処理と、最初の1トークンの生成にかかる時間の合計です。モデルのファイルをメモリに読み込む時間は、Ollamaでは別に表示されます。215

GPUの中で起きていること

プロンプト処理と生成 01 02 プロンプト処理 生成(答えを出す) 重み(メモリから1回読み出す) 読ませたトークンをまとめて計算 重み 重み 重み 1トークンごとに重みを全部読み出す 計算能力をほぼ使い切る 計算能力を使い切れず、読み出す時間で決まる 決めるもの:計算性能 決めるもの:メモリ帯域 生成の速さの上限 = メモリ帯域 ÷ 1トークンごとに読み出す量(重み+KVキャッシュ) 例: RTX 4090(1,008GB/s)÷ Qwen3-8B・4ビット(Q4_K_M)の重み 約5.0GB 上限の目安 約200トークン/秒 目安
プロンプト処理は重みを1回読み出してまとめて計算し、生成は1トークンごとに重みを全部読み出します

プロンプト処理では、読ませたトークンをまとめて計算するので、GPUの計算能力をほぼ使い切ります。生成では、答えを1トークン出すたびに、重みを全部メモリから読み出します。そのため、計算の速さより、重みを読み出す速さが時間を左右します。13

生成の速さの上限を計算する

帯域を、1トークンごとに読み出す量で割る

1秒に読み出せる量(帯域)を、1トークンごとに読み出す量で割ると、1秒に出せるトークンの数の上限が出ます。Databricks(データ分析の会社)の技術ブログの式を、この形に直しました。2

  • 生成の速さの上限(トークン/秒) = メモリ帯域(GB/s) ÷ 1トークンごとに読み出す量(GB)

読み出す量は、重みとKVキャッシュ(入力の計算結果を保存する領域)の合計です。KVキャッシュは、読ませた文章と出した答えが長いほど大きくなります。短い会話では小さいので、ここでは重みだけで計算しました。2

5機種の測定値と上限

次の表は、GitHubのDiscussions(質問や報告を投稿する場)に寄せられたllama.cppの測定値と、式で出した上限です。モデルはLlama 2 7BのQ4_0(約3.8GB)です。45

機種メモリ帯域上限の目安測った値(tg128)上限に対する割合
GeForce RTX 50901,792GB/s約469トークン/秒290.02トークン/秒約62%
GeForce RTX 40901,008GB/s約264トークン/秒186.21トークン/秒約71%
GeForce RTX 3090936GB/s約245トークン/秒158.16トークン/秒約65%
M4 Max(GPU 40コア)546GB/s約143トークン/秒83.06トークン/秒約58%
M4 Pro(GPU 20コア)273GB/s約71トークン/秒50.74トークン/秒約71%

この5機種の測定では、上限の6割弱〜7割でした。GeForceの行は測った人やバージョンが違うので、機種どうしのおおよその差の目安として見てください。4567

Qwen3-8Bを動かすときの上限の目安

Qwen3-8Bはパラメータ数(重みの数)が82億です。Q4_K_Mで1つの重みを平均4.89ビットとすると、重みは約5.0GBになります。1014

4.89ビットは、llama.cppの説明書にあるLlama 3.1 8Bの値です。Qwen3-8Bの値は出典に無いので、近い大きさのこのモデルの値を使いました。

機種メモリ帯域生成の速さの上限の目安
GeForce RTX 40901,008GB/s約200トークン/秒
M4 Max(GPU 40コア)546GB/s約110トークン/秒
M4 Pro(GPU 20コア)273GB/s約54トークン/秒
Ryzen AI Max+ 395(LPDDR5x-8000・128GB)256GB/s約51トークン/秒
Core i9-13900K(DDR5-5600・2チャネル)89.6GB/s約18トークン/秒

この表の帯域は、各メーカーの公表値です。6789

プロンプト処理の速さと計算性能

重みを1回読み出して使い回す

プロンプト処理では、1回読み出した重みを、読ませた多くのトークンの計算に使い回せます。最初のトークンを出すまでの処理は、たいてい計算性能で速さが決まります。12

RTX 3090と4090の比較

RTX 3090と比べると、RTX 4090は計算性能もプロンプト処理の速さも約2.3倍でした。生成の速さは約1.18倍にしか伸びませんでした。モデルは同じLlama 2 7BのQ4_0です。56

GPU計算性能プロンプト処理(pp512)メモリ帯域生成(tg128)
GeForce RTX 3090142.3TFLOPS5,174.69トークン/秒936GB/s158.16トークン/秒
GeForce RTX 4090330.3TFLOPS11,992.70トークン/秒1,008GB/s186.21トークン/秒
GeForce RTX 5090419TFLOPS14,073.41トークン/秒1,792GB/s290.02トークン/秒

TFLOPSは、1秒に何兆回計算できるかです。NVIDIAの資料にある、Tensorコア(AIの計算用の回路)の16ビットの値を使いました。6

量子化で変わるのは生成の速さ

次の表は、M4 Max(GPU 40コア)で、Llama 2 7Bの量子化の形式だけを変えた測定値です。4

形式プロンプト処理(pp512)生成(tg128)
F16(16ビット)922.83トークン/秒31.64トークン/秒
Q8_0(8ビット)891.94トークン/秒54.05トークン/秒
Q4_0(4ビット)885.68トークン/秒83.06トークン/秒

この測定では、16ビットと比べて4ビットの生成は約2.6倍になり、プロンプト処理の速さはほとんど変わりませんでした。重みが小さいほど、1トークンごとに読み出す量が減るためです。4

形式ごとの重みの大きさは、ローカルLLMに必要なメモリを計算する記事の表にあります。

GPU・Mac・CPUで速さが違う理由

帯域と容量は別に見る

GPUは帯域が広い代わりに、モデルを載せられるのはVRAM(GPU専用のメモリ)の容量までで、RTX 4090なら24GBです。6

M4 Maxは最大128GBのメモリを積めます。AMDの開発者向けの機種Ryzen AI Haloは、Ryzen AI Max+ 395に128GBのメモリを組み合わせています。78

どちらも帯域はRTX 4090より狭いので、大きなモデルを動かせる代わりに、同じモデルの生成はRTX 4090より遅くなります。

機種を選ぶときは、まず動かしたいモデルが容量に載るかを見て、載る機種の中から帯域の広いものを選ぶのがよいと考えています。

MoEは1トークンで使う部分だけを読み出す

MoE(混合エキスパート)は、トークンごとに一部のエキスパート(小さな専門の部分)だけを使うモデルです。

合計のパラメータ数が同じモデルと比べると、MoEは速く動きます。ただし、全部のエキスパートをメモリに置くので、多くのVRAMが要ります。12

次の表は、Q4_K_Mで量子化し、Ryzen AI Max+ 395(256GB/s)で動かすとして計算した値です。8101314

モデルパラメータ数(合計)1トークンで使うパラメータ数メモリに要る量(計算値)1トークンごとに読み出す量(計算値)生成の速さの上限の目安
Qwen3-8B8.2B8.2B約5.0GB約5.0GB約51トークン/秒
Qwen3-30B-A3B(MoE)30.5B3.3B約18.7GB約2.0GB約130トークン/秒

速さの数字の見方

比べる前に確かめる4つの条件

速さの数字を比べるときは、次の4つが同じ条件かどうかを確かめてください。

  • プロンプト処理と生成の、どちらの速さか
  • モデルと量子化の形式(Q4_0かQ4_K_Mか、など)
  • 読ませた長さ(llama-bench〔llama.cppの速さを測るツール〕に -d 4096 を付けると、4,096トークンを先に読ませた状態で測る)11
  • 動かすソフトとそのバージョン

機種ごとの速さをサイトで比べる方法は、llmspeedでローカルLLMの速度を見る記事で紹介しました。

Ollamaで自分のパソコンの速さを見る

Ollamaでは、ollama run <モデル名> --verbose で起動して質問を送ると、答えの後に2つの速さが表示されます。「prompt eval rate」がプロンプト処理、「eval rate」が生成の速さです。1516

つまずきやすいところ

長い資料ほど、答え始めるまで待つ

4,000トークンの資料を読ませるとして、Llama 2 7B(Q4_0)のpp512の速さで割ると、次の時間がかかります(目安)。45

機種プロンプト処理(pp512)4,000トークンの処理にかかる時間
GeForce RTX 409011,992.70トークン/秒少なくとも約0.33秒
M4 Max(GPU 40コア)885.68トークン/秒少なくとも約4.5秒

長い文脈ではppの速さが下がるので、実際はこれより長くかかります。11

次に読む回

前の回は「量子化とは — 小さくすると何が落ちるのか、GGUFの記号(Q4_K_Mなど)の読み方」で、量子化の形式によって答えの質がどう変わるかを扱っています。用語はローカルLLMの「8B」「Q4_K」「VRAM」の記事にまとめました。

次の回は「手持ちのパソコンで動くか確かめる — Windows・Mac・LinuxでGPUとメモリを調べる」です。

出典

  1. Mastering LLM Techniques - Inference Optimization(NVIDIA Technical Blog・2023年11月17日)(参照 2026-11-01)
  2. LLM Inference Performance Engineering - Best Practices(Databricks Blog・2023年10月12日)(参照 2026-11-01)
  3. Transformer Inference Arithmetic(kipply's blog・2022年3月30日)(参照 2026-11-01)
  4. Performance of llama.cpp on Apple Silicon M-series(llama.cpp の GitHub Discussions(参照 2026-11-01)
  5. Performance of llama.cpp on Nvidia CUDA(llama.cpp の GitHub Discussions(参照 2026-11-01)
  6. NVIDIA RTX Blackwell GPU Architecture(NVIDIA のホワイトペーパー・Table 3 の GeForce RTX 5090・4090・3090 の仕様)(参照 2026-11-01)
  7. Apple introduces M4 Pro and M4 Max(Apple Newsroom・2024年10月30日)(参照 2026-11-01)
  8. AMD Ryzen AI Halo Developer Platform with Ryzen AI Max+ 395 processor(AMD の製品ページの仕様)(参照 2026-11-01)
  9. Intel Core i9-13900K Processor の仕様(Intel の製品仕様のページ)(参照 2026-11-01)
  10. llama.cpp tools/quantize README(Quantization の表)(参照 2026-11-01)
  11. llama.cpp tools/llama-bench README(参照 2026-11-01)
  12. Mixture of Experts Explained(Hugging Face Blog・2023年12月11日)(参照 2026-11-01)
  13. Qwen/Qwen3-30B-A3B のモデルカード(Hugging Face)(参照 2026-11-01)
  14. Qwen/Qwen3-8B のモデルカード(Hugging Face)(参照 2026-11-01)
  15. ollama/ollama の api/types.go(処理時間の表示)(参照 2026-11-01)
  16. ollama/ollama の cmd/cmd.go(run の --verbose の説明)(参照 2026-11-01)