Hardware

RTX 4090 FP16 throughput doubles with new Linux kernel module

TL;DR

A new Linux kernel module by developer JustAResearcher removes the FP32-accumulate tensor math cap on GeForce cards, significantly increasing performance for certain AI workloads.

A developer known as JustAResearcher has published a Linux kernel module on GitHub called gpu-unlock-ada that removes a firmware limit on certain tensor math operations. This limit caps FP32-accumulate tensor math on GeForce cards, a restriction not found on workstation hardware using the same silicon. On an RTX 4090, FP16 performance with FP32 accumulation rose from 165.6 to 331.6 TFLOPS, while BF16 went from 165.5 to 330.6 TFLOPS. An RTX 4070 Ti SUPER also saw FP16 performance double from 95.0 to 189.9 TFLOPS at a 240 W cap.

The module works by running a firmware transaction before the Nvidia driver loads to flip a speed-select setting. This method does not require a VBIOS flash or a patched driver. While the unlock provides significant gains for BF16 diffusion and training, it does not affect gaming performance. For local large language models, reports say prompt prefill can see gains of 14 to 36%, though token generation remains limited by memory bandwidth.

The project builds on Zagitta's gpu-unlock for Ampere cards. On an RTX 3090 Ti, BF16 performance reportedly climbed from 87.5 to 157.4 TFLOPS and TF32 went from 42.6 to 82.6 TFLOPS. The module is Linux-only and requires a full power-off for the initial attempt. The developer points out that using multiple graphics processors or handling display outputs has not been tested, while the software blocks itself from executing on datacenter or workstation hardware.