二手RTX 3090凭借24GB显存和高性价比,已成为家庭运行AI模型的首选。然而,Nvidia在GeForce系列显卡中设定了一项限制:在执行常见的AI数学运算时,其速度仅为全速的一半。目前,多个开源项目声称已能解除RTX 20、30及40系列显卡的这一限制。

该限制源于张量核心(Tensor Cores)的工作机制。当执行FP16或BF16乘法并在高精度FP32中累加结果时,GeForce显卡的指令速率仅为FP16累加模式的一半。由于大多数训练及部分推理任务依赖这种FP32累加模式,这一限制影响了性能表现。相比之下,基于相同芯片构建的工作站显卡(如RTX A6000)则以全速运行此模式。

开源方案与性能提升

GitHub用户Zagitta发布了针对RTX 30系列的“gpu-unlock”工具。该Linux内核模块在Nvidia驱动加载前介入,重写GPU速度选择寄存器并重置显卡,无需刷写VBIOS或修补驱动。

在功耗限制为450W的RTX 3090 Ti上测试显示,BF16吞吐量从87.5 TFLOPS提升至157.4 TFLOPS,TF32性能几乎翻倍,FP16提升35%。

随后,开发者将该方案适配至其他架构。针对RTX 4090的“gpu-unlock-ada”版本,将FP16指令速率从165.6 TFLOPS提升至331.6 TFLOPS。需注意,这是原始指令发出速率,独立用户在实际矩阵负载下的测试显示,性能提升幅度介于12%至34%之间。

对于较老的Turing架构,“turing-unlock”主要针对RTX 2080 Ti。在一款改装为22GB显存的显卡上测试,FP16矩阵运算速度提升了36%至64%。因Turing架构不支持硬件级BF16,故无相关数据。

实际影响与风险提示

对普通玩家而言,游戏极少涉及此类运算,因此几乎感知不到差异。在AI应用中,聊天机器人的令牌生成速度受限于内存带宽而非计算能力,因此提升微乎其微;但提示词处理速度提升了14%至36%。图像生成和模型微调因高度依赖FP32累加的张量运算,将成为最大受益者。

目前,该方案主要支持Linux系统,仅有少数实验性Windows端口在特定硬件上验证通过。

关于安全性,Zagitta认为硬件损坏风险极低,因为显卡原有的节流保护和电源管理机制仍然有效。但“turing-unlock”文档则更为谨慎,警告称张量核心功耗巨大,满负荷运行可能存在损坏硬件的风险。