OpenDLSS-NR réimplémente DLSS 5 Neural Rendering sous Vulkan
TL;DR
- OpenDLSS-NR, publié par maanHimself sous licence MIT, réimplémente le réseau Neural Rendering de DLSS 5 de Nvidia en Vulkan avec parité bit à bit.
- L'architecture reproduit un U-net Swin/Vision Transformer de 71 blocs sur six niveaux de pooling, 141 MiB de poids, activations FP8 E4M3 et accumulation FP16.
- Mesures sur RTX 4070 SUPER : 2,8 ms en 768×768, 7,8 ms en 1080p, 12,6 ms en 1440p, 29,3 ms en 4K.
Un développeur sous le pseudonyme maanHimself a publié OpenDLSS-NR, une réimplémentation Vulkan du réseau Neural Rendering de DLSS 5 de Nvidia, revendiquant une parité « bit-exact » entre ses sorties intermédiaires et finales et celles du système d'origine. Le dépôt est publié sous licence MIT.
L'architecture reproduit un U-net Swin/Vision Transformer de 71 blocs réparti sur six niveaux de pooling, avec des activations FP8 (E4M3) et une accumulation FP16 sur tensor cores, pour 141 MiB de poids. Le réseau prend en entrée des frames rendues avec bruit gaussien, une reprojection de la frame précédente et cinq scalaires de conditionnement ; il sort quatre canaux float32 par pixel, un résidu RGB plus un logit de mélange temporel. Entrée et sortie partagent la même résolution : il s'agit de « generative re-rendering, not upscaling », pas d'upscaling classique.
Les mesures publiées sur RTX 4070 SUPER vont de 2,8 ms en 768×768 à 7,8 ms en 1920×1080, 12,6 ms en 2560×1440 et 29,3 ms en 3840×2160, mesurées comme minimum sur 40 frames et 241 dispatches. Deux chemins de code coexistent, l'un en GLSL avec GEMMs FP8 cooperative-matrix, l'autre en PTX avec `mma.sync` chaîné sans barrières. Un port WebGPU complémentaire fait tourner le même pipeline dans le navigateur sans tensor cores ni FP8, à 72 ms en 512×512 contre 2,7 ms en natif, en conservant la parité bit à bit par rigueur de spécification.
Le dépôt insiste sur sa position vis-à-vis du fournisseur d'origine : « This project is not affiliated with, endorsed by, or supported by NVIDIA. It contains no NVIDIA software, weights, headers, or instructions for obtaining them. » Les utilisateurs doivent fournir eux-mêmes leur répertoire de poids et sont responsables des licences applicables. Côté matériel, le projet exige un GPU Ada ou plus récent et plusieurs extensions avancées, dont VK_KHR_cooperative_matrix, VK_NV_cooperative_matrix2 et VK_EXT_shader_float8. La sortie s'ajoute à une série nourrie de publications open source IA que nous suivons cette semaine.
Article original publié par github.com
Lire l'article original →Titre original : OpenDLSS-NR réimplémente DLSS 5 Neural Rendering en Vulkan avec parité bit à bit, sous MIT