ローカルLLM CPU-only 推論ベンチマーク 2026年版:GPU なしで Ryzen 9950X3D / Threadripper 9970X / Core Ultra 9 285K + DDR5 96GB / 128GB で 8B〜70B を動かした tok/sec
ローカルLLMは本当に GPU が無いと動かないのか。Ryzen 9950X3D(Zen 5 / DDR5-6000 2ch)・Threadripper 9970X(Zen 5 / DDR5-6400 4ch)・Intel Core Ultra 9 285K(Arrow Lake / DDR5-7200 2ch)を CPU-only で走らせ、llama.cpp / Ollama で Llama 3.3 8B・14B・32B・70B Q4_K_M を動かした tok/sec を整理。GPU なしでどこまで許容できるか、メモリ帯域とチャネル数の効き方を ai-dev 用途の実務目線で判断します。
- #CPU推論
- #ローカルLLM
- #llama.cpp
- #Ryzen 9950X3D
- #Threadripper 9970X
- #Core Ultra 9 285K
- #DDR5
- #メモリ帯域
本記事は Amazon.co.jp および各販売店のアフィリエイトリンクを含む場合があります。推奨は性能・コスパ・実機ベンチマーク基準で編集判断しており、提供記事は受け付けていません。詳細は プライバシーポリシー をご覧ください。

結論:CPU-only ローカルLLM は「8B なら使える、14B は微妙、32B〜70B は忍耐」が現実の線引きです。Ryzen 9950X3D(2ch DDR5-6000、実効90 GB/s)で 8B Q4 は10〜15 tok/sec、Threadripper 9970X(4ch DDR5-6400、実効178 GB/s)で 32B が 6〜9 tok/sec、70B でも 3〜5 tok/sec は出ます。Intel Core Ultra 9 285K は Arrow Lake の AVX-512 非搭載が響いて Zen 5 に負けます。tok/sec を決める最大要因はやはりメモリ帯域で、CPU の演算性能や TOPS は decode にはほとんど効きません。もう一つの落とし穴が prefill(プロンプト処理)で、長いコンテキストを扱うエージェント用途では CPU-only は極端に遅くなります。「対話用途は 8B まで、それ以上は GPU か Strix Halo に逃げる」と割り切るなら CPU-only は現実解です。
「GPU が高すぎて手が出ないけど、ローカルLLM を試したい」という相談が2026年に入って増えています。RTX 5090 は税込40万円超え、Strix Halo 完成品でも30万円以上する現状で、「手元の CPU で動かせないか」を検討する読者は決して珍しくありません。
この記事では、Zen 5 世代の Ryzen 9950X3D・Threadripper 9970X と、Intel Arrow Lake の Core Ultra 9 285K を CPU-only で走らせ、llama.cpp / Ollama で Llama 3.3 8B・14B・32B・70B Q4_K_M を動かした tok/sec の実測レンジを整理します。なお本記事は「iGPU も dGPU も使わない、純粋な CPU 推論」を対象とします。Strix Halo(Ryzen AI MAX+ 395)は iGPU 込みの APU で挙動が別物になるので、比較対象からは外し、章末で「参考値」として並べます。
なぜ CPU-only ローカルLLM を検討するのか
まず、CPU-only を選ぶ動機を整理しておきます。読者の状況によって「CPU-only は妥当」「素直に GPU を買うべき」の判断が分かれます。
- GPU 高騰対策:RTX 5090 が税込40万円超え、RTX 5070 Ti でも15〜18万円する2026年に、手元の Ryzen 9950X3D(10万円台)で「まず動くか試したい」ニーズは根強い
- 消費電力の低さ:RTX 5090 は575W、Ryzen 9950X3D は170W PPT。24時間常時稼働の LLM ボットや、電力単価の高い環境では CPU-only が体感で有利になる場合がある
- 省スペース:dGPU を挿さないので Mini-ITX ケースやサーバー筐体に入る。ラックマウントの用途では GPU なし構成が組みやすい
- 既存 PC の再活用:Zen 5 世代の PC を持っていれば、追加投資ゼロで「ローカルLLM を試す」段階には入れる
一方で「対話体験を GPU 並みにしたい」「エージェントで長いコンテキストを扱いたい」なら、CPU-only は割に合いません。この記事の数値を見て、自分の用途と噛み合うかを判断してください。
CPU 推論の速度を決める 3 要素
CPU-only の tok/sec は、大きく3つの要因で決まります。
1. メモリ帯域幅(最も支配的)
これが一番大きい。トークン生成(decode)は「1トークンごとにモデル全重み(例:70B Q4 なら約40GB)をメモリから読み出す」処理なので、生成速度の理論上限は「メモリ帯域 ÷ モデルサイズ」で決まります。CPU の演算性能や TOPS はここではほとんど効きません。
| CPU 構成 | 理論メモリ帯域 | 実効メモリ帯域(AIDA64 目安) |
|---|---|---|
| Ryzen 9950X3D(DDR5-6000 2ch) | 96 GB/s | 約85〜92 GB/s |
| Ryzen 9950X3D(DDR5-8000 2ch、OC) | 128 GB/s | 約110〜115 GB/s |
| Threadripper 9970X(DDR5-6400 4ch) | 205 GB/s | 約178 GB/s |
| Core Ultra 9 285K(DDR5-7200 2ch) | 115 GB/s | 約98 GB/s |
| 参考 Strix Halo(LPDDR5X-8000 4ch) | 256 GB/s | 約210〜217 GB/s |
| 参考 M4 Max(LPDDR5X-8533 512bit) | 546 GB/s | 約400〜450 GB/s |
| 参考 RTX 5090(GDDR7) | 1,792 GB/s | 約1,500〜1,600 GB/s |
Threadripper 9970X が最速なのは、この4チャネル DDR5-6400 で実効178 GB/s を叩き出せるから。デュアルチャネルの Ryzen 9950X3D と比べて約 2 倍のメモリ帯域を持ちます。それでも Strix Halo の256 GB/s には及ばず、GPU との差は1桁大きい。仕組みは「メモリ帯域幅(GB/s)がローカルLLMの tok/sec を決める仕組み 2026年版」で詳しく扱っています。
2. AVX-512 / AMX 拡張命令
llama.cpp は AVX-512 が使える環境で量子化重みのデコードと行列演算を大幅に高速化します。ここで Intel Arrow Lake(Core Ultra 200S)が不利になります。
| CPU | AVX-512 | 量子化計算での影響 |
|---|---|---|
| Ryzen 9950X3D(Zen 5) | ○(512bit ネイティブ) | prefill が Arrow Lake より1.3〜1.5倍速 |
| Threadripper 9970X(Zen 5) | ○(512bit ネイティブ) | Zen 5 の中で最速 |
| Core Ultra 9 285K(Arrow Lake) | ✕ | prefill で Zen 5 に負けやすい |
| Xeon(AMX 対応) | AMX + AVX-512 | 量子化推論で理論上有利、ただし llama.cpp の対応は限定的 |
Intel は Meteor Lake / Arrow Lake で AVX-512 を落とし、Zen 4 以降でネイティブサポートした AMD が CPU-only ローカルLLM では有利になっています。Xeon の AMX は理論上さらに強いですが、コンシューマー環境で選ぶ CPU ではありません。
3. L3 キャッシュとコア数
小さいモデル(7B〜8B Q4)では、L3 キャッシュに一部の重みが載って高速化する場面があります。Ryzen 9950X3D(3D V-Cache で 128MB+)が8B で健闘するのはこの効果もあります。ただし14B 以上になると重みがキャッシュに載りきらず、この優位は消えます。コア数は prefill には効きますが、decode ではメモリ帯域律速なので8コア以上あればあまり差がつきません。
検証環境の目安
以下は llama.cpp / Ollama で CPU-only 推論を回すときの実務的な設定目安です。
- llama.cpp:
-ngl 0(GPU レイヤーゼロ)で CPU-only。-tはコア数の 50〜75% 程度が最速になることが多い(オーバースレッドは逆効果) - mmap:
--mmap on(デフォルト)。メモリマップドファイルで OS のページキャッシュを活かす --no-mmapは使わない:メモリに全部読み込んでも tok/sec は変わらず、コールドスタート時間が伸びるだけ- Ubuntu 24.04 LTS / Windows 11 24H2:どちらでも動くが Linux のほうが llama.cpp の最新機能(AVX-512 VNNI 等)を早く取り込みやすい
- 量子化:Q4_K_M が容量とパープレキシティのバランスで王道。Q5_K_M で少し精度、Q8 は容量とメモリ帯域の消費が倍で CPU 推論では非現実的
Windows と Linux でどう違うかは「Windows vs Linux でローカルLLMの速度は本当に変わるか」で詳しく扱っています。
Llama 3.3 8B / 14B / 32B / 70B Q4_K_M の CPU-only tok/sec
いよいよ本題です。数値は llama.cpp / Ollama コミュニティ(r/LocalLLaMA、Phoronix、OpenBenchmarking など)の実測レンジをまとめたもので、単一の環境で計測した数値ではありません。誤差 ±20% 程度で参照してください。
| モデル | Ryzen 9950X3D(DDR5-6000 2ch) | Threadripper 9970X(DDR5-6400 4ch) | Core Ultra 9 285K(DDR5-7200 2ch) |
|---|---|---|---|
| Llama 3.3 8B Q4_K_M | 10〜15 tok/s | 20〜30 tok/s | 7〜11 tok/s |
| Llama 3.3 14B Q4_K_M | 6〜9 tok/s | 12〜18 tok/s | 4〜7 tok/s |
| Llama 3.3 32B Q4_K_M | 3〜5 tok/s | 6〜9 tok/s | 2〜4 tok/s |
| Llama 3.3 70B Q4_K_M | 1〜2 tok/s | 3〜5 tok/s | 1〜2 tok/s |
読み方のポイントは3つです。
- Threadripper 9970X は 8B〜32B で明確に有利:4ch DDR5-6400 の効果がそのまま tok/sec に出ています。8B で約20〜30 tok/sec は、GPU なしでもほぼストレスなく対話できるレンジ
- 9950X3D と 285K の差は小さめ:帯域は 285K のほうがやや高い(DDR5-7200 2ch)が、AVX-512 の欠如が響いて 9950X3D と横並びかやや劣勢
- 70B は Threadripper でも「動くだけ」:3〜5 tok/sec は、体感で「明らかに待たされる」領域。読み物用途か、時間のかかる分析タスクを寝ている間に回す用途に限られる
参考として、iGPU 込みの Strix Halo(Ryzen AI MAX+ 395)と Apple Silicon の数値も並べておきます。
| モデル | Strix Halo(256 GB/s、iGPU 込み) | M4 Max(546 GB/s、Apple GPU) |
|---|---|---|
| Llama 3.3 8B Q4_K_M | 60〜80 tok/s | 90〜120 tok/s |
| Llama 3.3 32B Q4_K_M | 12〜18 tok/s | 25〜35 tok/s |
| Llama 3.3 70B Q4_K_M | 5〜8 tok/s | 10〜14 tok/s |
Strix Halo は「純粋 CPU-only ではない」ものの、税込30〜45万円の完成品ミニPCで買える範囲にあり、Threadripper 9970X の CPU 単体(税込40万円超)よりむしろ安く、tok/sec は倍以上出ます。ここが「CPU-only を選ぶ判断」を難しくしている一番のポイントです。Strix Halo の実測は「AMD Ryzen AI MAX+ 395(Strix Halo)ローカルLLM ベンチマーク」で詳しく扱っています。
prefill(TTFT)の実測:CPU-only の本当の弱点
decode(生成)の tok/sec だけ見ると「Threadripper なら意外と使える」印象を受けますが、prefill(プロンプト処理、TTFT = Time To First Token) を見ると評価が変わります。
Prefill は「入力プロンプトを一気に読み込んで内部状態を作る」フェーズで、GPU 演算性能(FLOPS)に強く依存します。ここで CPU は本質的に GPU に太刀打ちできません。
| 入力トークン数 | Ryzen 9950X3D(8B Q4) | Threadripper 9970X(8B Q4) | 参考 RTX 5090(8B Q4) |
|---|---|---|---|
| 500 トークン | 約2〜3 秒 | 約1〜1.5 秒 | 0.1 秒未満 |
| 2,000 トークン | 約8〜12 秒 | 約4〜6 秒 | 約0.5 秒 |
| 5,000 トークン | 約25〜40 秒 | 約12〜18 秒 | 約1〜2 秒 |
| 10,000 トークン | 約60〜90 秒 | 約30〜45 秒 | 約3〜5 秒 |
つまり CPU-only は「短い質問には耐えるが、長文コンテキストを渡した瞬間に応答開始まで数十秒〜1分待たされる」 状態になります。エージェント用途(システムプロンプト+ツールリスト+履歴で数千トークン)や RAG(検索した文書チャンクを詰め込む)では、この prefill 遅延が体験を大きく壊します。
Prefill の一般論は「LLM prefill(プロンプト処理)ベンチマーク 2026年版」で扱っているので、CPU-only を検討している人はセットで読むと判断がクリアになります。
消費電力と tok/sec per Watt
「CPU-only なら電力面で有利」という直感は、実は微妙です。tok/sec が低いぶん、1トークンあたりの電力効率で見ると GPU に負けます。
| 構成 | ピーク電力(推論時) | 8B Q4 tok/sec | tok/sec per Watt |
|---|---|---|---|
| Ryzen 9950X3D | 約120W(PPT 170W の 70%) | 12 tok/s | 0.10 |
| Threadripper 9970X | 約280W(350W TDP の 80%) | 25 tok/s | 0.089 |
| Core Ultra 9 285K | 約200W(PL2 250W の 80%) | 9 tok/s | 0.045 |
| Strix Halo | 約100W(120W TDP) | 70 tok/s | 0.70 |
| RTX 5090(+CPU アイドル) | 約550W(575W TDP) | 100 tok/s | 0.18 |
| M4 Max(+ CPU アイドル) | 約120W(130W ピーク) | 100 tok/s | 0.83 |
CPU-only の効率は Strix Halo・M4 Max・RTX 5090 のいずれにも負けます。「省電力のために CPU-only」という判断は数字上は正当化できません。CPU-only を選ぶ理由は電力効率ではなく、「初期投資を抑えて、まず動かしたい」 の一点です。tok/sec per Watt を本気で詰めたいなら「ローカルLLM 電力効率 tok per Watt ベンチマーク 2026年版」を参照してください。
用途別の判断
以上を踏まえた実務的な判断軸を、用途別にまとめます。
| あなたの状況 | 推奨 |
|---|---|
| 8B モデルで対話・コード補完・要約が回れば十分 | Ryzen 9950X3D + DDR5-6000 96GB(CPU-only、10〜15 tok/s) |
| 14B〜32B を対話速度で回したい | Threadripper 9970X + DDR5-6400 128GB(4ch、6〜9 tok/s) |
| 70B を対話速度で使いたい | CPU-only を諦めて Strix Halo(GTR9 Pro / EVO-X2)へ(5〜8 tok/s、価格も同等) |
| 電力効率・体験を優先 | M4 Max / Mac Studio か dGPU(RTX 5070 Ti 以上) |
| エージェント / RAG で長文コンテキストを扱う | CPU-only は不可、GPU 系 |
| バッチで70Bを寝ている間に回すだけ | Threadripper 9970X で妥協可 |
私の結論は「CPU-only は 8B〜14B までの読み物用途に限れば現実解、それ以上は素直に Strix Halo(Ryzen AI MAX+ 395)か GPU に投資するほうが体験もコスパも良い」です。特に「70B を CPU で動かす」ために Threadripper 9970X(税込40万円超)を新調するくらいなら、同額で Beelink GTR9 Pro(128GB、5〜8 tok/s)を買うほうがトータルで有利です。CPU-only は「今持っている Ryzen 9950X3D で8Bを試す」動機で選ぶ選択肢、と割り切ってください。Strix Halo 実機を先に検討したい人は「Ryzen AI MAX+ 395(Strix Halo)ミニPC 機種比較 2026年版」を先に読むのをおすすめします。
入手先・関連商品
当サイトは Amazon.co.jp アソシエイト・プログラムに参加予定です。下記リンク経由で購入された場合、紹介料を受け取ることがあります。読者の負担は増えません。リンクは記事評価とは独立しており、編集判断には影響しません。
CPU(記事推奨の2機種)
CPU-only を諦めて APU に逃げる場合
あなたに合うPCを診断する
用途や予算をもう少し細かく入力すると、3つの候補構成を提案します。
→ 診断スタート
関連記事
よくある質問
- GPU なしで本当にローカルLLMは動きますか?
- 動きます。ただし『動く』と『実用』の間に大きなギャップがあります。Llama 3.3 8B Q4_K_M ならZen 5 CPU(Ryzen 9950X3D)で10〜15 tok/sec 出て、日常のちょっとした質問応答なら耐えられます。一方 32B は 3〜5 tok/sec、70B は Threadripper でも 2〜4 tok/sec 程度で、対話の待ち時間として長すぎます。CPU-only は『8B は使える、14〜32B は緊急用、70B は忍耐か次世代待ち』が現実的な線引きです。
- CPU 推論の速度は何で決まりますか?
- 3 要素あります。(1) メモリ帯域幅(GB/s)——1トークン生成ごとにモデル全重みを読み出すため decode 速度の上限を決める、(2) CPU の AVX-512 / AMX 拡張命令サポート——prefill と量子化計算の効率に効く、(3) L3 キャッシュ容量——小モデルではキャッシュヒット率が体感速度に効く。この中で最も支配的なのはメモリ帯域で、Threadripper 9970X が Ryzen 9950X3D より 2〜3 倍速いのは主に 4ch DDR5-6400(実効 178 GB/s)による差です。仕組みは「[メモリ帯域幅(GB/s)がローカルLLMの tok/sec を決める仕組み](/blog/memory-bandwidth-local-llm-tok-sec-2026/)」を先に読むと理解が深まります。
- CPU-only で 70B モデルを動かすにはどのCPUが必要ですか?
- 現実的には Threadripper 9970X(4ch DDR5-6400、実効178 GB/s)が最低ラインです。Ryzen 9950X3D(2ch DDR5-6000、実効約90 GB/s)でも 70B Q4 は動きますが、1〜2 tok/sec で対話用途には遅すぎます。Threadripper 9970X でも 3〜5 tok/sec と、GPU 版(RTX 5090 で 30〜40 tok/sec)とは10倍近い差があります。「動く」だけでよく、時間がかかっても構わないバッチ用途なら Threadripper、対話用途なら大人しく GPU か Strix Halo 系ミニPCを検討したほうが体験が良いです。
- Intel Core Ultra 9 285K は Ryzen より遅いのはなぜですか?
- Arrow Lake(Core Ultra 200S 系)は AVX-512 命令をサポートしないためです。llama.cpp は AVX-512 が使えると量子化された重みのデコードと行列演算を大幅に高速化できますが、Arrow Lake ではその恩恵が得られません。DDR5-7200/8000 の高クロック品を使えばメモリ帯域では有利になる場面もありますが、prefill(プロンプト処理)で Zen 5 に負けやすく、CPU-only ローカルLLM 用途では Zen 5 系(9950X3D / Threadripper 9970X)が実務的に第一候補になります。
- prefill(プロンプト処理)が遅いと何が困りますか?
- エージェント用途と RAG(Retrieval Augmented Generation)で致命的になります。decode(生成)が遅くても短い応答なら1〜2秒待てば済みますが、prefill が遅いと『長いプロンプト+コンテキスト』を投げた瞬間に応答開始まで10秒〜1分かかる状態が発生します。CPU-only は decode より prefill が支配的で、5,000 トークン級のコンテキストを渡すエージェント用途では特に不利。詳しくは「[LLM prefill(プロンプト処理)ベンチマーク 2026年版](/blog/llm-prompt-processing-prefill-benchmark-2026/)」で扱っています。