Nova-Core v5: suporte a arquiteturas Blackwell e Hopper é refinado no Kernel Linux 7.0

Driver Nova-Core v5 traz refinamentos para GPUs Blackwell e Hopper em Rust no Kernel 7.0!

Escrito por
Emanuel Negromonte
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre...
  • O patch v5 do driver Nova-Core em Rust corrige falhas de polling, melhorando a eficiência energética no Kernel Linux 7.0.
  • GPUs NVIDIA Blackwell e Hopper recebem suporte a endereçamento DMA de 52 bits para lidar com grandes volumes de memória.
  • A implementação utiliza o recurso inline_const do Rust para validar o alinhamento de memória em tempo de compilação.
  • O engenheiro John Hubbard (NVIDIA) separou o protocolo MCTP em um módulo próprio para evitar conflitos no subsistema DRM.
  • As novidades devem chegar na versão estável do Kernel Linux 7.0, prevista para meados de abril de 2026.

O engenheiro John Hubbard enviou a quinta rodada de patches para o driver nova-core, focando na integração das GPUs Hopper e Blackwell ao Kernel Linux 7.0. Esta nova versão (v5) não apenas expande o suporte ao hardware mais recente da NVIDIA, mas introduz refinamentos críticos em Rust que aumentam a segurança do código e corrigem comportamentos de polling ineficientes encontrados nas versões anteriores. O patch v5 consolida o uso de tecnologias modernas de firmware, como o FSP (Firmware System Processor), preparando o ecossistema Linux para a próxima geração de aceleração de inteligência artificial.

O que isso significa na prática

A versão v5 traz uma melhoria direta na eficiência energética e na estabilidade do sistema. Em versões anteriores do patch, certas verificações de estado do hardware eram feitas em um ciclo de espera ininterrupto, o que consumia ciclos de CPU desnecessariamente. O patch agora introduz intervalos de sono reais nessas operações.

Para o usuário, isso significa que a inicialização das GPUs Blackwell e Hopper no Kernel Linux 7.0 será mais “limpa”. A organização do código também foi aprimorada, separando o protocolo de comunicação MCTP em um módulo dedicado, o que facilita a manutenção e evita conflitos com outros drivers que utilizam o mesmo padrão de gerenciamento de dispositivos.

Detalhes da implementação

Uma das mudanças técnicas mais significativas nesta versão é a introdução da função const_align_up no núcleo de Rust do Kernel Linux 7.0. Seguindo uma recomendação de Miguel Ojeda, líder do projeto Rust for Linux, Hubbard habilitou o recurso de compilador inline_const. Isso permite que o alinhamento de memória necessário para os buffers de firmware seja validado em tempo de compilação, prevenindo erros de execução que poderiam derrubar o sistema.

O patch também resolve uma duplicação de código entre as camadas de abstração de hardware (HAL) das GPUs GH100 (Hopper) e GB100 (Blackwell). Agora, o driver utiliza a arquitetura do chipset para selecionar automaticamente a máscara de DMA correta — expandindo para 52 bits nos modelos mais novos — e para localizar o espelho de configuração PCI, que mudou de endereço nas arquiteturas recentes.

Mudança TécnicaImpacto no Kernel Linux 7.0
Refatoração MCTPProtocolo isolado em módulo próprio para maior clareza
Correção de PollingSubstituição de esperas zero por intervalos de sono (sleep)
Recurso inline_constValidação de alinhamento de memória em tempo de compilação
Unificação de HALRedução de redundância entre Hopper e Blackwell

Curiosidades e bastidores da discussão

A discussão na LKML em torno da v5 destaca a maturidade que o desenvolvimento em Rust está alcançando no Kernel. A transição de “esperas ativas” (busy-polls) para intervalos de sono foi um ponto de atenção, com os desenvolvedores percebendo que o uso de Delta::ZERO era uma escolha subótima para a gestão de energia.

Além disso, houve um esforço de engenharia para lidar com a natureza híbrida das GPUs modernas. Hubbard incluiu suporte para detecção automática de imagens de firmware ELF de 32 e 64 bits. Isso é necessário porque, embora as GPUs Blackwell sejam máquinas de 64 bits de última geração, alguns componentes de boot inicial (FMC) ainda operam em ambientes de 32 bits, exigindo que o Kernel Linux 7.0 seja versátil o suficiente para interpretar ambos os formatos sem intervenção do usuário.

Quando isso chega no meu PC?

Com o envio da v5 e a base de código sincronizada com o linux.git mais recente, o driver está pronto para a janela de mesclagem do Kernel Linux 7.0. Se o cronograma de Linus Torvalds seguir o padrão, a versão estável será lançada em abril de 2026.

As distribuições que focam em performance e hardware novo, como Arch Linux e as versões de desenvolvimento do Fedora, devem disponibilizar o suporte poucas semanas após o lançamento. Para servidores de produção que utilizam aceleradores Blackwell, a recomendação será a migração para kernels 7.0.x assim que as primeiras revisões de manutenção forem publicadas.

Compartilhe este artigo
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre GNU/Linux, Software Livre e Código Aberto, dedica-se a descomplicar o universo tecnológico para entusiastas e profissionais. Seu foco é em notícias, tutoriais e análises aprofundadas, promovendo o conhecimento e a liberdade digital no Brasil.