开发者 Zagitta 在 GitHub 上放出的开源项目 gpu-unlock,一周左右攒下约 8100 个星标、850 多个 fork。它做的事情很具体:解除 GeForce RTX 30 系显卡在 FP16/BF16 Tensor Core 指令上的速率限制,不刷 VBIOS,也不改英伟达驱动。
GeForce 版 Ampere 卡在“半精度输入、FP32 累加”这类矩阵乘法指令上只跑一半速率,gpu-unlock 的目标是把这条指令的发射速率翻倍,覆盖 GA102、GA103、GA104、GA106 四颗核心。
怎么做到的
gpu-unlock 是一个 Linux 内核模块,作者描述为把 CMP 矿卡解锁器里的 V67/PLM 技术,和此前 UEFI 方案“在驱动加载前动手”的时机结合在一起。模块在英伟达驱动接管显卡之前完成解锁,写入速度选择器,再做一次功能级复位(FLR)。
这样做的好处是维护成本低。它既不是 UEFI 程序,也不是打过补丁的驱动,英伟达每出一版新驱动,用户不用重新打一遍补丁。
作者给出的 RTX 3090 Ti 测试条件是 8192³ 稠密 GEMM、450 W 功耗、FP32 累加,取五次采样中位数:
| 输入精度 | 解锁前 | 解锁后 |
|---|---|---|
| FP16 | 87.46 TFLOPS | 118.39 TFLOPS |
| BF16 | 87.50 TFLOPS | 157.41 TFLOPS |
| TF32 | 42.58 TFLOPS | 82.61 TFLOPS |
用户回报的 BF16 提升因卡而异:RTX 3070 为 73% 到 81%,3080 10GB 为 70% 到 73%,3060 12GB 约 80%,3090 在 25% 到 67% 之间,最低值来自一张功耗上限 225 W 的卡。这些数字来自各报告者自己的基准,不能直接横比。
落到实际负载上
矩阵运算密集的环节会明显变快,大模型推理的预填充阶段报告提升 14% 到 36%,扩散模型和 FlashAttention 也能受益。大模型逐词生成受显存带宽限制,INT8 负载走的是另一条路径,这两类基本不变。对比过输出的用户报告,解锁前后的计算结果逐位一致。
所以“算力涨八成”主要是理论峰值。日常跑本地大模型聊天,体感最明显的是长提示词读入更快,出字速度变化不大。游戏帧率是否受影响,目前没有独立测试。
对国内二手卡玩家
国内本地部署圈子里,二手 3090 和显存魔改的 3080 20GB 一直是性价比选择。项目的兼容表里就有一行 “RTX 3080 20 GB(显存改装)”,报告提升 56% 到 59%,说明魔改卡也能吃到这次解锁。
门槛在系统上。模块目前只支持 Linux,提供 Arch、Debian/Ubuntu、Fedora 系的安装包,需要在内核启动参数里显式开启;开机后再手动加载无效。Windows 用户只能看社区的 UEFI 移植版,例如 3070 Ti 目前只在那条路线上验证过。
作者列出的限制也不少:
- 挂起到内存后会重新解锁,多花约 1 秒,休眠不支持;
- 解锁复位时接显示器的卡会短暂黑屏;
- 个别卡的固件停不下来时,要求先断电再重试;
- OEM 版 3080 Ti 解锁后 BF16 仍是半速,GA103 暂无报告。
项目以 GPL-2.0 协议开源。改变显卡出厂限速是否影响保修,README 没有讨论,英伟达目前也没有公开回应,打算在主力机上试的用户需要自己权衡。
参考来源:gpu-unlock 项目 README、香港手機遊戲網 GameApps.hk、CocoLoop;GitHub 仓库数据核对星标与 fork 数量,README 基准表核对 TFLOPS 及各型号提升区间。