IT之家 10 月 25 日消息,英伟达已经上市一段时间的 GeForce RTX 30 系列(代号安培,Ampere)显卡,显然还有大量尚未释放的计算潜力。GitHub 用户扎吉塔(Zagitta)开发了一款名为 GPU Unlock 的开源新项目,可以解除安培架构显卡上部分人为设置的性能限制,在特定负载下,张量核心的计算吞吐量几乎可以翻倍,而且不需要修改英伟达驱动,也不用永久刷写显卡的 VBIOS。
IT之家注意到,这个项目专门针对一项指令发射速率限制:在使用 FP32 累加的 FP16/BF16 张量核心运算中,消费级安培显卡的运行速率相比专业卡更低。解除这项限制之后,工具就能释放显卡硬件本身就具备的额外计算性能。
有意思的是,GPU Unlock 建立在早前针对英伟达 CMP 加密货币挖矿显卡的相关研究之上。它把 CMP 项目的固件解锁技术和一套提前初始化方案结合起来,依靠一个 Linux 内核模块,在英伟达显卡驱动加载之前执行操作。该模块修改对应的硬件速度选择寄存器,执行一次功能级重置(FLR),之后原版驱动就可以正常初始化显卡。
这也意味着用户每次更新驱动新版本时,都不用再给驱动打补丁。开发者目前标注支持 GA102、GA103、GA104、GA106 型号 GPU,覆盖了 RTX 30 系列里的大部分型号,不过并不是每一张显卡都一定能兼容,也不保证都能获得性能提升。
性能提升的幅度可以相当可观。根据项目 GitHub 仓库放出的基准测试数据,一块功耗上限设置在 450W 的 RTX 3090 Ti,在使用 FP32 累加的稠密矩阵乘法(GEMM)测试中结果如下:
这类提升并不只出现在 RTX 3090 Ti 上。一位 RTX 3080 Ti 用户反馈,在显卡功耗限制为 315W 的条件下,BF16 吞吐量从 71.59 TFLOPS 提升至 113.98 TFLOPS,TF32 性能从 35.65 TFLOPS 提升至 65.28 TFLOPS。还有一份 RTX 3080 10GB 的兼容报告显示,在显卡原厂 320W 功耗上限下,FP16/BF16 性能从大约 65 TFLOPS 提升到 110–113 TFLOPS。这些测试结果也在 X 平台上被广泛讨论。
那在实际应用里的表现如何?好在社区用户已经开始在真实 AI 负载下测试这项解锁功能,初步结果比较乐观。
Reddit 上一位 RTX 3090 Ti 用户在 ComfyUI 中做了跑分测试,MOSS-Image SFT BF16 吞吐量提升 58.6%,Qwen-Image 2.1 Turbo BF16 提升 57.2%,Z-Image Turbo BF16 提升 56.1%。而 INT8 精度模式下提升幅度很小,MOSS-Image SFT INT8 仅提升 0.3%。测试者同时表示,默认状态和解锁后生成的图片解码结果完全一致。
大语言模型(LLM)推理也是潜在受益场景,不过提升效果高度取决于负载类型。例如一份 RTX 3090 的兼容报告显示,vLLM 的提示词处理与推理吞吐量提升 33%,但词元(token)生成速度基本没有变化。这也很好理解,大语言模型解码环节的瓶颈往往是显存带宽,而不是张量核心的原始计算吞吐量。
还有一项值得关注的进展是实验版 Windows 实现方案,它不再使用原先的 Linux 内核模块,而是基于 UEFI 的方式。开发者记录了 RTX 3090 的成功案例,BF16 计算吞吐量提升约 82.5%。但这个版本仍然属于实验性质,只适配特定硬件,并不是通用可用的 Windows 正式版本。
该方案同样存在明显局限。GPU Unlock 不会提高显存带宽,不会解锁更多 CUDA 核心,也无法让所有负载自动提速。至少有一份 RTX 3080 Ti 20GB 的反馈显示,解锁流程执行成功,但 BF16 性能没有出现预期提升,说明效果并不通用。
游戏方面,英伟达的 DLSS 技术同样会用到张量核心,但目前没有可靠证据证明 GPU Unlock 可以提升游戏帧率或是缩短 DLSS 的运行耗时。只有当任务本身调用了这些受影响的指令和累加模式时,才有可能获得收益。所以,这些亮眼的计算跑分,不能等同于游戏帧数会同步上涨。
即便如此,对于 RTX 30 系列显卡持有者来说,GPU Unlock 仍是一个很有吸引力的新尝试,尤其是那些把显卡用于本地 AI 推理、图像生成以及其他高计算负载场景的用户。这个项目目前还处在实验阶段,但不用永久改动硬件,就能从现有显卡里挖出可观的额外性能,确实很有吸引力。
热门跟贴