2026 年 10 月 25 日——GitHub 开发者 Zagitta 于 10 月 18 日发布开源工具 gpu-unlock,在 NVIDIA 官方驱动加载前改写显卡内部速度选择寄存器,解除 GeForce 消费级显卡在部分 Tensor Core 运算上的半速限制,无需超频、无需修改官方驱动;作者实测 RTX 3090 Ti 的 BF16 矩阵乘吞吐从 87.50 TFLOPS 提升至 157.41 TFLOPS(约 +80%),社区衍生分支在 RTX 4090 上测得 FP16/BF16 指令发射速率接近翻倍。截至发稿,主仓库星标数已达 4774。
解锁原理:驱动加载前改写速度选择寄存器
据开发者说明与媒体报道,GeForce 消费级显卡在执行采用 FP32 累加的 FP16 与 BF16 运算时,速率约为 NVIDIA 专业显卡的一半,这是长期存在的产品线算力隔离策略。gpu-unlock 的目标正是把这半速限制解除到对位专业卡的水平。
技术路线上,gpu-unlock 是一个 Linux 内核模块,随 initramfs 在开机早期加载,赶在未修改的 NVIDIA 官方驱动绑定显卡之前完成解锁:它复用此前 CMP 矿卡解锁工具的 V67/PLM 技术,向显卡写入速度选择寄存器(SS0 写入 0x88888888 选择满速 BF16,SS1 写入 0x8 启用 IMLA4),随后执行 PCIe 功能级复位(FLR),再交由原版驱动正常接管。项目文档明确该方案既不是 UEFI 应用,也不是打过补丁的 NVIDIA 驱动,因此 NVIDIA 发布新版驱动时无需重新适配。
该模块默认不做任何事,需在内核命令行中显式开启(
gpu_unlock.targets=all或指定 PCI 地址)才会对未绑定的 GA102/GA103/GA104/GA106 芯片执行解锁,对应 RTX 30 系主力型号。内存休眠唤醒后模块会自动重新解锁,但休眠(Hibernation)场景暂不支持。
实测数据:指令发射速率翻倍,分卡增益 25% 至 81%
作者在 RTX 3090 Ti 上以 450 W 功耗墙运行 8192³ 稠密矩阵乘(GEMM),取五次采样中位数,FP32 累加口径下的结果如下:
| 输入类型 | 解锁前 | 解锁后 | 增幅 |
|---|---|---|---|
| FP16 | 87.46 TFLOPS | 118.39 TFLOPS | +35.4% |
| BF16 | 87.50 TFLOPS | 157.41 TFLOPS | +79.9% |
| TF32 | 42.58 TFLOPS | 82.61 TFLOPS | +94.0% |
社区用户报告的分卡 BF16 GEMM 增益(各报告自带基准,口径不完全可比):
| 显卡 | 增益 | 备注 |
|---|---|---|
| RTX 3090 Ti | +68% 至 80% | 作者基准卡 |
| RTX 3090 | +25% 至 67% | 最低值来自 225 W 功耗墙限制的卡 |
| RTX 3080(10 GB) | +70% 至 73% | — |
| RTX 3070 | +73% 至 81% | — |
| RTX 3060 12 GB | 约 +80% | — |
| RTX 3080 Ti 20 GB(OEM,GA102-250) | 无增益 | 解锁流程完成,但 BF16 仍为半速 |
应用层面,社区报告矩阵密集型负载受益:LLM 预填充(prefill)阶段提速 14% 至 36%,扩散模型与 FlashAttention 亦有加速;受显存带宽限制的 LLM 解码(decode)与 INT8 运算基本无变化。多份对比报告显示解锁前后计算输出逐位一致(bit-identical)。兼容性方面,已有单机四卡、亮机卡直连显示器、vfio-pci 虚拟机直通等场景的成功报告。
RTX 4090 指令速率接近翻倍,实际 GEMM 增益打折
10 月 23 日,开发者 JustAResearcher 基于该项目推出面向 Ada 架构的分支 gpu-unlock-ada,宣布支持 RTX 4090,其实测结果如下:
| 指标 | 解锁前 | 解锁后 | 增幅 |
|---|---|---|---|
| RTX 4090 FP16(FP32 累加) | 165.6 TF/s | 331.6 TF/s | 约 2 倍 |
| RTX 4090 BF16(FP32 累加) | 165.5 TF/s | 330.6 TF/s | 约 2 倍 |
| RTX 4090 独立复现 FP16 | 160.4 TF/s | 320.4 TF/s | 约 2 倍 |
| RTX 4070 Ti SUPER FP16(240 W) | 95.0 TF/s | 189.9 TF/s | 约 2 倍 |
| RTX 4070 Ti SUPER TF32 | 47.49 TF/s | 94.51 TF/s | 约 2 倍 |
需要注意口径差异:上述数字是寄存器层面的指令发射速率,并非应用级提速。同一 RTX 4090 独立复现中,真实 cuBLAS GEMM 中位吞吐按矩阵形状不同,FP16 增益为 12% 至 34%,BF16 在两种形状下为 16% 至 20%,在 4096³ 形状下基本无变化;INT8、dp4a 与标量 FP32 保持基线不变,RTX 4070 Ti SUPER 上的 FP8(E4M3)GEMM 实测增益仅 0.3%。Ada 分支文档明确表示这是一次配对运行的测量结果,不是整应用提速,也非长期稳定性测试结论。
分支还包含实验性目标:RTX 4070 Ti SUPER(单卡验证)、RTX 4060 Ti 16 GB(单卡通过解锁门控但尚无对照基准)、RTX 4090 D(实验性开关)。Windows 侧另有社区贡献的 MSI RTX 4070 Ti UEFI 参考移植,记录了一次手动引导下 cuBLAS FP16 +80.1%、BF16 +76.4% 的结果,但未随项目分发固件或自动安装器。
现状与限制
项目热度与衍生情况:主仓库 gpu-unlock 于 10 月 18 日创建,截至 10 月 25 日获 4774 星标与 529 次派生;Ada 分支创建于 10 月 23 日,获 1901 星标;另有社区仓库提供 RTX 3090 的 Windows UEFI 移植引导方案。中文媒体于 10 月 24 日开始跟进报道。
风险与限制方面:两个项目均自述处于实验性质,Ada 分支的实验目标仅经过单卡验证;解锁要求显卡在驱动加载前处于全新固件状态,首次尝试需完整断电冷启动;若卡上固件未正常停止,模块会保留其可能仍占用的 DMA 缓冲区并拒绝强制卸载。内核模块与打包代码采用 GPL-2.0-only 许可,所用 NVIDIA 固件仍受其自身条款约束,仓库不分发预构建固件,全部在本地构建并校验 SHA-256。
举手提问