Site Loading

Warning: sprintf(): Too few arguments in /www/wwwroot/wankaiyang.com/wp-content/themes/ecommerce-prime/inc/breadcrumbs.php on line 252

《幽灵行动4:未来战士》帧数低的原因

《幽灵行动4:未来战士》帧数低的原因

所谓优化行是指能够充分调动显卡的运算资源,例如能让AMD的SP、CU和Nvidia的CUDA单元能够满负荷工作,说简单点,就是显卡里的每一个运算单元都在火力全开,

这就需要游戏引擎工程师们合理的编排指令集,让这些指令集能够顺利的被显卡的Warp(指令分别配器)分配给运算单元。好的指令集,Warp在分配的时候能够物尽其用,每一个CUDA/SP/CU都能分到自己的任务,如果引擎做的不好,那么相当一部分运算单元就会闲置了。

举个例子,还记得当年的《使命召唤:黑色行动》么?原本他的引擎语言是为了应付XBOX360的四个奔腾4 EE级别的CPU而汇编的,因此对处理器器的依赖性强于GPU,导致移植到PC后,多核处理器和单核处理器的性能出现严重的不平衡!和使命7一样,幽灵4只是主机移植机制的牺牲品。

看图说话,在一些场景中,GTX680九段根据GPU负载情况,通过睿频将核心频率提升到1263MHz

然后,在大部分场景中,GPU的频率始终维持在631MHz,而631MHz对应的性能级别为“性能第二等级(2.5D)”,再下去就是321MHz的“桌面(2D)级别”了。因此,证明GPU在很多时候无法充分调动CUDA单元去进行运算,为什么呢?因为这款从主机平台简单移植而来的游戏,从一开始就没想过迎合DX11 GPU的核心构架,编译不合理,导致GPU无法正常满载。

那么,你们也许会问,为什么它的光影特效看上去那么强大?幽灵行动4的确增加了环境特效(AO、全球光照),加入细分曲面,但这些已经属于显卡的善后工作,显卡不用调动真正的运算单元,而是通过ROP单元、Tesellation单元等非着色器部分的工作,放马后炮。

发表评论

您的电子邮箱地址不会被公开。