英伟达在2026年1月6号发布了DLSS4.5技术栈,其中包含超分和补帧两个部分。
超分部分:
DLSS4.5超分同样是基于transformer模型,据英伟达官网描述:‘’这个第二代模型是迄今为止最精密的模型,其计算能力达到第 一代 Transformer 模型的五倍,并已在一个大幅扩展的高保真数据集上完成训练。该模型对每个场景都有更深入的理解,并能更智能地利用游戏引擎的像素采样和动态数据,从而呈现具有更佳光照、更精细边缘和动态清晰度的图像。‘’
计算能力达到第 一代 Transformer 模型的五倍,算力需求多少倍呢,翻看老黄最新的技术文档可以看到确实,20-30系在fp16精度下运行性能档使用L预设运行时间在3倍左右,使用M预设在两倍左右。
K,J预设为一代Transformer,A-F模型预设为原先的CNN模型。
这里做一点简单的计算来演示一下这表怎么用,以及更换超分模型预设对帧率的影响。
以3060为例,使用310.2.1的dll库使用transformer模式预设J、K时使用性能模式,目标分辨率2k,原始分辨率为1280x720,gpu瓶颈下帧率为60fps的情况下,帧间隔为16.666ms,此时超分花费2.39ms,原始画面渲染花费14.27ms。替换为310.5也就是最新的dlss4.5的库,使用m预设超分花费为5.05ms,帧间隔变为14.2766+5.05=19.3266ms,帧率降低到51.74fps。
如果K预设下超分的目标帧率为120fps,则经过计算替换为M预设后为90.96fps。
而40系和50系具有fp8精度的算力,相比fp16速度翻倍,当然会有一定的精度损失,不过在transformer模型的推理中,fp8的精度还是相当可用的。
这里也简单给出3060和5080在对于2k目标分辨率下,K预设的目标帧率Fk替换为M预设后能达到的帧率Fm,可以看到5080在使用四分之一精度跑M预设和使用半精度跑K预设的速度就基本一直了,
式子也很简单Fm=1000/(1000/Fk-k预设超分开销时间+m预设超分开销时间)
这种影响对于帧间隔来说是线性的,不过对于帧率来说就是非线性的了,在高目标帧率区间的影响会更大,不过本质上是因为帧率对于时间是非线性的。
这里也给出FSR2超分和9000系运行FSR4超分的典型时间
所以对于本次dlss4.5的更新来说,手持40系或者50系显卡的玩家无疑是最大的获益者,对这些用户而言,使用dlss4.5的游戏在2k或者4k高分辨率的时候使用原先推荐的性能档位超分并不会使帧率降低,或者说每帧多花0.3-0.4ms对比原先会非常有限的降低,而获得更高的图像稳定性和质量。而对于30系显卡的用户,使用性能档时就会有一个相对较大的额外开销,不过也不是没的选,毕竟K预设也是可以强制使用的。
同时L预设的加入对于中低端的显卡运行高分辨率其实也是一个利好,这句话是对所有用户都是适配的。
这个时候可能就要有小伙伴出现疑问了,为什么开销更加高的L预设会是一个利好呢。
对于DLSS超分来说,原始画面边长缩放比DLAA 1.0,质量档0.66,平衡档0.58,性能档0.50,超级性能0.33。经过一个简单的计算你就可以发现,性能档的原始渲染像素量是质量档的百分之57左右。而超级性能档渲染的原始像素量仅为性能档的43.56%。看似只差一个档位,实际上这一个档位的差距比上面两个档还大。
这也就意味着,对于同一个游戏来说,目标2k分辨率使用性能档和4k的超级性能档其原生渲染的分辨率是相同的1280x720,如果这个超级性能档位画质真如宣传一般的话,大量游戏的4k分辨率的性能开销需求就会有一个大幅的下降。
使用dlss swapper把2077的超分文件替换为最新的310.5,开启dlss指示器,然后打开frameview记录帧率和延迟,2k目标分辨率低光追预设,ryzen7 255+5060laptop,ddr5 5600 8x2
默认推荐预设模型下,使用超级性能L和性能档会使用M预设,而DLAA,质量,平衡档位会使用K预设。
DLAA,preset K,28fps,pcl64ms
质量档,preset K,55fps,pcl 51.8ms
平衡挡,preset K,71fps,pcl 37.23ms
性能档,perset M,79fps,pcl 32.36ms
超级性能档,此时出现cpu瓶颈,perset L,96fps,pcl 29.10ms。
在原先,这个超级性能档位无论是用F预设还是K预设或者J预设都是满屏幕乱闪或者糊的没法用的状态。但是这个L预设实测确实是可用的,这张非常极限的由480p放大到1440p的画面完全不像是一张480p该有的细节和稳定性表现。那这时候哪怕对于老卡来说超分的压力变为原来的三倍,但是原始渲染像素量的压力仅原先的百分之50不到,最后帧率依然是增加的。特别对于现在2k屏普及4k屏也不少的当下。
这次的改进绝 对是相当的大的,真是思路要打开,对于你来说,只要获得一个优异的画面表现,你管他这画面是怎么来的,超分的开销的增长用另一种思路来说,上采样为什么不能是渲染管线的一部分,从CNN到一代transformer模型到这次增加参数量的二代transformer模型,从原本的只是代替TAA,用相同的开销,将大部分分配给原始帧小部分分配给上采样,到现在对于中低端卡来说73开甚至64开。
如果用更低分辨率的原始帧配合-lod偏移用更大的超分模型就能或得高保真的最终图像,那何乐而不为呢。
本次模型的另外一项主要改进为训练和推理均使用线性色彩和亮度空间,使得高光和暗部场景的精度更高,改善高对比度场景画面表现。
补帧部分:
DLSS4.5的帧生成就是小升级了,
依然是出于管线末端,需要输入后帧信息
技术路径依然是插中间帧然后重排序,对于多帧生成来说,会先运行一个比较大的模型插出一帧,再运行小模型插出后续多帧。
其典型时间为
对于新增的6倍帧生成来说,我曾经搓出的通式依然适用
老黄官网的春秋笔法属于是玩明白了,用4xfg对比6xfg的延迟,我46ms对比53ms,我这里简单计算了一下对应原生帧和2xfg下的同配置各项参数,通过一定尝试很简单就可以判断出是5090在跑,其补帧开销才能对应上延迟差异,如果关闭补帧帧率为54,延迟26ms,开启2xfg状态下,帧率为99,延迟38ms,实际上48ms和53ms都属于是相对不可玩状态。
用延迟换帧率在一两百帧的时候很明显是不划算的
而动态多帧生成倒是有点意思,其实际生效形式还有待测试,不过按照最简单的想法,只要rendertime高于frametime的设定值,就运行补帧和重排,不过这种瞬时的frametime跳变本身也是一种卡顿,性能狗有个指标叫jank,定义是只要一帧的frametime高于其前后帧的两倍,就会被记为卡顿,而使用局部的fg就是在人工创造jank,希望不是这种情况。
这个功能在春节前后就会正式上线,后续也会通过实测拉个数据表来详细看一下。