跪拜 Guibai
← All articles
GitHub · Open Source

Ada GPU Unlock Lifts RTX 4090 Tensor Throughput to 331 TF/s

By miofly ·
Read original on juejin.cn ↗ Google Translate ↗ Alt translation

A consumer RTX 4090 can now deliver FP16/BF16 tensor throughput comparable to far more expensive pro cards, changing the cost math for small-scale deep learning and inference. The price is experimental firmware, initramfs-level setup, and a real chance that a driver update, Secure Boot policy, or unverified board breaks the unlock.

Summary

gpu-unlock-ada loads before NVIDIA's driver, a kernel module that rewrites SM speed-selector registers on consumer Ada cards. On an RTX 4090 it raises FP16/FP32 and BF16/FP32 tensor throughput from about 165 TF/s to 331 TF/s; a measured RTX 4070 Ti SUPER at a 240W power limit goes from 95.0 to 189.9 TF/s. INT8 and dp4a operators stay at baseline, so the change is limited to the tensor path the speed selector controls.

Only RTX 4090, RTX 4070 Ti SUPER, and RTX 4060 Ti 16GB are verified. The module must be built into initramfs and enabled with a gpu_unlock.targets kernel parameter; AD103 and AD106 cards need an exact PCI address plus an experimental flag. Firmware assets come from NVIDIA's 610.43.03 driver source with SHA-256 verification, and the unlocked state survives a PCIe function-level reset. A 4096^3 BF16 GEMM shows no gain, which makes the 2x headline workload-dependent, and the first install requires a cold boot because WPR2 may block a warm reboot.

Takeaways
— gpu-unlock-ada loads as a Linux kernel module before NVIDIA's driver and rewrites SM speed-selector registers on supported Ada cards.
— RTX 4090 FP16/FP32 and BF16/FP32 tensor throughput goes from about 165 TF/s to 331 TF/s.
— RTX 4070 Ti SUPER measured at 95.0 to 189.9 TF/s under a 240W power limit.
— INT8 and dp4a operator throughput stays at baseline; the unlock targets the tensor path only.
— Only RTX 4090, RTX 4070 Ti SUPER, and RTX 4060 Ti 16GB are verified; other Ada cards are unsupported until tested.
— The module needs to be installed in the initramfs and activated by a gpu_unlock.targets kernel command-line parameter.
— AD103 and AD106 cards require a single exact PCI address and gpu_unlock.ad103_experimental=1; the all keyword skips them.
— The unlocked state persists across a PCIe function-level reset, and boot parameters can be made persistent via GRUB.
— The firmware generation extracts assets from NVIDIA 610.43.03 driver source and verifies them with SHA-256.
— A 4096^3 BF16 GEMM shows almost no gain, so the 2x headline applies only to certain matrix shapes.
— First activation needs a cold boot; warm reboot may leave WPR2 set and cause the firmware to refuse a second run.
— The repository gained 692 stars in 24 hours and had three open issues about compatibility and long-term stability.
Conclusions

The selective result is the tell: INT8 and dp4a stay flat while FP16/BF16 doubles, exactly what a speed-selector override should do.

Basing the unlock on NVIDIA's own signed Booter assets makes it reproducible and auditable, but also couples it to NVIDIA's firmware pipeline; a driver source change, Secure Boot policy, or firmware update can break the signature chain.

Shape-dependent GEMM results, including a 4096^3 BF16 case with no gain, mean the 2x headline cannot be used to plan capacity; only per-shape benchmarks can.

The star count and open issues together suggest early adopters are already running experimental firmware on production-class GPUs before long-term stability is known.

Concepts & terms
SM speed selector (SS0/SS1)
Registers inside a GPU streaming multiprocessor that set frequency multipliers for different operator classes. Writing SS0 to 0x88888888 and SS1 to 0x8 enables full-rate tensor operators on Ada cards.
Booter payload
A packaged GPU firmware boot code segment plus its signature sequence. It runs in protected mode and carries the FWSEC-FRTS and V67 signatures needed to perform register writes.
PCIe FLR
PCIe Function Level Reset, a reset that clears device state without removing power. The unlock firmware triggers it after changing registers so the NVIDIA driver starts from a clean GPU System Processor state.
WPR2
A protected register region status flag on the GPU. Once firmware initialization completes, a nonzero WPR2 makes the firmware reject a repeated unlock sequence; cold boot clears it, warm reboot may not.
GSP
GPU System Processor, the GPU's management coprocessor. It runs firmware and provides the interface the NVIDIA driver uses to manage the GPU.
Source: juejin.cn ↗ Google Translate ↗ Backup ↗