PC_Shopping 板


LINE

※ 引述《ericfriendex (艾力克斯朋友)》之铭言: : → Khadgar:Virtual MVP不是会有把某些frame skip的状况吗 04/26 02:31 : → Khadgar:仔细想想就知道那根本形同作弊 04/26 02:31 : → Khadgar:跟那些加速器的差别只是他只Skip少一些而已... 04/26 02:33 : → Khadgar:话说的好听,说如果两个frame没有明显改变就不re-render 04/26 02:33 : → Khadgar:这种"看起来智慧式的"东西最容易出问题 04/26 02:34 现在对於这个作弊事件只有两个"旁证",但是这两个目前还算不上直接证据. 这两个证据是..... 1.奇数和偶数frame,相隔时间很短,但是这不只是Virtu,还有SLI和Crossfire 都会发生的,这个现象叫作micro-stuttering,很多网站都有解释.Tom's hardware, Anandtech,3D甚麽的....网路搜寻一下可以作个基本了解 但等等底下会解释为甚麽大家都会发生micro-stuttering. 以FPS的观点来看,micro-stuttering则会上下跳动 * * * * * * / \ / \ / \ / \ / \ / \ 双GPU * * * * * * * ----------------------- 单GPU 2.藉由API拦截,发现call "draw a frame"的命令数只有一半 不过我看不懂法文所以除了看截图判断,没办法重现他的测试方式...... 所以我不确定这是否是很强的证据 因为Lucid Virtu就算是个黑盒子 他也一定是 使用前 使用後 | | [ X } [ A ] | / \ [B] [C] \ / [ D ] | 这样的拆法,那麽原本拦截API的方法,要确定拦截到A或者是D,而如果拦截到B或者是C. 那麽本来数量就会只有一半了...... "为甚麽会发生micro-stuttering,以及,SLI/Crossfire/Virtu等多GPU系统的共通问题" 多重GPU系统下,必须要作的事情是把工作分摊到不同的gpu上.基本上会采用的方法有 1.AFR (Alternate Frame Rendering) AFR就是把每个frame,依序分配给不同的GPU 原先是: 111111111 22222222 3333333 44444444 111111111 22222222 3333333 44444444 111111111 --> 22222222 --> 3333333 --> 44444444 111111111 22222222 3333333 44444444 AFR就分配成: AAAAAAAAA BBBBBBBB AAAAAAA BBBBBBBB AAAAAAAAA BBBBBBBB AAAAAAA BBBBBBBB AAAAAAAAA --> BBBBBBBB --> AAAAAAA --> BBBBBBBB AAAAAAAAA BBBBBBBB AAAAAAA BBBBBBBB AFR的好处是相邻的FRAME计算量都差不多,所以有最好的负载平衡. 在赛猪公的时候分数会很好看,可是micro-stuttering的问题就是AFR造成的 目前各种系统,2GPU的几乎都预设用AFR,3/4GPU就未必是 2.SFR 同一个Frame切割成上下两半或者左右两半,然後交给各个GPU执行 基本上像是: AAAAAAAAA AAAAAAAA AAAAAAA AAAAAAAA AAAAAAAAA AAAAAAAA AAAAAAA AAAAAAAA BBBBBBBBB --> BBBBBBBB --> BBBBBBB --> BBBBBBBB BBBBBBBBB BBBBBBBB BBBBBBB BBBBBBBB 这样会有甚麽问题呢?由於任何游戏的上下半部的计算量都不均等. 所以实际上他有很严重的负载不平衡,很容易拖慢FPS,driver中会因应 计算量大小而调整分配画面的比率. SFR有没有好处?喔,有...除了不发生micro-stuttering之外,画面上半段 和画面下半段所用的贴图通常不太一样.所以AFR会爆贴图记忆体量的,SFR 会节约一点贴图.怎麽说呢?当你计算画面上半段,就不需要载入地面的贴图, 计算画面下半段 就不需要载入天空的贴图这意思 但SFR在赛猪公上非常吃亏,所以除非特定游戏不然预设多半不是SFR 3. SFR/AFR混血 用於超过2个GPU的场合.通常用在4 GPU的场合,可以分为AFR in SFR或者是 SFR in AFR这两种.简单说原理和前面AFR/SFR一样,差别在先分割画面成两块 还是先分奇偶frame...反正最後结果就类似 AAAAAAAAA BBBBBBBB AAAAAAA BBBBBBBB AAAAAAAAA BBBBBBBB AAAAAAA BBBBBBBB CCCCCCCCC --> DDDDDDDD --> CCCCCCC --> DDDDDDDD CCCCCCCCC DDDDDDDD CCCCCCC DDDDDDDD 4.区块分割,Tile Based(有正式命名嘛?) 比较类似SFR,但不是以一条线分割开来,而是把画面切成非常多个区块,这些区块 分给两个GPU计算 AABBAABBA AABBAABB AABBAABB AABBAABB AABBAABBA AABBAABB AABBAABB AABBAABB BBAABBAAB --> BBAABBAA --> BBAABBAA--> BBAABBAA BBAABBAAB BBAABBAA BBAABBAA BBAABBAA 这是ATI的独门方法.优点在负载平衡会比SFR好,也没有AFR的micro-stuttering 缺点.当然也不会节约多少显示记忆体啦. 5.由两张显示卡分别计算fsaa的MULTI-sample,再组合起来 可以称为SLI-AA or Crossfire-AA 因为SFAA是在同一个pixel内取多个sample点计算 再把颜色混合起来, 所以这多个sample点会分给两个gpu计算. 大概是这样吧 |--------------------| | | PIXEL放大版本 | 1 2 3 | | | 假定没开FSAA,那麽取样点就是O,开了就会是四周的 | O | sub-sample 1~6不等,那麽就平均分配给这些gpu计算 | | 不同的sub-sample...不过实际的位置不是在我画的地方 | 4 5 6 | | | ---------------------- 不过SLI-AA or Crossfire-AA大多数是用来提高最大的AA支援数量,极少用在 提昇效能方面 6.SLI-multiview nVidia Quadro的独家方法.说起来没甚麽...就是SLI的时候两个gpu的萤幕都可以输出, 画面范围在哪个gpu上就由谁计算.只有cad程式比较有意义. 7.每个物件分开给不同的GPU画 Lucid 的独家技术 有展示过 有没有拿来用就不知道了 基本上同一个画面可能背景给GPU 1画,前面人给GPU2画之类 然後,为甚麽AFR会造成micro-stuttering?? 基本上单一gpu的时候,fps相对很稳定,前面的图重新看一次,就如同 * * * * * * / \ / \ / \ / \ / \ / \ 双GPU * * * * * * * ----------------------- 单GPU 不幸一点的时候会发生 * * * * * * / \ / \ / \ / \ / \ / \ 双GPU --------------------------- 单GPU * * * * * * * 双GPU的最低FPS还低於单GPU. 改用时间轴而且拉长来看,上面的图则会变成是: 单GPU 1--------2-------3-------4-------5 双GPU 1--2-----3--4----5--6-----7--8-----9--10 为什麽这样喔?因为AFR下,第二个gpu要把整个framebuffer... 双GPU AFR的理想 GPU2 ------2----------4-----------6------------8------- GPU1 1-----------3-----------5------------7------------9 合成後 1-----2-----3----4------5----6-------7----8-------9 实际上 GPU2 -------22-----------44-----------66-----------88------- GPU1 / cmd leg \ copy回来的延迟 1-----------3-----------5------------7------------9 合成後 1-------2---3--------4--5---------6--7---------8--9 由於绘图指令分给第二个GPU的时候可能会比较慢.加上GPU2画好之後. 还要把frame复制回gpu1 (在上图中以22,44,66,88表示这过程) 所以合成後,2-3间比较短,3-4间却很长.如果计算每个frame之间的 时间差,会发现有一半的时间差只比单gpu的时候好一点.这个现象即为 micro-stuttering. 那这个会对玩游戏有甚麽影响呢? 基本上....单gpu的时候假如通常两个frame都相隔20ms,但是双gpu的时候 两个frame有一半相隔18ms,一半相隔6ms,那麽FPS赛猪公,虽然双GPU的fps会是 单gpu的170%, 可是体感的结果,双gpu只比单gpu最快快10%.因为是以最糟糕的两个差距 (18ms:20ms)来算的. 而且实际上.由於这个是交互出现的间隔,所以frame之间以18-6-18-6-.... 的间隔,视觉上也可能比20-20-20-20....还惨.因为 (1)人眼会注意到最差的地方 (2) 3D Game的时候,物体的移动量都是以两个相隔的frame差多少时间去算的, 可是micro-stuttering的误差,会造成应用程式误判你每个frame的移动量,以这个例子. 他会当作要以12-12-12-12(ms)去计算移动量. 那麽每个frame的移动量: 18- 6-18- 6-18 -6 ......... 12-12-12-12-12-12 快 慢 50 50 % % 每个单数frame计算的移动量多了50%,偶数的frame少了50%,本来平顺的3D游戏 的移动就会变成在抖啊抖的.........冏 总之,AFR不但让你的眼睛体感没有比单GPU好上多少,操作体感 更有可能退化到不如单GPU,所以采用双 GPU SLI/Crossfire的要有认知, 如果能改最好避免这种只有赛猪公有用的AFR,不过AMD driver没得改,nVidia 以前可以强制SFR现在不行.但是3 GPU/4GPU 通常就不采用纯AFR了(理论上可以 实际上弄下去会更惨),所以micro-stuttering的现象会减轻. 而且,我也很认真的相信,真的要享受游戏,多GPU绝对不是个好方案 一般来说双GPU建议专业使用比如程式开发者要了解双GPU有甚麽惨剧, 或者你电脑有产值可以藉由显示卡或者是GPGPU程式产生产值再说. 3~4 GPU嘛.....以这东西的实用性应该是GPU厂商付钱请我们测试, 才不需要由使用者花钱来用好吗(应该没有厂商会鸟你XD) --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.78.54
1F:推 ang728:简单易懂 推 05/09 00:56
2F:→ jk21234:以前没试过重点标色的方法 应该要改这样比较好阅读? 05/09 00:58
3F:→ dlikeayu:快出来拜神 05/09 00:59
4F:→ kill0210:还是单GPU比较实在。 05/09 01:04
5F:推 friedpig:有神快拜!!! 这次的好像有点懂 又好像不太懂... 05/09 01:09
6F:推 white4go1:Qrz 这篇比以前找到的英文讨论容易懂点 05/09 01:10
7F:推 pomelo168168:就是这样 喵 05/09 01:16
8F:推 evonre:请教一下,NV新的 Adaptive VSync 有可能是解答吗? 05/09 01:30
9F:推 Alex00611:推 05/09 01:43
10F:推 Bohm:写得太好了 以後买单卡就好! 05/09 01:49
11F:推 kagayama:专业 05/09 01:53
12F:推 love19870314:简单易懂 推 05/09 01:58
13F:推 VictorTom:有神快拜....<(_ _)> 05/09 02:02
14F:→ jk21234:我以前写的东西都比今天这篇基础更简单啦.怎麽大家比较 05/09 02:08
15F:→ jk21234:看的懂 05/09 02:09
16F:推 lsslss:越吃越重咸 (拖走 05/09 02:10
17F:推 KCKCLIN:推一个 05/09 03:47
18F:推 AXby:有神快拜 05/09 05:29
19F:推 l0630:有神快拜....<(_ _)> 05/09 07:18
20F:推 cluohy75118:神抱歉 这次看到一半就END了 推 05/09 09:01
21F:推 asdfghj12345:功力太差~ 看不到两句就推文了~ 05/09 09:15
22F:推 apley:看不懂end... 果然是神的境界啊 05/09 09:16
23F:推 arrenwu:推推~~深入浅出~ 05/09 09:26
24F:→ checheng:嗯嗯 没错 就是这样~ 05/09 09:41
25F:推 batschris:有神快推 05/09 10:56
26F:推 taco20:恩...跟我想的差不多 05/09 11:31
27F:推 ArSaBuLu:我刚跟牛魔王一起出来看上帝... 05/09 11:55
28F:推 jack089452:推一个 05/09 12:05
29F:推 chancewen:lol 05/09 13:07
30F:推 are2:推 长知识 05/09 13:17
31F:推 three456:好文推 05/09 14:19
32F:推 AustonJhu:难得有篇看得懂的 快推!! 05/09 14:38
33F:推 m1314213:快推 不然人家以为我们不懂 05/09 16:37
34F:推 Ekmund:看到一半就想到回头看ID....快拜 <(_ _)> 05/09 17:32
35F:推 s25g5d4:这次稍微看得懂给推 05/09 22:21
36F:推 APC :push 05/10 00:59
37F:推 dkchronos :这篇浅显易懂 了解 05/10 10:34
38F:推 saedn :好神~~ 虽然看不太懂~!! 还是希望能多有些这种文~XD 05/10 16:34
39F:推 leesuewon :神都放弃双GPU了 大家快醒悟吧 05/10 17:35
40F:推 Falcoon :有神开示 05/10 17:43
41F:推 claestw :<(_ _)> 不过是lag不是leg呀 05/12 12:15
42F:推 wch6858 :楼上抓到神的失误 给大功一只XDD 05/12 23:47
43F:→ jk21234 :打完有看到 但不想留下修改记录 XD 05/13 00:33







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP