主流显卡在新3DMark中的实际运行情况究竟如何?接下来,我们将进入新3DMark的测试部分,用测试来回答这些疑问。由于目前FutureMark暂时只推出了针对Windows系统的新3DMark版本,因此此次我们主要针对桌面级显卡进行测试。为了避免性能瓶颈,我们将组建使用了英特尔Core i7 3960X处理器的顶级平台进行测试。参测显卡为AMD Radeon HD 7000系列、NVIDIA GeForce GTX 600系列显卡,例如顶级的双核心产品Radeon HD 7990、GeForce GTX 690,以及定位主流市场的Radeon HD 7750、GeForce GT 640 2GB等。此外,相信很多用户也很关心整合平台在新3DMark中的表现,我们特意加入了一套由A8-5800K处理器、A75主板组建的整合平台,作为当下整合平台的代表参与本次测试。
为了给大家一个直观的印象,我们将在Ice Storm、Cloud Gate、FireStrike Performance、Fire Strike Extreme这四种场景下进行测试。不过前文已经提到,Fire Strike场景才是衡量桌面级显卡的佳标准,因此我们的测试分析将以Fire Strike Performance、Fire Strike Extreme这两个场景为主。
GeForce GTX 690、Radeon HD 7990目前分别是NVIDIA、AMD的旗舰级双核心产品,二者在新3DMark中又会碰出怎样的火花呢?
A卡领先N卡背后的秘密
每一代3DMark推出之际都伴随着无数的争议,原因很简单,无非是认为测试场景内容的设计不够公正,造成测试成绩偏向某一方或者测试场景无法代表实际游戏情况的结果。事实是否如此呢?这次新3DMark是否也遇到了这种情况呢?我们不妨从测试结果中找寻答案。
从测试来看,可以很明显地发现A卡在各种模式下的成绩普遍小幅领先同档次的N卡。而3DMark 11的测试结果却恰好与之相反,N卡的成绩则领先同档次的A卡。不难看出,相同的显卡却在两款不同的软件中呈现截然相反的测试结果,3DMark 11“偏N”,而新3DMark则更“偏A”一些。出现这样的结果并非FutureMark刻意针对AMD或者NVIDIA显卡进行了特别优化,而是3DMark 11和新3DMark在设计之初的设计理念就不同,这导致两者的测试场景、总分计算等不同,并终影响了测试结果。相信很多用户都对3DMark 11动辄就是高精度纹理的场景,仿佛一部电影大片的情形记忆犹新。没错,3DMark11力求塑造一种宽宏、精美的场景,因此测试内容加入了大量的高精度纹理内容,这是3DMark 11的一大特点。而GTX 680在GTX 580的基础上纹理单元数量翻倍,加上开普勒架构上的优势,一举在3DMark 11中获得性能优势也就不难理解了。
而新3DMa rk则不同,它并没有过分强调材质纹理的“暴力堆积”,而是加入了大量DirectX 11中的技术,如DirectCompute计算、较高等级的曲面细分等,还有各种光照、阴影、粒子效果计算,这要求显卡必须具备很高的计算能力。而在显存容量、单精度浮点运算能力、显存位宽、显存带宽等大量与显卡计算能力有关的规格上GTX680都不敌HD 7970。因此在新3DMark这种要求显卡拥有足够高的计算能力的测试软件上,采用规模比较小的芯片、以GTX 680为代表的开普勒显卡就开始显示出“先天不足”,难以和HD 7970这样规模比较大的芯片抗衡了。
总体来看,在本次参测显卡中只有GTX 690、HD 7990这两款顶级双核心显卡能够较为流畅运行在Fire Strike场景下,特别是Fire Strike Extreme场景。在Fire Strike Performance的FireStrikeGT1X、FireStrikeGT2X场景下,这两款显卡都保持了50fps左右的平均帧率。而在极度考验显卡性能的Fire Strike Extreme场景下,这两款显卡的平均帧率都跌落至25fps左右,基本保证了流畅性。
正如上文提到那样,采用GCN架构的HD 7000系列显卡由于规格出众,具备强大的力量计算性能,因此在新3DMark上的优势更为明显。HD 7970本身的规格就强于GTX 680,而采用两颗HD 7970核心的HD 7990的计算性能更是得到了长足的提升,在新3DMark中的优势较GTX 690非常明显。以为严苛的Fire Strike Extreme为例,HD 7990的性能领先GTX 690高达10%,将自身强大的计算性能发挥得淋漓尽致。10%的领先幅度已经是参测显卡中,同级别显卡中的大性能差距了。
不过值得注意的是,通过观察这两款双核心显卡以及它们各自对应的单核心显卡的帧率曲线可以发现,GTX 690、HD 7990的帧率曲线波动非常明显,尤其是HD 7990几乎每一个测试场景的曲线都呈“犬齿状”。而反观GTX 680、HD 7970的帧率曲线则相对平缓很多,这说明新3DMark对双核心显卡的优化目前还不到位。
GTX 690的新3DMark Fire Strike Performance详细测试结果,总分为9726。橙色曲线为显卡帧率曲线,纵坐标为帧率,横坐标为时间(以下同)。
GTX 690的新3DMark Fire Strike Extreme详细测试结果,总分为5059。
HD 7990的新3DMark Fire Strike Performance详细测试结果,总分为10858。
HD 7990的新3DMark Fire Strike Extreme详细测试结果,总分为5578。
总体来看,这两款显卡在新3DMark中的测试结果基本持平,HD 7970稍占优势。不过Fire Strike Extreme场景给显卡带来了极大的压力,这两款旗舰单核心显卡在图形测试部分的平均帧率也只有20fps左右。两者在FireStrike GT1X场景下的帧率曲线非常类似,高帧率都是21fps。而在Fire Strike GT2X场景下,HD 7970的高帧率虽然达到了22fps(GTX 680为19fps),但在第36秒~第45秒的场景下的帧率波动非常厉害。相反,GT X 68 0在这段场景中的帧率较为平滑,反而让人觉得画面会更流畅一些。在Fire StrikePe r f o r m a n c e模式下,由于负载降低,这两款显卡的平均帧率在30fps以上,高帧率都突破了40 f ps。在该模式下,这两款显卡的帧率曲线走势基本保持了一致,不过HD 7970在局部场景下的帧率曲线呈“犬齿状”,不够平滑和稳定。
GTX 680的新3DMark Fire Strike Performance详细测试结果,总分为6265。
GTX 680的新3DMark Fire Strike Extreme详细测试结果,总分为3071。
HD 7970的新3DMark Fire Strike Performance详细测试结果,总分为6512。
HD 7970的新3DMark Fire Strike Extreme详细测试结果,总分为3151。
相对于顶级显卡和低端显卡,游戏玩家的关注点多在中高端显卡上(GTX 660、HD 7850),即1500元级别的显卡。和高端显卡在新3DMa rk测试结果不同的是,在中高端显卡的测试上,N卡反超A卡,GTX 660的表现明显比HD 7850更好。究其原因,GTX 660和HD 7850在硬件上的规格差距已经很小了。双方同为2GB显存,虽然GTX 660的192bit显存位宽比HD7850的256bit要小一些,但是前者的频率更高。再加上GTX 660在架构上的优势,因此实际计算能力甚至比HD7850更强。1500元级别的显卡在运行Fire Strike场景时已经颇显吃力,即使在Performance模式下GTX 660、HD7850的平均帧率也只有2 0 f ps左右。此时在FireStr ikeGT2X场景下,HD7850的帧率曲线波动非常大,帧率上下起伏非常明显,能让人明显感觉到画面卡钝的感觉。而GTX 660的帧率曲线则比较正常,随着场景负载的高低而变化,并没有出现帧率不正常的情况。HD 7850帧率曲线波动大的情况还出现在后的综合测试中,它的帧率曲线一直呈现忽高忽低的状态。而GTX 660的表现则明显更好,帧率曲线几乎呈直线状态,非常稳定。
GTX 660的新3DMark Fire Strike Performance详细测试结果,总分为4356。
GTX 660的新3DMark Fire Strike Extreme详细测试结果,总分为2133。
HD 7850的新3DMark Fire Strike Performance详细测试结果,总分为4214。
HD 7850的新3DMark Fire Strike Extreme详细测试结果,总分为2033。
目前在售的主流中端显卡是千元级的GTX 650Ti、HD 7770,低端显卡则是700元级别的GTX 650、HD 7750,以及价格在600元左右的GT 640。在Fire Strike Performance模式下,这5款显卡的测试结果和本身的定位相吻合。但在Fire Strike Extreme模式下,GT 640的性能突然爆发,性能不仅超过了GTX 650,即使与GTX 650Ti相比也只有很小的差距—这究竟是什么原因呢?
事实上,Fire Strike Performance模式、Fire Strike Extreme模式有一个大的不同,那就是前者的分辨率为1920×1080,后者的分辨率却达到了2560×1440。很显然Fire Strike Extreme模式对显卡性能要求更高,尤其是对显存容量提出了更高的要求,因此1GB显存版本的显卡在该模式下性能会受到很大的影响。以定位更高、具备2GB显存容量的GTX 660、HD 7850为例,两者在Fire Strike Extreme模式下的成绩约为Fire Strike Extreme模式下的1/2左右,显存容量为1GB的HD 7770、HD7750、GTX 650Ti、GTX 650则分别只有1/3、1/3、1/4、1/4左右。
而参测的GT640无论是GPU本身的性能、定位、规格都不如另外4 款显卡,但它的显存容量却达到了2GB,能够满足高分辨率对显存容量的需求,因此它在Fire Strike Extreme模式下的成绩异军突起也就不难理解了。这也从一个侧面说明在某些情况下,当显卡的显存位宽一定的时候,且性能、定位相当或者差距不大的情况下,Fire Strike Extreme模式对显存容量更为敏感,其敏感的程度不仅超过了显存速度,甚至还超过了核心频率、流处理器数量等影响显卡性能的规格参数。
另一方面值得一提的是,这5款显卡的物理测试单项的分数和帧率都是一样的,而且与其他更高级别的显卡也保持一致。这进一步说明了新3DMark使用的是Bullet开源物理引擎,在进行物理运算时完全由CPU负责,GPU并不参与计算,因此只要所使用的处理器型号相同,那么终的物理测试单项的分数、帧率都是一样的。
作为目前集显平台的代表,A8-5800K集成的Radeon HD 7660D图形核心的游戏性能很不错,早已超越了500元及以下的独立显卡。当然,它在新3DMark面前依旧显得弱不禁风,测试成绩与绝大部分独立显卡相比仍然有不可跨越的差距。但它的成绩,尤其是在Fire Strike Extreme下成绩却耐人寻味——与GTX 650、HD7750这样的当下主流独立显卡的性能差距很小,而在实际游戏中,这两款独立显卡的性能会大幅超过Radeon HD 7660D。
要知道Radeon HD 7660D只有384个SPU、本身的显存容量也只有512MB,那么它为什么会有这样的表现呢?答案依旧是显存容量,A8-5800K集显平台在实际运行中可以调动内存作为显存使用,这在非常强调显存容量的Fire Strike Extreme测试中显得尤为重要,弥补了自身性能的不足,从而拉近了与独立显卡的差距。而其他场景则对显存容量没有那么敏感,A8-5800K集显平台的性能劣势开始显现。例如在Fire Strike Performance场景下,GTX 650的性能领先A8-5800K集显平台高达103%,而在Fire Strike Extreme场景下GTX 650的领先幅度只有21%。
GTX 650Ti的新3DMark Fire Strike Extreme详细测试结果,总分为704。
GTX 650的新3DMark Fire Strike Extreme详细测试结果,总分为531。
GT 640 2GB的新3DMark Fire Strike Extreme详细测试结果,总分为668。
HD 7770的新3DMark Fire Strike Extreme详细测试结果,总分为1083。
HD 7750的新3DMark Fire Strike Extreme详细测试结果,总分为771。
A8-5800K的新3DMark Fire Strike Performance详细测试结果,总分为963。
A8-5800K的新3DMark Fire Strike Extreme详细测试结果,总分为437。
测试小结: 测试软件和硬件真实性能的关系
测试软件的目的是考察硬件性能,为用户选择产品提供指导。早期的测试软件一般功能单一,测试成绩也比较隐晦,普通用户一时难以看懂。不过随着技术发展,当前的测试软件逐渐开始傻瓜化。比如运行软件后,点击一下“Test”,后就可以看到唯一的一个总分,直接比较总分高低就可以了。
这样真的够吗?以GPU为例,硬件设计越来越复杂,功能越来越多,可编程性特性的加入又让软件相对硬件的优化和使用成为了一个复杂的问题。在测试对象越来越复杂的情况下,测试软件的终成绩和分数却越来越简单,这显然是背道而驰的。
在3DMark的发展上这样的例子其实不少,近的例子就有3DMark 11。在3DMark11中,对DirectX 11本身的技术使用并不太多,特别是NVIDIA引以为傲的曲面细分,无论是细分等级还是曲面拆分系数都不高,反倒是在整个测试中大量使用了超高精度的纹理、再加上复杂的后处理效果。测试结果也对NVIDIA当时的产品不利,由于NVIDIA Fermi家族的纹理性能较差,因此在3DMark 11中很吃亏,甚至两款同级别的显卡在3DMark 11和某些游戏中的测试情况完全背道而驰。与此类似的是AMDHD 7000家族对阵NVIDIA GTX 600家族,GTX 600家族大幅度加强了纹理单元,因此在3DMark 11的测试中占尽了优势。
在新3DMark中,情况又发生了变化,GTX 680又以较明显的幅度输给了HD 7970。这是因为新3DMark测试较为均衡,使用的技术手段都比较“新潮”,比如大量的Direct Compute计算、较高等级的曲面细分、各种光照处理等。大量新技术加上高数据量、高计算量,GTX 680这样规模比较小的芯片就开始显示出“先天不足”,难以和HD 7970这样规模比较大的芯片抗衡了,因此终成绩又被HD 7970反超。
但这样的结果真的符合用户的期望吗?显然也不是,因为在实际游戏测试中,HD 7970还是和GTX 68 0杀了个难解难分,高分辨率下GTX 680具备优势,超高分辨率、高负载环境下HD 7970则强过一头。这样的结果和新3DMark测试存在较大差异。出,原因不外乎游戏和测试软件本身存在差异,不同的软件取向导致了不同的测试结果。不仅游戏和测试程序之间,实际上游戏和游戏之间也存在差异,从游戏开发角度来说,游戏开发人员在游戏编写过程中面临很多选择,比如纹理压缩格式用哪一种、抗锯齿模式选什么、光照计算方法选什么、后处理用哪种方法等各种各样的选择。而AMD和NVIDIA在很多细节技术格式支持上的差异,终又会造成游戏测试结果的千差万别。
综合来看,测试软件终究是测试软件,它很难也不可能代表所有的应用情况,测试软件只能代表自己——或者说好听一点代表未来,再好听一点是代表一段时间内主流游戏的发展情况。当然,你是一个普通用户,可以通过多款测试软件直观地了解到显卡的性能,这也无可厚非,但一定要记住:测试软件的性能只能作为参考,还必须考察显卡在游戏中的实际性能。
当然,我们并非否认新3DMark的意义,毕竟作为一款传承多年、早已深入人心的图形测试软件来说,新3DMark的作用是任何一款图形测试软件都无法替代的。即使你一点也不懂显卡也没关系,因为新3DMark的测试结果可以在短的时间内让你大致了解目前主流显卡的性能是怎样的,对于指导用户购买显卡有着非常重要的意义。
从测试来看,新3DMark才刚发布,对一些显卡的优化还不到位,例如双核心显卡在该软件中的帧率起伏非常明显,AMD显卡的测试分数虽然较高,但是帧率起伏较为明显,相信通过后期版本的更新以及驱动程序的优化,这些问题可以得到解决。而NVIDIA显卡的测试成绩虽然小幅落后AMD显卡,它的帧率曲线明显更平缓,显示出开普勒架构以及NVIDIA显卡驱动程序的优势。
新3DMark全面测试,Fire Strike Extreme场景得分
新3DMark全面测试,Fire Strike Performance场景得分
新3DMark全面测试,Cloud Gate场景得分
新3DMark全面测试,Ice Storm场景得分
就目前已经能够完整测试的PC部分而言,平心而论,新3DM a rk在技术支持和场景设计上已经很出色了,技术的使用比较中立,场景设计也充分考虑未来很长一段时间发展的需求。特别是在Fire Str ike的测试中,大量粒子、烟雾和光照效果的使用,为用户勾画了未来游戏应该有的画面,展示了FutureMark强悍的技术功底和对技术发展方向的把握。新3DMark的测试成绩也能比较好地反映出显卡本身硬件基准水平。
总的来看,本代3DMa rk无论在测试体系、技术还是场景设计上都做出了很多有益的尝试,代表了未来测试软件“大一统”的发展方向,值得赞赏。
新3DMark在Windows平台上对硬件的需求
仅从硬件需求来看,只要是Windows Vista以上的系统(必须安装DirectX 11)、支持DirectX 9以上的显卡(至少需要128MB的显存,支持WDDM 1.1的驱动和Shader Model 3.0的硬件规格,GeForce 7000系列由于有WDDM 1.1的驱动,因此可以运行3DMark,AMD方面由于Radeon HD 2000以后的显卡才有WDDM 1.1驱动,因此诸如Radeon X1000系列就不能运行3DMark了)、2GB以上内存、3GB的磁盘空间即可。
事实上,之前3DMark 11都必须要求DirectX 11显卡才能运行。而新3DMark对硬件的要求不但不离谱,反而还还低了不少。新3DMark在硬件要求上的降低和其设计理念以及整个测试软件的规划、支持都有关系,因为现在FutureMark已经不满足于3DMark仅支持Windows平台,它将目光投向了更远、更广阔的地方。
DirectX 11中的Direct3D Feature Level等级
我们知道DirectX实际上包含诸多内容,除了Direct3D外,还有DirectSound等内容。一般来说,影响显卡和图形部分的关键因素就是Direct3D,其余部分主要涉及音频、键盘、2D绘制等,和图形关系不大。因此,Direct3D实际上就代表了DirectX在图形部分的升级。从DirectX 9到现在,Direct3D重大升级的版本就有4个,分别对应DirectX 9.0,DirectX9.0c,DirectX 10,DirectX11,新3DMark是如何确保这些版本之间的兼容性呢?
在当前的DirectX中,微软确定了不同的Direct3D Feature Level。比如Direct3D Feature Level 9.1和Direct3D Feature Level9.3,前者支持ShaderModel 2.0,后者支持ShaderModel 3.0,分别来自于DirectX 9.0和DirectX 9.0c。此外还有Direct3D FeatureLevel 10,它指的是ShaderModel 4.0,来自于DirectX 10。而新的DirectX 11中的功能诸如曲面细分等,则包含在Direct3D FeatureLevel 11中,对应的是ShaderModel 5.0和DirectX 11。Direct3D Feature Level只能向兼容,不能向上兼容。从另一个角度来看,如果用不太严谨的语言描述,用户可以认为“老版本的Direct3D总是会自动成为新版本Direct3D的子集”。
打比方来说,如果一张显卡支持Direct3D Feature Level 11,那么就包含了从早的DirectX一直到目前新的DirectX 11中的所有功能。反过来说,如果将高支持DirectX 9.0c的GeForce 7900 GT X安装在Windows 7中,在DirectX检测部分会显示目前支持的是DirectX 11。不过这仅仅是DirectX方面的支持而已—系统确实在软件上支持DirectX 11(别忘了DirectX 11不仅仅是3D部分),但具体到Direct3D时,只能支持到显卡所能支持的Direct3D Feature level 9.3,即只能支持9.3等级所规定的效果,更高的Direct3D Feature level 10.0乃至11是不支持的(可以简单认为DirectX 9.0c已经成为DirectX 11的子集)。
对程序员来说,Direct3D Feature Level的意义在于,使用Direct3D编写程序时,只需要调用不同的Direct3D Feature Level就可以写出兼容不同档次显卡的程序,而不需要专门为DirectX 9.0、DirectX 10等发布多个版本。同时还可以使用到DirectX 11所提供的其他新功能,这样无论是编程还是系统兼容性方面,都显得简单易用了很多。
新3DMark的分数计算方法
在新3DMark的每一个场景对应的测试中,终会得到三个或者四个测试数据,分别是Fgt1、Fgt2这两个图形测试成绩,以及Fphysics物理测试成绩和Fcombined综合测试成绩(只有Fire Strike场景才有)。这三个测试成绩分别由每个场景对应的相关测试给出,原始数据主要来自平均帧统计。在得到原始数据后,根据不同场景,新3DMark会使用独特的算法终计算出每个场景的测试分数。
在上述公式中,S3DMark是指后的场景总分。W是每个场景在测试中不同部分所占的比例,W值是固定的。在Ice Strom和Cloud Gate场景中,Wgraphics和Wp hyics分别是7/9和2/9(由于前两个测试没有综合测试,因此没有Wcombined)。在Fire Strike场景中,Wgraphics、Wphyics和Wcombined分别是0.75,0.15和0.10。
S分有三项,分别是Sgraphics 、Sphysics和Scombined,其中Cgraphics是常数,值为230。
在Sphysics的计算公式中,Cphysics也是常数,值为315。
Scombined只有Fire Strike才有,Ccombined是常数,值为215。
在这些数值都清楚后,就可以通过上述公式计算新3DMark的总分了。比如某显卡在Fire Strike场景测试中,四个测试得分为Fg t1=29. 5,Fg t2=22.8,Fphysics=28.3和Fcombined=7.7,那么根据上述算法:
Sgraphics=230×2/(1/29.5+1/22.8)=5915.8
Sphysics=315×28.3=8914.5
Scombined=215×7.7=1655.5
S3DMark=(0.75+0.15+0.10)/(0.75/5915.8+0.15/8914.
5+0.10/1655.5)=4901
4901就是某显卡在Fire Strike场景下的测试得分。