【免费下载链接】OpenDLSS-NRA Vulkan reimplementation of NVIDIAs DLSS 5 Neural Rendering network, bit-exact against the original.项目地址https://gitcode.com/gh_mirrors/op/OpenDLSS-NR点击查看免费下载OpenDLSS-NR 是一个用 Vulkan 重写 NVIDIA DLSS 5 Neural RenderingNR网络的开源项目输出与原版逐字节一致。借助它我们能看清一个反直觉的事实DLSS 5 NR 根本不是超分器——输入和输出是同一个分辨率它靠噪声和时间历史重新画出画面。 先分清NR 不放大它重画听到 DLSS多数人想到的是 DLSS-SR低分辨率渲染再用神经网络放大到高分辨率。但 DLSS 5 里的 NRNeural Rendering是另一种物种NVIDIA 称它为generative neural rendering生成式神经渲染网络输入和输出同分辨率——网络内部没有任何输出放大引擎先正常渲染一帧NR 网络在此基础上重新渲染这一帧从注入的高斯噪声出发结合色调、结构、皮肤等条件信息生成细节同时按风格设置调整 tone、structure、skin 的表现。先看项目文档里的实测对比WebGPU 端2048×1152左NR 关闭右NR 开启皮肤纹理、织物纤维、帽檐边缘的额外细节都是网络长出来的而不是从低分辨率插值出来的。一个容易忽略的点网络看到的不是 HDR 场景而是一个 LDR 的display proxy带软肩、sRGB 编码的近似显示帧细节见 docs/frame.md。 网络内部71 块 Transformer 的 U-Net根据 README.md 与 docs/network.md 的描述这套网络对应 DLSS-NR 310.8.0的关键参数是71 个 shifted-window Transformer 块按 U-Net 结构分布在6 个池化层级上最底层是一个全局 ViT能对整张图的 token 做全局注意力全程FP8E4M3激活 FP16 累加跑在 tensor core 上权重共141 MiB。结构可以概括为下采样压上下文 → 底部全局注意力 → 上采样恢复并与每层细节做 skip 连接[全分辨率 32ch] block 0 ──────────── skip ──────────── block 70 → head │ 2×2 池化 ▲ 2× 上采样 [1/2 分辨率 32ch] blocks 1-4 ───── skip ───── blocks 66-69 │ 池化 32→64 ▲ [1/4 分辨率 64ch] blocks 5-8 ───── skip ───── blocks 62-65 │ …逐级到 1024 通道… ▲ [1/32 分辨率 1024ch] blocks 31-38全局 ViT 注意力每个块都是固定套路FFN → QKV 投影 → 窗口注意力 → 输出投影外加两条带学习的缩放 skip 连接。有两个设计点特别值得注意四相移位窗口8×8 token 的窗口网格有 4 种原点偏移0/4 像素让窗口边界不会按固定模式切断细节——比常见 Swin 的两相交替更细缩放余弦注意力q、k 先做余弦归一化再乘学习的每头 scale使注意力分数有界。这正是 FP16 累加器和 3 位尾数权重量化能成立的前提也省掉了 softmax 里通常的减最大值操作。 它如何生成一帧16 进 4 出网络每个像素吃16 条 f32 输入吐4 条 f32 输出docs/network.md输入 lane内容0–23 条高斯噪声按帧播种4–6当前帧 display proxy中心化后7–9重投影后的上一帧输出时间历史10–11风格 id / 128、局部色调12–14结构 / 皮肤 / auto-mask 条件三元组上图为 NR 关闭时的渲染帧正是送入网络的当前帧 proxy 的来源。而输出的 4 个通道分工非常明确通道 0–2RGB 残差——按 1/4 强度叠加到 proxy 上clamp(proxy rgb / 4, 0, 1)这就是生成出来的细节通道 3时间混合 logit——网络逐像素自己判断该保留多少上一帧历史weight sigmoid(logit) × blendScale再与重投影历史做混合。也就是说最终画面 神经结果与上一帧历史按网络自己的逐像素权重混合。细节不是从上一帧查来的而是从噪声里生成的——这就是生成式神经渲染和帧插值的本质区别。完整的帧流水线运动矢量、历史反馈、时间环见 docs/frame.md。 逐字节复刻为什么 bit-exact 是最难的部分docs/numerics.md 里有一句话概括了 OpenDLSS-NR 的核心难点网络的身份不是实值函数而是数值发布舍入的序列。两个实现哪怕数学上完全等价只要舍入顺序不同输出的画面就会肉眼可见地不同。所以这个项目复刻的不是同样的结果而是同样的舍入序列每个跨越 kernel 边界的值都是E4M3 字节或IEEE half且必须先舍入到 half、再舍入到 E4M3tensor core 使用与 NVIDIA 原生相同的mma.syncE4M3 指令、同样的 K 序全部 75 个块边界逐字节比对通过。为守住字节级一致项目用四条独立路线互相印证路线位置说明GLSL 参考路线shaders/cooperative-matrix FP8 GEMM可读的规范PTX 快速路线scripts/ptx/Python 生成 PTXmma.sync、cp.async 环、无 barrier 计数链CPU 参考src/reference.cpp逐 kernel 二分定位第一个出差异的地方WebGPU 浏览器移植ports/browser-webgpu/没有 tensor core、没有 FP8同样字节一致最惊人的是浏览器版WebGPU 上没有 tensor core、没有 FP8 类型连exp2/fma的精度都不保证它却复现出了完全相同的字节。代价是速度512×512 约 72 ms而 Vulkan 侧只要 2.7 ms。⚡ 性能如何241 个 dispatch 跑完一帧整网每帧固定241 个 dispatch。实测RTX 4070 SUPER40 帧取最小值docs/execution.md分辨率耗时达成算力768×7682.8 ms105 TFLOP/s1920×10807.8 ms131 TFLOP/s2560×144012.6 ms137 TFLOP/s3840×216029.3 ms133 TFLOP/s低分辨率瓶颈是stage 太小填不满 GPU 241 次发射的固定开销1080p 以上转为算力受限约为该卡 FP8 张量峰值的一半。调度层的亮点是无 barrier 的计数链producer 自旋等待 device counter加看门狗兜底详见 docs/execution.md。 如何跑起来前置要求Windows NVIDIA AdaRTX 40 系或更新的 GPU驱动需暴露VK_KHR_cooperative_matrix、VK_EXT_shader_float8等扩展。powershell -File scripts\fetch_tools.ps1 [-Npm] # 一次性拉取工具链 powershell -File scripts\build.ps1 # 构建 dlss5vk 工具常用子命令build\dlss5vk.exe bench --model dir --width 768 --height 768 build\dlss5vk.exe profile --model dir --width 768 --height 768 build\dlss5vk.exe parity --model dir --fixture dir # 与原始捕获逐字节比对仓库还带一个基于 Filament 的交互式 demodemo/按N开关 NR、T开关时间历史可直接复现本文的对比效果。⚠️权重需要你自备仓库只提供网络结构与推理代码模型目录manifest.json 11 个 E4M3 stage 文件共 141 MiB不随仓库分发目录布局见 docs/weights.md。项目与 NVIDIA 无关联、不含任何 NVIDIA 软件。❓ 常见疑问QDLSS-SR 超分在哪里NR 与 SR 是两张不同的网络本仓库只实现了 NR整个管线里不存在输出放大——这正是标题问题的答案。QU-Net 里的上采样不算超分吗不算。那是 decoder 内部把特征恢复到全分辨率的内部上采样输入输出分辨率始终不变。Q浏览器版值得用吗ports/browser-webgpu/ 的价值在于可读性与可验证性它是把硬件特性逐条换成纯软件写法的活教材证明字节级一致性来自规范而非硬件。想深挖任意一层文档索引在 docs/README.mdnetwork.md 是图numerics.md 是精确性契约execution.md 是调度frame.md 是 demo 的帧流水线。赞分享【免费下载链接】OpenDLSS-NRA Vulkan reimplementation of NVIDIAs DLSS 5 Neural Rendering network, bit-exact against the original.项目地址https://gitcode.com/gh_mirrors/op/OpenDLSS-NR点击查看免费下载相关推荐DLSS-NR on AMD 为什么不是兼容层HIP 内核与内存布局的从零重写路线揭秘DLSS NR on AMD 为什么不是兼容层HIP 内核与内存布局的从零重写路线揭秘 DLSS NR on AMD 是一个开源项目让 DLSS 5 Neu为什么 DLSS-NR on AMD 的帧生成需要伪装A 卡 DLSS Frame Generation 完整解析为什么 DLSS NR on AMD 的帧生成需要伪装A 卡 DLSS Frame Generation 完整解析 DLSS NR on AMD管理工具名为DLSS5-Feeder 神经渲染 3 选 1Deep Fried Chicken、RenoDX、OptiScaler DLSS-NR 终极横评DLSS5 Feeder 神经渲染 3 选 1Deep Fried Chicken、RenoDX、OptiScaler DLSS NR 终极横评 DLSS5上一篇cognee快速上手10分钟搭建你的第一个AI应用下一篇Higress Helm安装终极指南Kubernetes环境高效部署实战创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考 SEO 优化官网定制响应式建站教育培训建站