游戏跑分新视角:细看一秒内帧数变化
- 2011-9-22 0:01:00
- 类型:转载
- 来源:泡泡网
- 网站编辑:admin
【电脑报在线】 编者按:从游戏评测出现至今,FPS(FramesperSecond,每秒帧数)一直都是我们衡量硬件表现好坏的标准。毫无疑问,在绝大多数情况下,FPS的确可以作为游戏性能的标杆。但是,经历了长久的测试历程以及数以万计的帧数统计之后,部分玩家已经开始注意到,实际获得的游戏体验和表面得出的FPS数据并不完
出现问题的放大



同样的,三款单卡看起来还比较正常,总体来说比较问题,而且突发帧数量并不多。

从GTX560TiSLI身上就已经开始显现出较大波动,总体上遵循一高一低的趋势,下面的多卡系统莫不如此。







已经不止一次的听到关于多卡系统的Micro-stuttering(下文会具体解释)问题了,这次算是一个集中的反映。需要清楚的是,我们这里看到的很像是多卡系统工作方式的一个人工还原。
不管是AMD还是NVIDIA,在CrossFire/SLI多卡系统中都将AFR(AlternateFrameRendering,交替帧渲染)作为首要渲染模式。顾名思义,比如在双卡系统中,AFR就是将偶数帧交给GPU1渲染,而奇数帧则安排给GPU2渲染;或者说把第n帧画面指派给GPU1渲染,把n+1帧指派给GPU2渲染,使帧数渲染交替进行,从而充分利用多卡系统的并行几何处能力。(三卡或四卡的原理一样,渲染交替进行。)虽然,CrossFire/SLI同样支持其它一些负载平衡渲染模式,比如SFR(SplitFrameRendering,分割帧渲染),但效率方面并不如AFR。
虽然这些基本原理非常简单,但要在多卡系统中做到负载平衡却相当不易。首先,每一个独立的帧从渲染原理上来看就是一个需要高度平行的任务,需要高度平行的天性使得帧与帧之间的平行也相当拿捏,所以保持帧间的同步很是困难,更不用说多卡之间的负载平衡了。(比如GPU1已经完成了1帧渲染,需要进行第3帧渲染,而此时GPU2的渲染还在进行,那么GPU1就需要等待。当然,实际的平衡负载问题要复杂的多,需要平衡算法来解决。)
另外,因为不管多卡系统中有几款显卡,只有主卡才能与显示器连接,所以其他显卡渲染的帧只能通过传输到主卡进行输出。而无论是CrossFire还是SLI接口,这种数据传输都会耗费时间。除了帧数据,其它的一些缓存数据也需要经常在显卡之间进行传输,尤其是一些高级渲染技术(比如render-to-texture,渲染到纹理)使用的情况下。而这些数据通常会使用PCI-E接口,同样会造成延迟。
上面的图表很好的说明了多卡系统之间负载平衡还远远未达到完美,需要解决的问题还有很多。不过现在,我们可以先从一些多卡系统的天生缺陷说起。
很明显,继续使用平均FPS去评估多卡系统的性能表现肯定是不靠谱的。因为从平均FPS很难看出高延迟帧,而这些高延迟帧却恰恰是获得连贯游戏画面的关键因素。我的感觉是,在提供连贯的游戏体验方面,帧延迟在20ms和50ms之间交替进行并不如一直稳定在50ms。
因为,从人类的视觉系统特别善于捕捉不规则的场景,也就是说一快一慢的画面会让人感觉相当不爽。事实上吗,这种体验我已遇到多次。这也就是为何很多人抱怨Micro-stuttering的原因。
当然,这些只是冰山一角。问题的复杂性要远比这些图表展现的高的多。关于这个问题我们接下来会进一步阐释,但现在,我还是想把这些数据继续放大,看看还有那些问题。



同样的,三款单卡看起来还比较正常,总体来说比较问题,而且突发帧数量并不多。

从GTX560TiSLI身上就已经开始显现出较大波动,总体上遵循一高一低的趋势,下面的多卡系统莫不如此。







已经不止一次的听到关于多卡系统的Micro-stuttering(下文会具体解释)问题了,这次算是一个集中的反映。需要清楚的是,我们这里看到的很像是多卡系统工作方式的一个人工还原。
不管是AMD还是NVIDIA,在CrossFire/SLI多卡系统中都将AFR(AlternateFrameRendering,交替帧渲染)作为首要渲染模式。顾名思义,比如在双卡系统中,AFR就是将偶数帧交给GPU1渲染,而奇数帧则安排给GPU2渲染;或者说把第n帧画面指派给GPU1渲染,把n+1帧指派给GPU2渲染,使帧数渲染交替进行,从而充分利用多卡系统的并行几何处能力。(三卡或四卡的原理一样,渲染交替进行。)虽然,CrossFire/SLI同样支持其它一些负载平衡渲染模式,比如SFR(SplitFrameRendering,分割帧渲染),但效率方面并不如AFR。
虽然这些基本原理非常简单,但要在多卡系统中做到负载平衡却相当不易。首先,每一个独立的帧从渲染原理上来看就是一个需要高度平行的任务,需要高度平行的天性使得帧与帧之间的平行也相当拿捏,所以保持帧间的同步很是困难,更不用说多卡之间的负载平衡了。(比如GPU1已经完成了1帧渲染,需要进行第3帧渲染,而此时GPU2的渲染还在进行,那么GPU1就需要等待。当然,实际的平衡负载问题要复杂的多,需要平衡算法来解决。)
另外,因为不管多卡系统中有几款显卡,只有主卡才能与显示器连接,所以其他显卡渲染的帧只能通过传输到主卡进行输出。而无论是CrossFire还是SLI接口,这种数据传输都会耗费时间。除了帧数据,其它的一些缓存数据也需要经常在显卡之间进行传输,尤其是一些高级渲染技术(比如render-to-texture,渲染到纹理)使用的情况下。而这些数据通常会使用PCI-E接口,同样会造成延迟。
上面的图表很好的说明了多卡系统之间负载平衡还远远未达到完美,需要解决的问题还有很多。不过现在,我们可以先从一些多卡系统的天生缺陷说起。
很明显,继续使用平均FPS去评估多卡系统的性能表现肯定是不靠谱的。因为从平均FPS很难看出高延迟帧,而这些高延迟帧却恰恰是获得连贯游戏画面的关键因素。我的感觉是,在提供连贯的游戏体验方面,帧延迟在20ms和50ms之间交替进行并不如一直稳定在50ms。
因为,从人类的视觉系统特别善于捕捉不规则的场景,也就是说一快一慢的画面会让人感觉相当不爽。事实上吗,这种体验我已遇到多次。这也就是为何很多人抱怨Micro-stuttering的原因。
当然,这些只是冰山一角。问题的复杂性要远比这些图表展现的高的多。关于这个问题我们接下来会进一步阐释,但现在,我还是想把这些数据继续放大,看看还有那些问题。
读者活动
48小时点击排行
编辑推荐
论坛热帖
网站地图 | 版权声明 | 业务合作 | 友情链接 | 关于我们 | 招聘信息
报纸客服电话:4006677866 报纸客服信箱:pcw-advice@vip.sin*.c*m 友情链接与合作:987349267(QQ) 广告与活动:675009(QQ) 网站联系信箱:cpcw@cpcwi.com
Copyright © 2006-2011 电脑报官方网站 版权所有 渝ICP备10009040号
报纸客服电话:4006677866 报纸客服信箱:pcw-advice@vip.sin*.c*m 友情链接与合作:987349267(QQ) 广告与活动:675009(QQ) 网站联系信箱:cpcw@cpcwi.com
Copyright © 2006-2011 电脑报官方网站 版权所有 渝ICP备10009040号