Hardwares WebStory

DLSS 5 ganha versão de código aberto que roda em RTX 40 e navegadores

OpenDLSS‑NR traz versão open‑source da renderização neural do DLSS 5, roda em Vulkan, mostra tempos rápidos em RTX 40 e tem versão WebGPU para navegadores.
Imagem de: DLSS 5 ganha versão de código aberto que roda em RTX 40 e navegadores

O desenvolvedor MAAN lançou o OpenDLSS-NR, uma versão de código aberto que recria, com Vulkan, a rede de renderização neural do DLSS 5 da NVIDIA.

A tecnologia já desperta interesse na comunidade de modificações. O projeto reproduz os 71 blocos da rede neural presente na versão 310.8.0 do runtime/DLL do DLSS-NR.

Segundo MAAN, o processamento é idêntico bit a bit ao da NVIDIA. Essa precisão inclui as saídas das etapas intermediárias, não apenas a imagem final. Os detalhes e as demonstrações estão na publicação de MAAN no X.

Como o OpenDLSS-NR recria o processamento do DLSS 5

O DLSS Super Resolution reconstrói imagens em resolução maior a partir de imagens menores. Já o Neural Rendering do DLSS 5 trabalha sobre um quadro já renderizado.

Nesse processo, a IA acrescenta detalhes e ajusta iluminação, materiais e traços faciais para melhorar a aparência da imagem.

O OpenDLSS-NR reproduz esse trabalho com uma arquitetura U-Net. Ela combina transformers que processam regiões deslocadas da imagem com um Vision Transformer global, ou ViT.

A rede usa ativações em FP8 e acumulação em FP16, formatos numéricos empregados nos cálculos. Os pesos do modelo, dados que orientam o processamento, ocupam cerca de 141 MiB.

A implementação também inclui rotinas PTX otimizadas para os Tensor Cores da NVIDIA, além de shaders de computação em GLSL.

Testes mostram o desempenho na RTX 4070 SUPER

MAAN publicou medições preliminares feitas com uma RTX 4070 SUPER. Os tempos abaixo correspondem à execução da rede completa em cada resolução.

ResoluçãoTempo de execução
768x7682,8ms
1920x10807,8ms
2560x144012,6ms
3840x216029,3ms

Esses números são os menores tempos registrados em uma sequência de 40 quadros. Portanto, não representam a média de tempo por quadro.

Ainda assim, as medições mostram que a implementação funciona em placas com arquitetura Ada Lovelace, usada na série RTX 40.

O suporte oficial da NVIDIA ao DLSS 5 está nas GeForce RTX 50. A empresa tem planos de incluir as RTX 40 no futuro.

Versão WebGPU funciona sem Tensor Cores

O OpenDLSS-NR também inclui uma implementação independente em WebGPU, para uso em navegadores. Ela reproduz a mesma rede sem depender de Tensor Cores ou de suporte nativo a FP8.

Isso pode viabilizar o uso da tecnologia em outras arquiteturas de GPU e plataformas. O desempenho, porém, ainda é bem inferior ao da implementação nativa otimizada.

Segundo MAAN, a versão WebGPU leva 72ms para processar uma imagem de 512x512 pixels. Na versão nativa otimizada, o tempo fica em cerca de 2,7ms.

Vovô cowboy NR ON
Comparação entre DLSS 5 NR desligado e ligado. Fonte: OpenDLSS-NR.

Projeto ainda não é um mod pronto para jogos

O repositório não distribui os pesos proprietários do modelo da NVIDIA. Esses arquivos precisam ser fornecidos separadamente pelo usuário.

Além disso, o OpenDLSS-NR é uma implementação independente. Por enquanto, não é um mod pronto para instalar em jogos existentes.

O projeto inclui um renderizador de demonstração baseado no Filament, do Google, com vetores de movimento e uso de dados de quadros anteriores. Ele não implementa o DLSS Super Resolution.

Disponível no GitHub sob licença MIT, o OpenDLSS-NR é um avanço interessante para a comunidade de modificações, que segue testando a renderização neural recente da NVIDIA em placas RTX antigas e outros hardwares.