人工智慧
CUDA Core 與 Tensor Core
CUDA Core 是 NVIDIA GPU 中的基礎計算單元,用於執行通用的浮點與整數運算。在沒有 Tensor Core 之前,機器學習均依賴其計算效能進行訓練。這個傳統架構直到 2016 年,隨著深度學習的興起, Pascal 系列開始有了改變,NVIDIA 此時導入初代 NVLink 技術,FP32 Cuda Core 也開始具有處理 FP16 的能力。然而這樣還不夠,由於 Cuda Core 每個時脈週期只能進行一次計算,但是 CUDA Core 數量無法無止盡的堆疊。因此 NVIDIA 別出蹊徑,開發出了 Tensor Core,應用在下一代 Volta 系列上。它允許混合精度運算,並可動態調整運算,在加速傳輸量的同時保持精準度。使得 Volta 提供了比 Pascal 高數倍的訓練和推理效率。
此後,NVIDIA 在 Volta 架構的基礎上,對 Tensor Core 進行了更深度的設計,新增對更低精度計算的加速支援。自 Volta 系列問世以來,現今 Tensor Core 已發展至第五代,最低精度已經允許支援 FP4 精度。因此,在比較顯卡的 AI 計算效能時,通常以 Tensor Core 的加速效率作為主要判斷依據。
Tensor Core 支援精度

- 第一代 Tensor core
- 開始支援使用 FP16 進行混合精度訓練。
- 第二代 Tensor core
- 比起上一代,額外支援 INT8、INT4 的推理加速。
- 第三代 Tensor core
- 開始支援稀疏運算,效率為原先密集運算的兩倍。 (然而僅有極少數套件允許啟用)
- 開始支援 BF16,也是當前 LLM 主流的精度。
- 第四代 Tensor core (Ada & Hopper)
- 導入 Transformer Engine 函式庫,支援 FP8 精度訓練、微調。
- 第五代 Tensor core
- 升級至第二代 Transformer Engine,支援 FP6、FP4 精度。
NVIDIA 顯示卡
在 LLM 領域中,開發者及一般愛好者常用的顯示卡涵蓋 Pascal 至 Ada Lovelace 系列,而今年推出的 Blackwell 2.0 系列正蓄勢待發。不過 Pascal 系列自發售以來已歷經 9 年,目前各大 AI 相關函式庫對其的支援逐漸進入維護階段,甚至對 Turing 系列的支援也開始出現類似趨勢。因此,若預算允許,建議從 Ampere 系列的 RTX 3060 12G 開始入門。
基本資訊
以下表格為目前 NVIDIA 大部分可用於 AI 領域的計算卡。- FP32 / FP16 CUDA Core 效能若低於 1 TFLOPS 、VRAM 小於 10 GB 則不計入
- 若架構 (≥ 8.6) 支援 Tensor Core BF16 ,則效能等同 Tensor Core FP16
- 排序優先級:架構 > CUDA 核心數量 > Tensor 核心數量 > FP32 CUDA 核心效能


* A16 由 GPU x4 組成,實際效能 x4,標示為 x1 效能
** VRAM 由手工或工廠批量進行擴容,其他效能大致不變
Tensor Core 效能
以下表格為摘取 NVIDIA 官方規格書的資料建立而成,僅供參考。要注意的是,AI 實際使用會嚴重地受到情境影響,隱藏條件不限於時脈、架構和調用的函式庫,會出現 A 帳面效能小幅贏過 B,但運行時 B 卻快於 A 的情形。例如 RTX 6000 Ada 與 RTX 4090 數據存在些許差距,不過在不少測試中,RTX 4090 成績仍然領先 RTX 6000 Ada。

(該表採用混合精度訓練的帳面效能排序)