Exploit de firmware remove trava de IA em placas RTX 20, 30 e 40

Modders liberam a taxa nativa de matemática de matrizes em GPUs GeForce, mas o ganho em uso real fica bem abaixo do pico dobrado da RTX 4090.

Por Redação Capital Gamer · · 3 min de leitura
Placa de vídeo GeForce RTX 4090 em fundo preto, vista do cooler e da lateral do dissipador

Imagem: reprodução/Tom's Hardware

Modders descobriram como remover, com um exploit de firmware, o limite que a Nvidia impõe à velocidade de cálculo de IA nas placas GeForce RTX das séries 20, 30 e 40, segundo o VideoCardz, em reportagem repercutida pelo Tom's Hardware. Sem a trava, a RTX 4090 dobra o pico de taxa dos tensor cores, e a RTX 3090 Ti ganha até 80% em multiplicação de matrizes.

O ganho em carga real é menor do que o pico sugere. A velocidade de resposta de chatbots praticamente não muda, porque depende da banda de memória.

Qual é o limite

Nas três gerações, a Nvidia faz a matemática com acumulação em FP32 rodar na metade da taxa da acumulação em FP16, conforme as próprias especificações da empresa. As placas profissionais Turing e Ampere não têm essa restrição. O desbloqueio devolve a taxa nativa às GeForce, o que pode acelerar o processamento de prompts e a geração de imagens.

Três projetos, três módulos

Cada projeto tem seu módulo Linux não oficial, e há builds experimentais para Windows que seguem outra abordagem. O gpu-unlock cuida da Ampere e lista as séries GA102, GA103, GA104 e GA106. O gpu-unlock-ada, um fork para a arquitetura Ada, cobre a RTX 4090 e, em caráter experimental, a 4090 D, a 4070 Ti Super e a 4060 Ti 16GB. O turing-unlock, adaptado do gpu-unlock, funciona com a RTX 2080 Ti.

O que os testes mostram

Na RTX 4090 do desenvolvedor do fork Ada, o pico foi de 165,6 para 331,6 TFLOPS em FP16 e de 165,5 para 330,6 TFLOPS em BF16. Num benchmark de multiplicação de matrizes feito por outro dono, as medianas do cuBLAS GEMM melhoraram 12% a 34% e até 20%, respectivamente. Uma RTX 4070 Ti no Windows teve +80,1% e +76,4%, diferença que pode vir de limites de potência.

Uma RTX 3090 Ti, testada com driver da Nvidia modificado, marcou +35% em FP16, +80% em BF16 e +94% em TF32. Na Ampere, o prefill de LLMs melhorou de 14% a 36%, e difusão e FlashAttention aceleraram. O decode de LLMs e o INT8 ficaram praticamente iguais.

Uma RTX 2080 Ti com 22GB de memória modificada, modelo OEM da Dell limitado a 250 W, teve ganhos de 36% a 64% em FP16, conforme o tamanho da matriz. O BF16 não muda na Turing, que não tem esse hardware. O README do KohakUnlock afirma que o projeto não promete o dobro de velocidade em aplicativos ou jogos.

Como a falha funciona

Os limites ficam em dois registradores que o driver não consegue escrever. O firmware Booter assinado da Nvidia, no coprocessador SEC2, tem um estouro de buffer na pilha que permite executar código em modo "heavy secure". A falha foi descoberta depois que a empresa publicou um Booter de depuração criptografado com uma chave pública de teste conhecida. Uma única escrita de 4 bytes libera a taxa total, e o módulo reinicia a placa antes que o driver da Nvidia assuma.

Zagitta, mantenedor do gpu-unlock, disse no Hacker News que o projeto é seu, mas que os exploits não são ideias dele. Segundo ele, o suporte à RTX 40 está em andamento, e Hopper e Blackwell ficam fora do escopo dessa abordagem.

Os riscos são declarados pelos próprios autores. O turing-unlock avisa que a modificação pode danificar o hardware. O KohakUnlock lista travamento da placa ou do PC, falha de boot, corrupção de dados e dano físico.

Restam lacunas: placas GA103 e a maioria das Ada e Turing seguem sem teste. Nenhum projeto tem roadmap, e o gpu-unlock pede relatos de compatibilidade de quem tiver as placas.

Fonte: Tom's Hardware. Texto produzido com apoio de inteligência artificial a partir da fonte citada e revisado pela redação.

Leia também