30 系列顯示卡有一個人為限速:FP/BF16 熔加運算的指令發射率被壓到半速。Zagitta 的 gpu-unlock 用一個 Linux 核心模組把它解開,不用改驅動,開機先行載入就行。這篇把專案 README 翻成中文,再整理 HN 74 則留言的重點,最後附一頁懶人包。
原文:https://github.com/Zagitta/gpu-unlock
HN 討論:https://news.ycombinator.com/item?id=50219700(303 分、74 則活留言)
懶人包:https://static.blog.derekhsu.net/gpu-unlock-guide.html
專案在做什麼
把 Nvidia 30 系列的 FP/BF16 指令發射率,解鎖到同級專業卡的水準。
這是一個 Linux 核心模組。它借 CMP 解鎖器的手法,學 UEFI 做法搶時機:先執行解鎖,寫入速度選擇器,再做功能層級重置,整個過程都在未修改過的 NVIDIA 驅動程式綁定顯示卡之前完成。它既不是 UEFI 應用程式,也不是改過的驅動程式。
早載入的好處只有一個:NVIDIA 發新驅動,你不用跟著重打一次修補程式。
解鎖的效果,是把 GA102、GA103、GA104、GA106 上 FP/BF16 熔加運算的指令發射速度翻倍。
實測數字
3090 Ti,dense 8192³ GEMM,450W,FP32 累加,五次取中位數:
| 輸入 | 解鎖前 | 解鎖後 |
|---|---|---|
| FP16 | 87.46 TFLOPS | 118.39 TFLOPS |
| BF16 | 87.50 TFLOPS | 157.41 TFLOPS |
| TF32 | 42.58 TFLOPS | 82.61 TFLOPS |
各卡回報的 BF16 GEMM 增益約 25% 至 80%。功耗牆是上限:壓在 225W 的卡只多 25%。矩陣密集的工作會變快:LLM prefill 回報多 14–36%,擴散模型與 FlashAttention 也有感。LLM decode 卡在記憶體頻寬,INT8 不在範圍,兩者大致不變。有比對輸出內容的回報都說解鎖前後逐位元一致。
已測試的卡
| 晶片 | 顯示卡 | 結果 | BF16 增益 |
|---|---|---|---|
| GA102 | RTX 3090 Ti | 已解鎖 | +68–80% |
| GA102 | RTX 3090 | 已解鎖 | +25–67% |
| GA102 | RTX 3080 Ti 20GB OEM 版 | 流程走完,BF16 仍半速 | — |
| GA102 | RTX 3080 10GB | 已解鎖 | +70–73% |
| GA102 | RTX 3080 20GB 改裝版 | 已解鎖 | +56–59% |
| GA104 | RTX 3070 | 已解鎖 | +73–81% |
| GA104 | RTX 3070 Ti | 本模組未測,UEFI 移植版在 Windows 成功過 | — |
| GA106 | RTX 3060 12GB | 已解鎖 | 約 +80% |
| GA103 | 未指定 | 尚無回報 | — |
單機四卡、接螢幕的卡、用 vfio-pci 直通進虛擬機的卡都有回報成功。
安裝
先抓碼再裝:
git clone https://github.com/Zagitta/gpu-unlock
cd gpu-unlock
make install
再把 gpu_unlock.targets=all 加進核心開機參數(GRUB 改 GRUB_CMDLINE_LINUX_DEFAULT 後重建設定,Fedora 用 grubby,systemd-boot 加到開機項目的 options 行)。套件會把模組與韌體放進 initramfs,在 nvidia 綁定顯示卡之前載入。
驗證:
journalctl -k -b | grep gpu_unlock
lspci -nnk -s 0000:21:00.0
要停用就拿掉開機參數那一段,移除套件也會清掉模組與設定。開機後手動載入模組,對已經被 nvidia 綁定的卡沒有用。暫停到記憶體會讓顯示卡斷電,喚醒自動重解一次,多花約一秒。休眠不支援。Hopper、Blackwell 與 50 系的安全鏈完全不同,這套方法不在射程內。
HN 網友反應(74 則)
作者查吉塔親自回了十幾則,重點有六組。
第一,實測有效。有人拿改裝 48GB 的 4090 當工作機,留言說整體省三成時間,這條路比改驅動程式乾淨太多。作者說自己兩張 3090 跑了一個月,水冷,沒事。
第二,功耗與散熱是真正的代價。同一個人在不同回覆裡把話講完:要完整發射率就拉到 450W,原廠散熱本來就很緊繃,水冷才壓得住。風冷在預設功耗只拿部分增益。另一則實測在 200W 上限只多 25%,體感增益約 7–8%。
第三,到底加速了什麼。作者澄清解的是熔加輸出 FP32 那組指令,不是所有 16 位元運算都翻倍。受惠的是 prefill、擴散模型、FlashAttention。decode 與 INT8 無感。
第四,衍生版一串。Ada(4090/4070)有人 fork 出一版,圖靈架構也有,NVENC 同時編碼數限制解除、卡對卡加速補丁、Windows 版都被挖出來。這是一整套刀法,不是單一漏洞。
第五,新架構短期別想。作者明說 50 系先別抱希望,開機架構與安全層整個換掉。5090 改裝傳聞多半是封裝問題,不是效能,市面沒看過有量的改良版。
第六,情緒。既然注定缺卡好幾年,官方不如直接放行。人工限速的公司活該被逆向。
一頁懶人包
手機看不到內嵌頁的話,直接開:https://static.blog.derekhsu.net/gpu-unlock-guide.html(備援:https://derek-static.pages.dev/gpu-unlock-guide.html)
