在本地電腦跑 LLM 的人,幾乎都問過同一句話:「我顯示卡明明不弱,為什麼吐字還是慢吞吞?」很多人第一個念頭是去換更貴、算力更強的卡,結果換了也沒快多少。問題其實出在一個常被忽略的規格上。
🚀 站長快讀
決定本地 LLM「生成速度」的,不是顯示卡的算力(TFLOPS / TOPS),而是記憶體頻寬(memory bandwidth)。這篇用各家官方規格,把 token 速度為什麼卡在頻寬講清楚,順便給你一套「容量看塞不塞得下、頻寬看跑多快」的挑硬體邏輯,少走冤枉路。
⚡ 快速答案
本地 LLM 的生成速度主要由記憶體頻寬決定,不是算力。 每吐一個 token,硬體都得把整個模型從記憶體讀過一遍;所以 token/秒的上限大約等於「記憶體頻寬 ÷ 模型大小」,頻寬越高、模型越小,吐字就越快。
🧠 先分清楚:頻寬 vs 容量,是兩回事
段落級結論:記憶體容量決定「塞不塞得下模型」,記憶體頻寬決定「跑多快」,兩個是不同的指標,買硬體要分開看。
很多人把「VRAM 32GB」這種數字當成效能指標,其實那是容量——它只回答「這個模型放不放得進去」。真正決定你打完一句話、AI 要花幾秒把答案吐完的,是頻寬,也就是每秒能從記憶體搬多少 GB 的資料(單位 GB/s)。
一個常見的誤會是:算力(核心多強、幾 TFLOPS、NPU 幾 TOPS)越高就越快。對「一次一句」的本地推論來說,這個直覺是錯的,原因在下一節。
🔍 為什麼 token 速度卡在頻寬,不是算力
段落級結論:因為生成文字是「自迴歸解碼」,每產生一個 token 就要把模型權重完整讀一遍,這件事被記憶體搬運速度卡住,GPU 的算力大多在空轉。
拆開來看:
- 生成 = 一次一個 token 的序列動作。 每吐一個字,硬體要把「這一步用到的權重」從記憶體搬進運算單元算一次,再吐下一個字。對稠密模型而言,一個 token 幾乎要碰過整個模型的權重。
- 讀得多、算得少。 學界用「算術強度(arithmetic intensity)」衡量:解碼階段大約每讀 1 byte 只做約 1 次浮點運算,比 GPU 進入「算力受限」所需的門檻低了約兩個數量級(依 roofline 模型的 LLM 推論分析)。白話說,就是資料還沒搬完,算力早算完在等——瓶頸在搬運,不在計算。
- 所以 token/秒的天花板 ≈ 記憶體頻寬 ÷ 每個 token 要讀的資料量。 頻寬固定時,模型越大(要讀越多 bytes)越慢;模型越小或量化越狠(要讀越少 bytes)越快。
這也解釋了兩件事:第一,為什麼一味堆算力(更多 TFLOPS、更高 TOPS)對「單人、一問一答」的本地推論幾乎沒感——算力本來就沒用滿;這點站長在另一篇拆解 NPU 行銷時也提過,有興趣可以延伸看「AI PC」與 NPU 真實算力的揭密。第二,為什麼「量化」不只是省容量,更是直接的加速手段,因為它讓每個 token 要搬的 bytes 變少。
補一個對照:上面講的是「生成(decode)」階段。你貼一大段 prompt 進去、模型在「讀題」的那個階段(prefill),因為能一次平行處理很多 token,反而是算力受限的——這時 GPU 的算力才派上用場。但日常聊天、寫程式那種一問一答、狂吐字的體感速度,決定權在頻寬。
📊 一張表看懂各家記憶體頻寬
段落級結論:同樣是「跑得動」,頻寬差一個量級,體感就差一個量級。下表整理截至 2026 年幾個代表性平台的官方記憶體頻寬(由高到低)。
| 平台 | 記憶體 / 介面 | 官方頻寬 | 記憶體容量 |
|---|---|---|---|
| NVIDIA RTX 5090 | GDDR7 / 512-bit | 1,792 GB/s | 32 GB |
| NVIDIA RTX 4090 | GDDR6X / 384-bit | 1,008 GB/s | 24 GB |
| NVIDIA RTX 5080 | GDDR7 / 256-bit | 960 GB/s | 16 GB |
| NVIDIA RTX 3090 | GDDR6X / 384-bit | 936 GB/s | 24 GB |
| Apple M5 Max | 統一記憶體 | 614 GB/s | 最高 128 GB |
| Apple M4 Max | 統一記憶體 | 546 GB/s | 最高 128 GB |
| Apple M5 Pro | 統一記憶體 | 307 GB/s | 最高 64 GB |
| AMD Ryzen AI Max+ 395(Strix Halo) | LPDDR5X-8000 / 256-bit | 256 GB/s(實測約 215) | 最高 128 GB |
| Apple M5(標準版) | 統一記憶體 | 153 GB/s | 最高 32 GB |
| 系統 RAM:DDR5-6000 雙通道 | DDR5 / 128-bit | 約 96 GB/s | 視主機板 |
| PCIe 5.0 ×16(offload 通道) | — | 64 GB/s | — |
幾個重點:
- 頂規獨顯(5090)到旗艦統一記憶體(M5 Max)差約 3 倍;到 Strix Halo 差約 7 倍;到系統 RAM 更差了約 18 倍。這個「階梯」直接對應吐字快慢。
- RTX 5080 和 RTX 3090 差了兩個世代,頻寬卻很接近(960 vs 936):GDDR7 用更窄的 256-bit 匯流排、靠更高的每腳位速度,追平了老旗艦的 384-bit。可見頻寬要看「介面寬度 × 速度」的組合,不能只看位元寬。
- Strix Halo 的 256 GB/s 是理論值,官方與評測實測混合負載約落在 215 GB/s,這是 LPDDR5X 的常態落差。
- 數據來源:NVIDIA、Apple、AMD 官方規格頁(第一級官方)。
🧮 估一下你的 token 速度(理論上限)
段落級結論:給你一條隨手可算的公式,先抓天花板,再打折。
公式(理論上限):token/秒 ≈ 記憶體頻寬(GB/s)÷ 每個 token 要讀的資料量(GB)。
「每個 token 要讀的資料量」約等於模型在記憶體裡的大小,估法是「參數量 × 每參數位元組」:FP16 = 每參數 2 bytes、Q8 ≈ 1 byte、Q4 ≈ 0.5 byte(再加一點 KV cache 與開銷)。
- 70B 模型 Q4 ≈ 70B × 0.5 ≈ 35–40 GB。
- 8B 模型 Q4 ≈ 4–5 GB。
套進去看(以下皆為理論天花板、非實測):
- 8B Q4(約 5 GB)在 RTX 5090(1,792 GB/s):1792 ÷ 5 ≈ 每秒 350 個 token 的上限,快到你看不完。
- 70B Q4(約 40 GB)在 Apple M5 Max(614 GB/s):614 ÷ 40 ≈ 每秒 15 個 token 的上限,順但不飛快。
- 同樣 70B Q4(約 40 GB)想塞進 RTX 4090?先卡在容量:40 GB > 24 GB VRAM,根本放不下(見下一節的「懸崖」)。
重要免責: 上面是理論天花板,實際只會更低——KV cache 會隨對話變長而增加每步要讀的資料,記憶體也不可能 100% 打滿。把理論值打個 6–8 折當粗估比較貼近現實。這些是依頻寬機制做的推估,不是站長實測數字。想把模型大小、量化位元與 VRAM 需求算得更細,可搭配這篇本地 LLM 量化與 VRAM 對照一起看。
⛰️ 模型塞不進 VRAM:頻寬懸崖
段落級結論:一旦模型放不進顯示卡的 VRAM,速度不是「慢一點」,而是「掉下懸崖」。
當模型加上 KV cache 超過 VRAM,推論框架(llama.cpp、Ollama、LM Studio 等)會把塞不下的層 offload 到系統 RAM,由 CPU 負責那一部分。問題來了:那些被丟到系統 RAM 的權重,每個 token 都得透過 PCIe(5.0 ×16 只有 64 GB/s)搬動,而系統 RAM 本身也才約 96 GB/s——跟 VRAM 的 1,000–1,792 GB/s 一比,差了 15 到 28 倍。
結果就是:只要有一小部分權重溢出到系統記憶體,整體 token/秒就會被那段最慢的路徑拖垮,體感上常見從「每秒幾十字」直接掉到「每秒幾個字」。
實務鐵律:寧可選「更小、更量化、但能全塞進 VRAM」的模型,也不要硬跑一個會溢出的大模型。 全塞得下,才吃得到顯示卡那條高頻寬的路。至於顯示卡與 VRAM 該怎麼配,可參考站長的本地端 AI 硬體指南。
🍎 統一記憶體的取捨:塞得下 ≠ 跑得快
段落級結論:Apple Silicon 與 AMD Strix Halo 這類「統一記憶體」平台,最大價值是「不落入頻寬懸崖」,而不是「頻寬最高」。
統一記憶體是 CPU 和 GPU 共用同一池記憶體。好處是可以把很大一塊(最高 96–128 GB)當成「顯示記憶體」用,塞得下 70B 甚至 120B 這種消費級獨顯 VRAM 根本裝不下的模型。
但別忘了它們的頻寬:Strix Halo 約 256 GB/s、M5 Max 614 GB/s,都明顯低於高階獨顯(4090 的 1,008、5090 的 1,792)。所以同一個「塞得進 5090 VRAM」的小模型,獨顯會跑得更快。
那統一記憶體什麼時候贏?當模型大到任何單張消費級顯卡的 VRAM 都裝不下時。 這時獨顯只能 offload、掉進懸崖;而統一記憶體雖然頻寬較低,卻是「整個模型都在同一池、都吃得到那 256–614 GB/s」,反而穩定勝出。
一句話總結:小模型追速度,找高頻寬獨顯;大模型要「跑得動」,找大容量統一記憶體。 兩者買的是不同的東西。
🛠️ 挑硬體與調校:6 個實用結論
- 先看頻寬,不是 TOPS / TFLOPS。 對「一次一句」的本地推論,決定體感的是 GB/s。
- 容量決定「能不能跑」,頻寬決定「跑多快」。 兩個指標分開評估:先確定塞得下,再比頻寬。
- 量化是加速器,不只是省空間。 Q4 比 FP16 每個 token 少讀約 4 倍資料,直接換來速度(代價是些微品質下降)。
- 死守「全塞進 VRAM」。 寧可換更小、更量化的模型,也別讓它溢出到系統 RAM。
- 長對話會變慢是正常的。 KV cache 隨 context 變長,每個 token 要讀的資料變多,頻寬被吃掉。需要長上下文時要把這點算進去。
- 多卡不是萬靈丹。 雙卡各自有各自的頻寬,但跨卡切分受 PCIe 限制,擴充的是「容量」多過「單串流速度」。
❓ 常見問題
Q:把顯示卡超頻對本地 LLM 有用嗎?
A:相對而言,把「記憶體(VRAM)」超頻通常比把「核心」超頻更有感,因為瓶頸在頻寬。但幅度有限,別期待翻倍。
Q:為什麼同一個模型,別人 5090 比我 4090 快這麼多?
A:5090 頻寬 1,792 GB/s 對上 4090 的 1,008 GB/s,差約 1.78 倍,理論上 token 速度就差這麼多(前提是兩張都塞得下同一個模型)。
Q:買 128GB 統一記憶體的機器,是不是就能爽跑大模型?
A:塞得下不代表跑得快。它的頻寬(如 Strix Halo 約 256 GB/s)決定了 70B 這種大模型的速度只會是「堪用」等級,不是獨顯跑小模型那種飛快。
Q:NPU 那麼高的 TOPS,對跑 LLM 沒幫助?
A:對「生成階段」幫助有限,因為那階段是頻寬受限、算力用不滿;NPU 的價值比較在低功耗與特定加速場景。延伸閱讀裡有一篇專門談 NPU 行銷與真實算力,可以對照著看。
🔗 延伸閱讀
- 搞懂 RAM 記憶體:容量、頻率 (MHz)、時序 (CL) 如何影響效能
- 顯示卡 (GPU) 完全指南:內顯 vs 獨顯、NVIDIA/AMD 型號規格解析
- LM Studio 完整教學:不打指令,在 Windows 本地跑 LLM
- 拒絕訂閱制!Windows 本機跑 AI(Ollama + Open WebUI)