運算吞吐量
Streaming Multiprocessor 把純量、矩陣與特殊函式等資源組在一起。比較推論效能時,應看實際採用精度下的 Tensor Core 吞吐量,不能把 dense、sparse 與不同精度的峰值數字混在一起。
3
把運算、記憶體與 interconnect 限制映射到服務行為。
9 分鐘閱讀
印刷頁: 71–92
推論硬體是一串容量有限、速度各異的資源,不是單一效能數字。Tensor Core 的吞吐量會限制長提示 prefill 與影音生成等運算密集工作;video random-access memory(VRAM)的容量決定 weights 及工作狀態是否放得下,而 VRAM 頻寬往往限制自回歸 decode。一旦模型跨越多個裝置,interconnect 頻寬與同步成本也會進入關鍵路徑。選硬體時,應先用符合正式流量形狀的測試找出真正飽和的階段與資源,再為該瓶頸配置容量。
把每個推論步驟想成輸送帶:數值先從某個儲存層取出,交給 compute unit 轉換,必要時再傳到另一個裝置。若輸送帶供應不了運算元,再快的計算單元也只能閒置。小型 cache 距離運算最近、速度最快;往 VRAM、主機記憶體與儲存空間移動時,容量逐層增加,但存取成本也跟著上升。平衡的系統會把最常使用的工作集合留在運算附近,並盡量減少穿越較慢邊界的次數。
Tensor Core 各自使用 L0 指令 cache,並共用每個 SM 的 L1 工作空間;所有 SM 再經全 GPU 共用的 L2 連到容量較大但速度較慢的 VRAM,主機記憶體與本機儲存空間則是逐層更低的卸載層。
假設要部署一個長提示、短回答的語言服務。第一步不是看哪張 GPU 的峰值最高,而是先用模型參數量與精度估算 weights,再加入最長預期序列、目標 concurrency 與 batch 需要的 key-value cache、activation 及 runtime buffer,確認尖峰情境仍有餘裕。第二步把 prefill 與 decode 分開測:前者處理整段提示,可能先吃滿 Tensor Core;後者逐 token 讀取 weights,可能先吃滿 VRAM 頻寬。算力較高但容量或頻寬較低的裝置,可能在第一個 token 路徑勝出,卻在持續生成時落後,甚至在長 context 下直接發生 out-of-memory(OOM)。最後要比較的是完整工作負載範圍:不同序列長度、concurrency 量與尾端延遲是否都在服務目標內,而不是規格表上的單一冠軍。
接著讓模型大到超過一個裝置。單一節點內,GPU 能經高速連線頻繁交換 partial result,因此需要每層同步的切分仍可能有效;跨到第二節點後,每次同步都要走較慢網路,累積成本可能抵銷新增算力。相同的八張額外 GPU 可以拿來擴大一個 replica,也可以建立另一個獨立 replica。只有模型容量、key-value cache 空間或單一請求延遲真的要求更多裝置時,擴大 replica 才有必要;若模型已能在一個節點內有效服務,橫向複製通常能避免跨節點同步並處理更多彼此獨立的請求。模型大小、cache 餘裕、流量 concurrency 與演算法通訊模式必須一起決定 topology,不能只依 GPU 數量。
硬體層級還會一路延伸到機架之外。手機適合在沒有網路往返的情況下處理小型、即時且隱私敏感的工作;工作站可能利用大型 unified memory 或高階獨立顯示卡執行個人模型;資料中心則能把高功率 accelerator、穩定散熱與標準化網路整合成可擴充服務。替代晶片也可能針對記憶體頻寬、能源效率或特定 dataflow 取得優勢。真正的工程問題不是哪一個位置或廠商絕對勝出,而是哪一段流程能在當地的算力、容量、持續散熱、電池、軟體支援矩陣與可得供應下可靠執行。混合系統還要定義能力偵測、資料邊界與 fallback,讓終端裝置不足或離線策略不適用時,可以平順轉到中央服務。
採購比較必須把完整 instance 標準化,不能只比晶片名稱。先找出能容納 weights 與服務 headroom 的最小 instance 形狀,將主機 CPU、主機記憶體、儲存、網路、GPU 外型與 interconnect 都列入,並在相同 driver、runtime、engine、precision 及請求分布下量 sustained performance。雲端標價也要換算成滿足延遲目標時的每秒有效 token 或每千次請求成本,不能用理論峰值除價格。接著記錄區域容量、啟動時間、可否預留、故障替換與 multi-instance 分割方式:小模型若只用到整張卡的一小部分,現代 GPU 的合適 slice 可能更有效;模型需要大量 burst 或 cache 時,完整裝置才保有彈性。供應不穩也會讓優秀 benchmark 失去意義,因為無法在需要的區域與時間取得足夠相同 topology,服務就不能可靠擴充。
每一層邊界都要設計故障處理。VRAM 空間不足時,系統要限制 admission、降低 batch、縮短 context 或選較小模型,不能等 OOM 讓 replica 崩潰;節點內連線或跨節點網路退化時,要能辨識同步延遲並改用較少通訊的配置,必要時把工作切回獨立 replica;終端裝置缺少支援、過熱、低電量或執行太慢時,要有明確雲端 fallback,同時維持使用者同意與資料邊界。監控也要能區分 Tensor Core 飽和、VRAM 容量壓力、memory bandwidth 停頓、interconnect 壅塞、thermal throttling、模型載入輸入輸出與普通 queueing,否則所有問題只會表現成「延遲變高」。硬體選型只有在這些退化模式可觀測、可限制並可恢復時才算完成。
為每次硬體決策保存可重查的紀錄:正式流量的輸入輸出與 concurrency 分布、weights 和 cache 的記憶體算式、裝置與節點 topology、完整 instance 規格、driver 與 engine 版本、各階段 benchmark、價格計算 benchmark、容量取得方式,以及被淘汰方案的原因。這份文件要明確寫出假設,例如目標 precision、最長 context、可接受 P99、預期 cache hit 與跨節點通訊量。當流量形狀、模型大小、精度、kernel、雲端供應或價格改變時,就重新執行相同測試,而不是延用舊結論。若只有局部假設改變,也要先重跑受影響的 phase,再用端到端負載確認沒有把瓶頸推到其他層;若供應商替換 instance 內的主機或網路配置,即使 GPU 名稱相同也視為新候選。也要把測試日期與版次保留在紀錄中,避免後來的讀者把歷史結果誤當成目前保證。硬體選型從來不是永遠正確的產品排行,而是在一組可驗證假設下成立的工程判斷。
Streaming Multiprocessor 把純量、矩陣與特殊函式等資源組在一起。比較推論效能時,應看實際採用精度下的 Tensor Core 吞吐量,不能把 dense、sparse 與不同精度的峰值數字混在一起。
weights 只代表最低需求,activation、runtime buffer 與 key-value cache 都需要額外空間;長 context、高 batch 或影片生成尤其吃重。模型勉強載入成功,不表示它能承受有意義的正式流量。
在低到中等 batch 下,decode 會反覆 streaming weights,卻只做相對少量的算術運算。因此即使峰值算力相同,提高可用頻寬仍可能加快單一使用者看到 token 的速度。
2026 年 1 月版快照:Hopper 導入廣泛使用的低精度與非同步功能;Blackwell 延伸低精度格式及記憶體搬移能力;已公布的 Rubin 系統則鎖定更高頻寬記憶體與獨立的運算導向元件。新晶片仍要等 kernel、編譯器與 runtime 成熟後,再用真實測試判斷。
instance 會把 accelerator、主機資源及連線包成一個可配置單位。Multi-instance GPU 能讓小模型使用新硬體的一部分;完整的多 GPU 節點則提供大型模型需要的容量與高速節點內 interconnect。
2026 年 1 月版快照:非 NVIDIA 設計各自追求記憶體頻寬、能源效率、專用 dataflow 或雲端整合等優勢。實務評估不能只看晶片規格,還要一起檢查軟體成熟度、可量產容量、供應通路與工作負載涵蓋度。
在裝置上執行可以移除網路延遲、離線運作、讓資料留在本機,並把 accelerator 成本從服務營運方移開;代價是嚴格的散熱與電池預算,以及破碎的裝置支援矩陣。設計時要以一般使用者的硬體為 benchmark,不能只看愛好者的頂級設備。
同一節點內的 GPU 先經 NVLink 與 NVSwitch 互通,而第一節點到第二節點之間的資料流則跨越速度較慢的 InfiniBand 層級。
FLOPS
必須比較相同數值格式,也不能用結構化 sparsity 的峰值取代 dense 推論能力。
GB
要追蹤 weights 加上營運空間,而不是只確認模型是否載入成功。
GB/s 或 TB/s
以預期的 decode 形狀量測實際資料搬移行為。
GB/s 或 Gb/s
區分節點內 GPU 連線與節點間網路,並留意 byte 與 bit 的單位差異。
時間序列
平均值可能掩蓋停頓、裝置間不平衡,以及隨流量改變的階段轉換。
W 與 joules/request
替代 accelerator 與本機裝置尤其重要,因為散熱或電池會限制長時間可維持的速度。
新世代可能增加格式、頻寬與指令,但要等編譯器、kernel、engine 與雲端供應同步跟上,優勢才會真正出現。在這段空窗期,成熟硬體的每元效能可能更可預測。
更大的單一節點能保留高速連線;增加節點可擴大容量,卻會暴露較慢的通訊路徑。當模型已經放得下時,額外節點拿來建立獨立 replica 可能更有價值。
Multi-instance 分割能讓小模型有效使用新晶片;完整裝置則有較大的記憶體、彈性與突發空間。隔離需求與 slice 形狀必須符合服務流量範圍。
針對特定用途的晶片可能在單一瓶頸或能源目標勝出,但搬遷時也要重新驗證 kernel、framework、可觀測性、容量供應與團隊維運能力。
本機執行改善隱私、離線能力與網路延遲;集中式服務則提供更強硬體、一致軟體、機隊控制與大型模型。混合 routing 可以把兩者各自擅長的工作分開處理。
第 71-74 頁
accelerator 版圖、部署模式與 GPU 架構方向。
第 74-77 頁
compute unit、數值吞吐量、cache、VRAM、容量與頻寬。
第 77-83 頁
2026 年 1 月版的架構世代與主機到裝置記憶體連線。
第 83-87 頁
雲端 instance 組成、多 GPU 連線、跨節點網路與硬體分割。
第 87-89 頁
2026 年 1 月版的替代 accelerator 策略與採用限制。
第 89-92 頁
桌面與行動推論的機會、限制及混合配置。