PCEVA,PC绝对领域,探寻真正的电脑知识
打印 上一主题 下一主题
开启左侧

DSR和VSR的是是非非——从IO法则的角度看

[复制链接]
跳转到指定楼层
1#
仙賢戀軒 发表于 2014-12-27 20:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
点击数:14378|回复数:31
本帖最后由 仙賢戀軒 于 2014-12-27 21:56 编辑

不管是DSR也好,还是VSR也罢,Virtual Resolution真的是一个非常糟糕的想法,至少现在来说。

在开始整篇文章之前,我觉得有必要关于IO法则稍微罗嗦几句,所谓的IO法则,就是input-output法则,也正是在其他行业经常说的投入产出原则。简单的来说,我们对于一个事物的评价应该只从投入和产出两个角度进行判断,除此以外的因素都不应该成为判断因素。现在这样说总是难免有些抽象空泛,不过没有关系,我们可以在看完了DSR和VSR之后再返回来看看。

在不多久之前,nVidia发布了新一代Maxwell架构旗舰显卡GTX 980,伴随着新显卡同时进入市场的还有一个成为DSR的功能,号称可以在低分辨率的显示器上享受到4K级别的画质;无独有偶,作为AMD最近的一个大动作——Omega驱动中也带来了一个称为VSR的功能,也可以输出更高分辨率的图像。为了更好地理解这个新添进来的功能,我们得先解决一些最基础的问题。

What,什么是DSR和VSR?

DSR全称为Dynamic Super Resolution,VSR全称为Virtual Super Resolution。顾名思义,两个功能都是在分辨率上做文章,从驱动的层面使显卡输出一个更高分辨率的图像,然后再把图像压缩显示到分辨率上我称DSR和VSR为“功能”,是因为这个东西确实谈不上什么技术,也不是什么新想法,虚拟分辨率由来已久,甚至如果你擅长配置系统的话单单Windows本身就可以达到这个效果,更不要说那些致力于虚拟化方案的厂商了。

Why,为什么要用Virtual Resolution?

说到底,提高分辨率可以达到两种效果:
1)显示更多内容。这点很好理解,更高的分辨率意味着更多的显示面积,自然也就可以渲染出更多的场景和物体(只要游戏本身支持)。
2)追求更好的细节。要理解这点,我们得从画面的生成开始看。就D3D来说,大致上的流程是这样的:输入顶点;计算索引;确定相机、光源、材质;计算光栅;输出结果,说的简单点,就是确定怎么把3D的模型显示在2D的显示器上。在这个过程中,一些相对不重要或者体积不够大的模型会在插值和光栅化等变换计算中被弱化,导致最终显示出的结果不够清晰(实际上锯齿也是这样产生的)。那么开了Virtual Resolution之后,虽然显示器的物理像素并没有发生变化,但是在整个pipeline中把所有模型进行放大,最后再压缩显示到屏幕之上,这样也就变相削弱了由于前述过程中带来的弱化。实际上,最早的抗锯齿SSAA也就是来自于这个简单粗暴的方法。



How,如何使用DSR和VSR功能?

由于两个功能都是通过驱动层面进行的,因此你没有办法使用另一家的功能。

对于DSR功能而言,Fermi以来几乎所有的nVidia显卡都可以支持,如果需要开启,只需要在驱动中稍加设置:



DSR最多支持4x native resolution,对于绝大多数1080p显示器的玩家而言,也就是可以支持到4k(3840x2160)分辨率。

对于VSR而言,由于高分辨率输出需要大量的计算能力和更高的带宽,因此AMD对适用范围进行了一定的限定:



如果需要开启,同样也只需要在驱动中稍加设置:



在开启了相应的功能之后,你就可以在分辨率设置中见到更高分辨率的选项了。

福兮祸之所伏,有得必有所失



这是我家里最常用的电脑,相比于公司办公用的电脑,无论是硬件还是软件都更胜一筹,但是却总觉得没有公司电脑用起来方便,为何?因为公司的电脑是双显示器,单显示器的短板如此明显:过小的显示区域导致窗口难免重叠,比如这张截图。如果我在右边开一个网页,再打开QQ,窗口就会重叠,那么我就需要一直切换,这样不仅不方便,还降低了输入的容错率。因此当驱动支持VR的时候,我突然觉得这将会是一个很实在的功能,因此我迫不及待尝试了一下:



肯定有不少人会说,效果看起来很惊艳啊,除了Dock里的icon还不支持这样的分辨率以外,各种效果都很出色。然而不得不提出的是,我是故意先放出的这张图的,虽然这是实际渲染出来的效果,但是我的显示器可是1080p的,物理分辨率就这么些,因此我看到的效果是这样的:



我想已经不言自明了吧。。。
由于这里我使用的是一张nVidia的GTX 760,所以我赶紧换了张AMD的R9 290试试:



一如之前VSR List中所述,R9 290在1080p下最多支持到1800p的VR,效果相较而言似乎更好一些,但也只是五十步笑百步而已。

说到底,如今的Windows对高分辨率的支持还是非常有限,甚至正是Windows一直以来的文字渲染模式阻碍了其往高分辨率的方向发展。另外,又同时受限于物理分辨率的限制,直接导致了放大桌面的效果十分惨烈。看来,这种歪门邪道的方法并不成功,还是老老实实添置一个显示器更简单实在。

虽有赴汤蹈火心,怎料寒雨伴凄风

经过了前面的尝试,我的一个美好愿望破灭了。好吧,也许本来这个功能本来也不适合日常类的工作,那么游戏呢?

我其实不太经常拿电脑玩游戏的,而且我更喜欢玩模拟类的游戏,说实话很难拿来做量化测评,不过没关系,咱们先跑跑看效果呗。

哦,差点忘了介绍一下硬件配置了:
I5 3570k @ default
z77 fatal1ty professional
4G x2 @ 2133 CL 9
GTX 760 2G & R9 290 4G
Samsung 830 128G with Win8.1 pro
Kingston HyperX 240G with Steam



Sid Meier’s Civilization: Beyond Earth,因为也是新出的游戏,最近倒是有经常玩,所以自然就先想到了拿这个游戏尝试。因为刚才刚刚换上了290,所以我们不妨就先看看290在VSR到1800p下的表现吧。



好像单这么看没什么区别,只是由于分辨率被放大了,文字显得稍小了一些。那就进游戏看看吧。




首先还是这个老问题,文字太小了,虽然分辨率还在可以辨认的范围内,但是看起来已经很费劲了。不过说到画面么,好像模型细节确实锐化程度提高了。放大试试。。。




这样对比就应该比较明显了,模型的细节部分还是有比较大的区别,线条锐化程度也提高了不少呢。那么放大呢?像之前说的,如果分辨率达到了一个更高的程度,应该就可以绘画出更多的场景或者物体,这个游戏行不行呢?




好像。。。结果是否定的。由于视角已经拉到了最远的地方,所以场景细节自然也是无从谈起了。
以上是R9 290在VSR下面的尝试效果,那么GTX 760在DSR中的表现又如何呢?



Title Screen好像差不多一个意思嘛。。。由于画面相对比较简洁,也看不出个所以然来。不过由于DSR支持到2160p,相比于之前VSR的1800p更大了一些,因此文字的尺寸被进一步挤压,现在已经几乎看不清楚了。不过同样滴,随着分辨率的进一步提升,模型的细节按理说应该更加清晰不是,所以咱们赶紧进游戏看看。。。



发生了奇怪的事情。。。一开始我以为是哪里操作不可学,但是我重复试验了好几次,不管是新建游戏还是读取进度,都无一例外地在读条完成后停止工作。那看来这个问题就比较麻烦了,因为单单从现在的情况来看根本无法确定问题的来源,可能是系统抽风、游戏悲剧、驱动脑残甚至显卡损坏。

初次跨马斩八百,奈何自损三千人

一来是为了搞清楚到底哪里存在问题,二来之前的尝试并没有涉及量化比较,因此我必须找另一个游戏进行实验,而且这个游戏最好能有Benchmark以便比较。本来也一共就没有多少游戏,不过有幸的是正好有一个游戏符合这些要求——古墓丽影9。

说实话,这个游戏我一共大概只玩了3个小时,原因很简单,画面抖动让我觉得想吐。想来大概是由于两个原因,一个是我平时使用的GTX 760在全特效下没法完全流畅,另一个就是这游戏似乎没有动态模糊。本来只是觉得特价挺便宜就买了,现在能在测评上用到也算完全体现了价值。




设置基本如图了,简单来说就能能开的就开。另外特意插一句,之后为了进行比较,将会把这里的FXAA改成SSAA,届时会有详细说明。



首先我跑了一个最基础的Benchmark,作为GTX 760而言,平均41.2的FPS在正常范围内,那么我就基本可以确定显卡、驱动和系统应该不存在什么问题。

这里我先就SSAA稍微罗嗦几句。
SSAA全称为Super Sampling Anti Aliasing,顾名思义,从取样上解决锯齿问题。实际上这是从问题产生的根本直接出发的一种简单想法。所谓的锯齿,实际上来自于Down Sampling的过程,说得简单一点就是图像在从生成到分割成像素的过程中分割得不够充分,导致图像在边界上不够平滑。那么就很容易直接想到,既然是Down Sampling不够充分导致的锯齿,那我只要增加采样的频率和密度不就可以让画面显得平滑柔顺了,这也就是SSAA的概要了。在理解了这样一个想法之后,SSAA的特点也就变得很显而易见了:只要给予足够的Sampling频度,画质的提升将会是非常明显的;同样的,这样的一个过程需要消耗巨大的运算能力,硬件的压力会直线上升,因此SSAA在经历了许多年的发展后不断地致力于计算上的优化,也同时衍生出了如同MSAA等思路类似但是性能权衡的方案。



好了,继续咱们的实验,由于之前提到过的,DSR和VSR的原理其实相当类似于SSAA,又正好这个游戏支持SSAA,所以咱们不妨一起对比一下和SSAA的画面到底是有多少区别。





由于理论上在1080p下的SSAA 4x也是扩大到2160p进行建模的,因此这里正好就用SSAA 4x与DSR 4k进行对比。SSAA和FXAA的效果究竟孰是孰非我说不好,可能会因人而异,但是相信DSR的胜出还是比较显而易见的。无论是模型边缘的锐度还是像素填充都明显更胜一筹。





无独有偶,VSR的效果类似于DSR,效果也同样十分明显。实际上,这不仅仅是Virtual Resolution的功劳,当我们开到一个更高的分辨率时,FXAA也是默认打开着的,所以我认为应该理解为两种AA双管齐下的效果。

那么一个问题基本上已经得到了解答,Virtual Resolution对画面的提升效果确实是十分明显,然而我们需要付出多少代价呢?我的硬件是不是可以胜任呢?继续咱们的测试。

之前的Benchmark中,我们看到GTX 760跑出了41FPS的帧数,咱们再看看其他设置之下的成绩。




恩。。。意想不到的事情又发生了。。。不过没关系,咱们姑且再看看290在VSR下的性能表现。





对于这个数字来说,大致上就是情理之中,意料之外了。

最终总结

首先肯定会有人提出疑问,为什么在Benchmark中最高正好是60FPS?很简单,因为我开了V-Sync。那么这时候肯定又要有人问了,你测试性能怎么可以开垂直同步呢?这样不是测不出性能了么?

实际上,这才是我们需要去考量的第一个问题。一如我在文章标题的角度说的,“从IO法则的角度看”,也就是说这次我们是从输入输出的角度去看,我不会纠结于数值,只从主观感受的角度来看。

首先,就R9 290来说,1080p的Benchmark可以在垂直同步下最低帧都能跑到56帧,这也就意味着290在这一的情况下完全胜任这个游戏;及至VSR,帧数在28到42之间徘徊,实际上这也就意味着游戏会产生不流畅的感觉了。相比于SSAA 4x的情况,性能表现的差距也已经不容忽视了。更有甚者,290在1080p全特效下不需要满载;而到了VSR下却才勉强可以玩。

我们再来看看GTX 760的DSR,这个对比就太可怕了。正常情况下,760的表现是基本可以玩,然而到了DSR下FPS瞬间跌到了10以下,虽然有可能是因为显存不够或者其他某些原因,但是直接的表现就是完全没法玩了。

为了提升一些画质,这两张卡的表现真可以说是“一死一残”了。我们再来看两张卡的定位,GTX 760是nVidia阵营中甜点级别的显卡,此次壮烈牺牲;R9 290是AMD阵营的次旗舰卡,此次也是差强人意。这就意味着,如果你买了一张高端卡,旗舰或者次旗舰的,也许你还可以一战;至于中端卡用户甚至入门卡用户,还是趁早洗洗睡吧。另外,运行的游戏也得是要求不那么高的,我们可以看到虚拟分辨率会带来巨大的性能牺牲,如果你只是勉强满足1080p的需求,那还是不要去轻易尝试了。另外,在文明的测试中,更是发生了程序崩溃的情况,虽然具体的原因我暂且不得而知,但是至少这也告诉我们这里面有很多的潜在问题,或许这里面还有其他更多的BUG,只是这次没有遇到而已。

从大环境上来说,整个产业似乎还没有为4K的到来而准备好:显卡的运算性能仍然不足、Win OS本身也没有为4K显示做好准备,这便使得现在即便是在原生4K下活动都存在许多阻碍,更不要说把4K的数据压缩到1080p的面板上了。

所以,不管是DSR也好,还是VSR也罢,Virtual Resolution真的是一个非常糟糕的想法,至少现在来说。如果你是抱着折腾或者钻研的想法,那么这将会是一个很好的课题方向;如果你是为了日常使用,还是不要做过多的期望比较好。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 7活跃度 +190 收起 理由
1634814279 + 5 我很赞同
左脚湿了 + 5 很给力!
fastone + 5 赞一个!
iFive + 50 很给力!
einstein86 + 20 我很赞同
Pale_Cheung + 5 很给力!
hyenax1950xtx + 100

查看全部评分

2#
仙賢戀軒  楼主| 发表于 2014-12-27 21:06 | 只看该作者
所有截图都是1080p分辨率 点击放大;

另外,关于性能具体分析的咱们下一次在做,正好让我想想方案。。。
3#
eraser666 发表于 2014-12-27 21:58 | 只看该作者
既然都不是什么技术问题

AMD连分辨率都不放开

无法理解
4#
fastone 发表于 2014-12-27 22:44 | 只看该作者
性能啊,都是损能,怎么谈性能
5#
franckham 发表于 2014-12-28 00:53 | 只看该作者
仙大的帖子总是那么专业。我甚至从中看出了人生的哲理。
6#
fastone 发表于 2014-12-28 01:38 | 只看该作者
本帖最后由 fastone 于 2014-12-28 01:41 编辑

至少从目前看,DSR和VSR用处除了美工外,一般游戏玩家用处不大,你物理PPI是固定的,改变不到,就算一个是1920X1080,一个是DSR/VSR下的4K,如果显示器屏幕大小固定,实际看到的屏幕画质没啥差别,除非你喜欢截图对比那就另外谈论了。而且美工也就是图片处理方便点。
7#
qq1035700396 发表于 2014-12-28 02:07 | 只看该作者
用来看高分辨率图片,不知是否会更清晰
8#
tomoyo 发表于 2014-12-28 14:28 | 只看该作者
上多屏,简单粗暴实用
9#
einstein86 发表于 2014-12-28 17:47 | 只看该作者
能这么说么,这是给中外那些耍不起4K显示器又要4K截图的某丝们的装B神器好吧。

某丝:快看哥的4K截图,多漂亮~
众人:哇,膜拜土豪……

这么说貌似毒舌了一点。
10#
仙賢戀軒  楼主| 发表于 2014-12-28 17:59 | 只看该作者
einstein86 发表于 2014-12-28 17:47
能这么说么,这是给中外那些耍不起4K显示器又要4K截图的某丝们的装B神器好吧。

某丝:快看哥的4K截图,多 ...

其实4K显示器很便宜的。。。如果只看分辨率的话,2000大洋就够了
11#
einstein86 发表于 2014-12-28 18:21 | 只看该作者
仙賢戀軒 发表于 2014-12-28 17:59
其实4K显示器很便宜的。。。如果只看分辨率的话,2000大洋就够了

TN屏不敢用啊不敢用,23.8寸瞎眼专业户。所以按照28寸+来看,5000买个显示器对于多数玩家还是有点压力的。
12#
keysis 发表于 2014-12-28 18:21 | 只看该作者
要求比较低的游戏还可以,而且要不追求看清文字。。
13#
Suser 发表于 2014-12-28 19:23 | 只看该作者
本帖最后由 Suser 于 2014-12-28 19:25 编辑

文章很专业,但基本能看懂

把更高分辨率的图像压缩后放到当前物理分辨率的显示器

我觉得这个属于专业定制功能,只能用于特定的图像处理用户

花费再多资源始终无法绕过物理分辨率的终端输出,面向大没有任何意义
14#
fastone 发表于 2014-12-28 20:07 | 只看该作者
Suser 发表于 2014-12-28 19:23
文章很专业,但基本能看懂

把更高分辨率的图像压缩后放到当前物理分辨率的显示器

是的  物理PPI是固定的
15#
毛毛猫 发表于 2014-12-29 12:52 | 只看该作者
为啥我开了没看到有搞分辨选项呢
16#
红色狂想 发表于 2014-12-29 18:08 | 只看该作者
用来浏览美图网站不错
17#
fisherwei 发表于 2014-12-29 23:21 | 只看该作者
DSR/VSR应该和Mac OS X的HiDPI原理差不多吧?

如果是的话,不一定非要提高,也可以降低分辨率。
28寸4k显示器接到Mac上,原生分辨率是看不清字的(太小),用 1080p HiDPI 就好很多。
但是如果不开启HiDPI,直接输出1080p,画面又花的难看。
18#
仙賢戀軒  楼主| 发表于 2014-12-30 01:10 | 只看该作者
fisherwei 发表于 2014-12-29 23:21
DSR/VSR应该和Mac OS X的HiDPI原理差不多吧?

如果是的话,不一定非要提高,也可以降低分辨率。

还真不是。。。

这俩东西的原理简单来说,就是楞告诉显卡这个显示器是4K的,然后该怎么干活还怎么干活

至于倒HiDPI,实际上这应该是OS层面的东西,不是一个显卡驱动就可以搞定的
19#
lilunxm12 发表于 2014-12-30 07:35 | 只看该作者
VSR懒得装290X还没试,DSR试了下,文字跟TXAA一样特别糊,比FXAA糊的多,在这个问题解决之前,没啥实际意义
20#
fisherwei 发表于 2014-12-30 08:55 | 只看该作者
仙賢戀軒 发表于 2014-12-30 01:10
还真不是。。。

这俩东西的原理简单来说,就是楞告诉显卡这个显示器是4K的,然后该怎么干活还怎么干活

HiDPI 可以比如一台老macbook pro, 1280x800的屏幕,可以用HiDPI改出1920x1200来,然后适配到屏幕上是1280x800看起来窗口、字都变小了。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部