Un grupo de modders encontró la forma de quitar el límite de media velocidad que Nvidia impone en tareas de IA a las GPU GeForce RTX 20, 30 y 40, usando un exploit de firmware, según informó VideoCardz. Sin esa restricción, la RTX 4090 alcanza el doble de su tasa tensor máxima y la matemática de matrices de la RTX 3090 Ti mejora hasta 80%. En las demás tarjetas la ganancia varía.
Las cargas reales mejoran bastante menos de lo que sugiere el doble de la RTX 4090. La velocidad de generación de tokens de un chatbot queda prácticamente igual, porque depende del ancho de banda de la memoria.
En todas las generaciones GeForce afectadas, Nvidia fija un límite que, según sus propias especificaciones publicadas, ejecuta la matemática con acumulación FP32 a la mitad de la tasa con acumulación FP16 de cada tarjeta. Esa restricción no existe en las tarjetas profesionales Turing y Ampere. El desbloqueo devuelve a los dueños de las GeForce el rendimiento nativo en matrices, lo que acelera el procesamiento de prompts y la generación de imágenes.
¿Qué tarjetas cubre cada proyecto?
Hay tres proyectos distintos, cada uno con su propio módulo no oficial para Linux, mientras que unas compilaciones experimentales para Windows siguen otro enfoque. gpu-unlock atiende Ampere y lista los identificadores de las series GA102, GA103, GA104 y GA106. Una bifurcación para Ada, gpu-unlock-ada, cubre la RTX 4090 y, de forma experimental, la 4090 D, la 4070 Ti Super y la 4060 Ti de 16 GB. turing-unlock, adaptado desde gpu-unlock, funciona con la RTX 2080 Ti.
| Generación | Proyecto | Tarjetas con resultados reportados | Experimentales o sin probar |
|---|---|---|---|
| RTX 20 (Turing) | turing-unlock | RTX 2080 Ti (tarjetas con memoria modificada a 22 GB) | Otras GPU Turing agregadas sin probar. Solo FP16, porque Turing no soporta BF16 |
| RTX 30 (Ampere) | gpu-unlock | RTX 3090 Ti, 3090, 3080 de 10 GB, 3080 de 20 GB (memoria modificada), 3070, 3060 de 12 GB | RTX 3070 Ti y tarjetas GA103 sin probar. Una RTX 3080 Ti OEM de 20 GB sigue a media tasa |
| RTX 40 (Ada Lovelace) | gpu-unlock-ada | RTX 4090 | RTX 4090 D, 4070 Ti Super, 4060 Ti de 16 GB (experimental, una tarjeta de cada una) |
| RTX 50 (Blackwell) | Ninguno | No soportada | El desarrollador de gpu-unlock la deja fuera de alcance |
¿Cuánto más rápidas quedan?
La duplicación es de la tasa tensor máxima. En la RTX 4090 del desarrollador de la bifurcación para Ada, el rendimiento pasó de 165,6 a 331,6 TFLOPS en FP16 y de 165,5 a 330,6 TFLOPS en BF16. Según el README de gpu-unlock-ada, en el benchmark de multiplicación de matrices de un dueño independiente las medianas de GEMM con cuBLAS mejoraron solo entre 12 y 34% en FP16 y hasta 20% en BF16. Otro dato, de una RTX 4070 Ti en Windows, mostró ganancias mayores, de 80,1% y 76,4%. La diferencia podría venir de los límites de potencia.
En ese benchmark, una RTX 3090 Ti mejoró 35% en FP16, 80% en BF16 y 94% en TF32, según la prueba de un usuario con un driver de Nvidia modificado. El README de gpu-unlock recoge reportes de usuarios con ganancias en BF16 de 25 a 67% para la RTX 3090, de 70 a 73% para la 3080 de 10 GB, de 56 a 59% para la versión modificada de 20 GB, de 73 a 81% para la 3070 y cerca de 80% para la 3060 de 12 GB, aunque advierte que no son directamente comparables.
El límite de potencia "importa mucho". La cifra más baja, 25%, salió de tarjetas limitadas a 225 W. En Ampere, el prefill de modelos de lenguaje mejoró entre 14 y 36%, y la difusión y FlashAttention también se aceleraron, pero la decodificación de LLM y las operaciones INT8 quedaron "más o menos igual".
Una RTX 2080 Ti con memoria modificada a 22 GB, una tarjeta OEM de Dell limitada a 250 W, mejoró entre 36 y 64% en multiplicación de matrices FP16 según el tamaño. BF16 no cambia, porque Turing no tiene hardware para ese formato. La variante de otro usuario a 260 W mejoró 59%. Un proyecto aparte, KohakUnlock, midió en una Leadtek 2080 Ti de 22 GB una mejora de 85% en una prueba de tasa de instrucciones, con una mediana máxima de 53% en multiplicación de matrices frente a otra tarjeta igual, bloqueada.
"No es una afirmación de que las aplicaciones o los juegos vayan el doble de rápido", dice el README de KohakUnlock.
| Tarjeta | Precisión | Ganancia | Probado por |
|---|---|---|---|
| RTX 4090 | FP16 / BF16 | 12 a 34% / hasta 20% | Un dueño, Linux, 450 W |
| RTX 4070 Ti (MSI) | FP16 / BF16 | 80,1% / 76,4% | Port aparte para Windows, una tarjeta |
| RTX 3090 Ti | FP16 / BF16 / TF32 | 35% / 80% / 94% | Un usuario, driver de Nvidia modificado, 450 W |
| RTX 3090 | BF16 | 25 a 67% | Reportes de usuarios, la más baja limitada a 225 W |
| RTX 3080 de 10 GB | BF16 | 70 a 73% | Reporte de usuario |
| RTX 3080 de 20 GB modificada | BF16 | 56 a 59% | Reportes de usuarios |
| RTX 3070 | BF16 | 73 a 81% | Reportes de usuarios |
| RTX 3060 de 12 GB | BF16 | cerca de 80% | Reportes de usuarios |
| RTX 2080 Ti de 22 GB modificada (Dell) | FP16 | 36 a 64% | Desarrollador de turing-unlock, 250 W, según tamaño de matriz |
| RTX 2080 Ti de 22 GB modificada | FP16 | 59% | Un usuario, 260 W |
| RTX 2080 Ti de 22 GB modificada (Leadtek) | FP16 | 53% | KohakUnlock, mejor mediana frente a una tarjeta bloqueada |
| RTX 2080 Ti de 11 GB (ASUS, de fábrica) | FP16 | 77% | Cargador previo al arranque de haohervchb |
El README de turing-unlock advierte que la modificación "puede dañar tu hardware". KohakUnlock agrega que "puede colgar una GPU o el equipo, impedir el arranque, corromper datos o dañar el hardware".
¿Cómo funciona el exploit?
La explicación de gpu-unlock indica que los límites de tasa viven en dos registros "selectores de velocidad" que el driver del equipo no puede escribir. El firmware SEC2 "Booter" de Nvidia, que va firmado, tiene un desbordamiento de búfer en la pila que permite ejecutar código en modo "heavy secure". El fallo se descubrió después de que Nvidia publicara un Booter de depuración cifrado con una clave de prueba pública y conocida. Una sola escritura de 4 bytes con la carga V67 abre la máscara de privilegios para que el equipo fije la tasa completa, y luego el módulo reinicia la tarjeta antes de que el driver de Nvidia la tome.
El fallo de fondo lo describe Jon Pry en "A Canary in the Crypto Mine: Defeating Stack Protection in a GPU Secure Coprocessor", publicado en Zenodo en junio. El desbordamiento de pila se encontró en la CMP 170HX, en el Falcon Heavy Secure, y las constantes V67 vienen de WildFlash1st/cmp90hx-unlock. El momento previo al driver que usa gpu-unlock parece salir del cargador EFI para Windows de WildFlash1st, cmp90hx-unlock-for-windows. El uso más conocido del exploit es el CMP Unlocker para la CMP 170HX.
Zagitta, quien mantiene gpu-unlock, escribió en Hacker News que el proyecto es suyo pero que "los exploits no son ideas mías, para nada", y que el desbloqueo "solo cambia los 2 bits" necesarios.
Lo que falta por soportar
Zagitta dijo que el soporte para RTX 40 está en desarrollo y que ya hay bifurcaciones que desbloquean esas tarjetas. Agregó que Hopper y Blackwell quedan "fuera del alcance de este enfoque", al menos por ahora.
La bifurcación para Ada indica que las demás placas "siguen sin verificar" y que compartir firmware "no establece soporte para tarjetas no probadas". turing-unlock también tiene una lista de identificadores Turing sin probar. Siguen los vacíos en GA103 y en la mayoría de las tarjetas Ada y Turing. Ninguno de los proyectos publica una hoja de ruta, pero gpu-unlock está pidiendo a los dueños de GPU que envíen reportes de compatibilidad.




