从3DMark 11发布 看显卡两巨头的成败
泡泡网显卡频道12月29日 提到显卡,首先让人想到的是玩游戏,没错,显卡从诞生至今都在为游戏而生,随着时间的推移,除了提升显卡的性能之外,各大厂商还在绞尽脑汁的在为显卡增加新功能,例如AMD的steam和NVIDIA的CUDA等,这些技术的出现让显卡的用途更上一层楼,更加方便了消费者的使用。
但是,一款显卡的好坏不仅仅是决定于价格,如何衡量显卡性能和价格成了大众关心的问题,于是自然有软件公司开发不同的性能基准软件来“证实”一款显卡究竟有多大本事,大家耳熟能详的几款无非平日媒体显卡测试时候所用之物。然而,时至今日,依然没有任何一个测试软件或者游戏能够取代3DMark在游戏玩家心目中的地位,因为3DMark的魅力就在于它所提供的是一种权威、系统、公正衡量显卡性能的软件。
缺失,众人呼吁权威降临
如今的3DMark 和当年那个它已经有了天壤之别,随着显卡逐渐迈入DX11时代,新的基准软件也在蓬勃发展,如 Heaven Benchmark和StoneGaint这两款DX11测试软件也逐步被消费者认知,甚至越来越多的游戏已经在其自身内置了基准测试的选项,让消费者了解到手中的显卡或者即将要购买的显卡究竟有多大威力,但它们仍然无法反映出当今DX11显卡的真正实力。片面性的测试似乎有失公允,甚至还引起了两显卡巨头抛出“真假DX11”的言论,战争爆发之后,世界需要一位“圣人”来平息这些,而民众需要知道真相。
于是,作为业界元老级的Futuremark再次祭出全新测试软件——3DMark11,用来重新定义DX11显卡的性能,为广大游戏玩家提供一个公平合理的参考标准。这一切,就发生在了NVIDIA和AMD的第二代DX11显卡发布之时。
当然,世界上并没有什么软件能够绝对的把显卡的性能准确的用分值来定义,于是对3DMark系列测试软件也有不同的质疑,但现实告诉我们,如何公平和准确的权衡显卡之间的性能,是一个长期的过程,于是Futuremark在这么多年的摸索之后有了新的认知,如同抛弃了PhysX,使用Bullet物理引擎来测试这一举措,也证明了Futuremark正在向公正靠近,当然,这是后话了。
3DMark系列的诞生及发展:
从1999年,一个叫做Madonion的公司发布一款名不见经传测试软件——3DMark99 Max开始,第一款DirectX测试软件诞生了,直到后来改名为Futuremark的Madonion发布了全新的DX10基准测试软件3DMark Vantage,再到近期发布的3Dmark11,Futuremark总能出其不意的给大家带来惊喜。
2007年1月30日,微软正式向普通消费者提供全新的操作系统Windows Vista,全新的系统也自带了微软最新的API——DX10,它的出现预示着全新的一场战争又要展开,AMD和NVIDIA直接的DX10显卡大战旋即爆发。
反观Futuremark,以往的它总是能够第一时间跟上微软的脚步,伴随着新版的DirectX的发布同步推出新一代的3DMark测试程序。但在3DMark03/05/06时代,Futuremark饱受公正性和权威性的质疑,因为3DMark当中所使用的DirectX新特性和新技术,实际游戏中未必会采用,从而出现3DMark并不能代表实际游戏性能的情况。可以说3DMark已经偏离了游戏测试路线,而纯粹的变成了一款技术演示程序或者说是理论测试软件。
因此,到了DX10时代,Futuremark改变了设计思路,并不急于推出新一代的3DMark,而是预留了充足的时间来静观其变,看看新一代DX10游戏都使用了什么新的技术,并预测哪些技术将会得到重用,然后将其全部收入囊中。这样3DMark的测试成绩就能够代表显卡在绝大多数游戏中的性能表现,从而重新得到客户和用户的认可。
3DMark Vantage虽然只有两个游戏测试场景,但却大量使用了HDR光照、动态模糊、GPU粒子加速、次表面散射、层叠阴影贴图、分级水面折射、反射和扰流等,而且人物建模也使用了更多的多边形,如此的无限接近“变态”的折磨手段使得当年的第一代DX10显卡不堪重负,纷纷败下阵来。
此外,3DMark Vantage还引入了两个全新的CPU性能测试项目,一个针对RTS和网络游戏中常见的AI人工智能应用而设计,另一个则是日渐火热的PhysX物理加速,它既可以榨干多核多线程CPU的性能,也可以榨干优异显卡的GPU加速性能。
但是随即问题也出现了,PhysX物理加速是NVIDIA收购了著名AGEIA之后的一个封闭的物理引擎,只有获得NVIDIA授权才能使用,因此有些一家独大的意思,当NVIDIA把PhysX物理加速功能引入显卡之后,在3DMark Vantage测试用“取代”了CPU而获得高分这一行径再次引发消费者的不满意,迫于使用者的压力,Futuremark不得不“取消”了靠“作弊”得到的分数,以示公正。
图形API每逢世代交替都是有人欢喜有人忧:DX9让9700成为经典,让5800跌入低谷;DX9C让6800风光无限,让X800暗淡无光;DX10成就了8800的霸主地位,让HD2900一败涂地;DX11则让HD5800抢得先机。
正因为如此,AMD-ATI在经历了R600的惨败之后,开始信奉“先入为主”的理念(AMD的口号是“先行者胜”),对于微软新的图形API十分热衷,不但第一时间对过渡性的DX10.1提供支持,而且以迅雷不及掩耳之势发布了全线DX11显卡。
2010年3月27日,经过了一次又一次的跳票,NVIDIA终于发布了旗下的首款DX11显卡,比对手晚整整半年让整个业界对于NVIDIA捏了一把冷汗,历史上因难产而失利的NV30和R600依然历历在目,NVIDIA遭受了前所未有的压力。
由于采用大核心策略,NVIDIA的Fermi核心拥有30亿晶体管,整整比对手多出了50%,设计和制造难度之大可想而知。而AMD只是在上代产品基础上加入了新的ShaderModel指令集而已,对于GPU图形架构的改进十分有限甚至原封未动。NVIDIA并不认同这种做法,他们认为在革命性的图形API到来之际,必须对GPU架构做相应的调整,以适应未来新技术与新指令的需要,提高GPU渲染效率,因此,真假DX11之战也就此开始。
DX10发布后,以Crysis为代表的FPS游戏画面达到了巅峰,显卡实时渲染出来的人物及风景效果足以媲美照片、CG动画甚至是电影,让人叹为观止!但DX10也不是完美无暇的,其缺陷也很明显,那就是运行效率比较低。当游戏开启DX10模式后,性能下降幅度非常夸张,以至于第一代DX10显卡GeForce 8800和Radeon HD2900都无法在特效全开的情况下流畅运行当时的任何一款DX10游戏!
因此,如何让DX10的执行效率更高成了当务之急,在经历了DX10.1的小修补之后,微软借着新一代操作系统Windows7的发布,推出了DX11,一时间,DX11又站在了风头浪尖。
DX11的五大关键特性中,Tessellation和DirectCompute 11堪称革命性的技术,前者可以大幅提升游戏画质、后者可以大大提高游戏效率。
Tessellation一词相信大家并不陌生,早在DX9C时代,微软XBOX360游戏主机中由ATI设计的Xeno显示芯片就支持;从DX10时代到DX10.1时代,ATI HD2000/3000/4000系列显卡全都整合了一个叫做Tessellator的模块,虽然当时没有任何游戏能够支持该技术,但ATI通过几个演示Demo展现了Tessellation技术的魅力。
Tessellation之所以未成气候,就是因为此前的技术还不够完善,另外GPU处理能力不足也是一大因素,因此ATI即便有微软的鼎力相助,也未能将该技术发扬光大。到了DX10时代,ATI虽然在全线GPU当中整合了Tessellator模块,无奈孤掌难鸣,并没有得到游戏开发商的支持。
直到DX11时代,GPU自身的性能有了长足的进步,硬件上真正具备了细分曲面的实力,再加上微软重新改写API渲染流程,专为Tessellation开辟了新的着色器,这才让Tessellation技术得以重见天日。
Tessellation是一种能够在图形芯片内部自动创造顶点,使模型细化,从而获得更好画面效果的技术。Tessellation能自动创造出数百倍与原始模型的顶点,这些不是虚拟的顶点,而是实实在在的顶点,效果是等同于建模的时候直接设计出来的。
前面已经说过了,HD2000以上级别显卡其实都具备Tessellation的功能,但它们却无法与DX11中的Tessellation技术相兼容。这是因为微软并没有原封未动的将R600的Tessellation技术放到DX11之中,而是对其进行了优化,使之能与渲染流程完美的结合在一起,可以更高效率的细分出更多的多边形和曲面。
AMD先发制人,3DMark验证事实:
因而,对于AMD来说,要支持并发布新款的DX11显卡根本无须对GPU核心做大改动,只要能支持微软DX11的API接口即能实现所需的功能。这样,早就有准备的AMD比对手提前了半年发布了DX11显卡并展开布局,整个HD5000系列的显卡全线支持DX11,又一次占领了先机。
和3DMark Vantage类似,Futuremark并没有随着DX11的发布而推出3DMark11,而是等待第二代DX11显卡现身,而且DX11游戏走向普及之后才发布,这样就避免了滥用并不实用的新技术新特效,从而出现不公平、权威性遭到质疑的情况。
3DMark11也是一款纯DX11 Benchmark,基于原生DX11引擎,全面使用DX11 API的所有新特性,包括曲面细分、计算着色器、多线程。抛弃封闭的NVIDIA PhysX而改用开源的Bullet专业物理库,支持碰撞检测、刚体、软体,根据ZLib授权协议而免费使用。
如果需要测试DX9C或者DX10性能,3DMark06和Vantage依然健在,3DMark将会出现三代并存的现象,因为目前的游戏也是如此。Futuremark表示,3DMark11的测试重点是实时利用DX11 API更新和渲染复杂的游戏世界,通过六个不同测试环节得到一个综合评分,藉此评判一套PC系统的基准性能水平。
Futuremark同时强调了基准性能测试的公平性,明确提出了自己所遵守的几大原则。生成可重复、可验证的稳定结果; 公平、精准地表现技术和负载等。而此前的Heaven Benchmark和StoneGaint这两款DX11测试软件都片面注重于Tessellation性能,以致于遭到了AMD和部分游戏玩家的不满。而3DMark11则提供了多种负载的测试场景,更加均衡的考验了显卡的DX11性能,因此其测试结果将更具代表性!
2005年3月的「游戏开发者会议GDC」上就出现了这个新名词!它就是AGEIA公司在GDC2005游戏开发者大会上推出了物理处理器,被称为05年度图形领域的重大技术创新。随着,两大图形芯片厂商NVIDIA、ATI也各自推出了基于GPU基础之上物理加速技术。 物理加速技术,有两种,一种是PhysX,另一种是Havok简而言之,这是PC游戏的又一次变革。其宗旨是,“Make it Real!”。
“GPGPU”可以被称为通用图形处理器。其中第一个“GP”通用目的(GeneralPurpose)而第二个“GP”则表示图形处理(GraphicProcess),这两个“GP”搭配起来就是“通用图形”。而再加上“U”(Unit)就成为了完整的通用处理器。
拥有双向发展的AMD更需要让GPU有个完美的发展前景,在GPU中基于了一套完整的DiretX、OpenGL开放标准,并且在发布了开源工具、Linux开源驱动之后又继续向外界公开GPU的微代码。AMD认为只有开放的标准才能让自己走的更远。而且AMD也希望与其他厂商共同前进集思广益,共同打造出一个完美开放式的通用计算标准,虽然NVIDIA也加入了开源的行列,但AMD认为CUDA方式并不符合自己的开放方向而放弃采用。
在游戏中,特别是在3D游戏中,真实性往往是需要高标准的硬件设施才能达到的。在3D技术发展早期,图形芯片只能完成常规的渲染操作,而关键的建模和光照运算必须以软件模拟的方式由CPU来完成,而NVIDIA在1999年8月推出的一款具有革命意义的GeForce256芯片,它具有硬件T&L引擎,可独自完成建模和光照运算,大大降低了CPU的负担,显卡的3D效能也获得了突飞猛进的提升!不过,尽管GPU的出现让CPU负担减轻,但除了工艺水平改进,频率提升,管线堆叠之外,没有真正实质性的变革,CPU仍需负责图形相关的物理运算工作,依然采用沉闷的游戏渲染方式。
正是在这种形势下,AGEIA Technologies于2002年提出物理加速的概念,此后的6年时间里AGEIA潜心专注于对此技术的研究。PhysX物理加速技术强大的物理计算和处理能力所带来的全新震撼的真实游戏体验,在业界得到一致认同,并将成为未来3D图形发展中一项不可或缺的重要技术。
然而,目前广为人知的PhysX并不是唯一的物理加速引擎,还有Intel正在开发中的Havok FX以及Pixelux和此次3DMark 11中的免费Bullet物理引擎,3DMark 11利用Bullet物理引擎完成了碰撞检测、刚体、软体等模拟实际发生的物理加速,作为纯粹考验CPU的物理运算能力。
这里我们不得不说一下3DMark 11中使用的Bullet物理引擎,它这是一款跨平台的开源物理引擎。根据游戏开发者杂志的统计,目前全球游戏开发者当中,使用NVIDIA PhysX引擎的占 26.8%,Intel Havok引擎占22.7%,而第三名就是占10.3%的Bullet。同时,作为一款免费的物理加速引擎,再前二者都被收购成为独有的情况下,使用一款免费的开源物理加速引擎似乎更能把测试成绩显得公平公正,也许这就是Futuremark的初衷吧。
AMD目前正在联合一众开发人员,将Bullet开源物理引擎库“翻译”为OpenCL格式,根据AMD的“开放物理”计划,AMD将会以OpenCL为核心,在其基础上引申出Pixelux、Bullet和Havok(基于OpenCL的GPU加速布料模拟),扩展OpenCL和DirectCompute技术。
根据目前的这些计划,该方案应当不仅限于AMD平台,而是在OpenCL的框架内,支持各厂商的硬件进行物理加速,这应该就是其“开放物理”的定义。另外,AMD的计划也是“目前唯一提交到Khronos Group的GPU + CPU通用加速物理解决方案”。
目前AMD、Pixelux鼓励其他厂商利用OpenCL通用计算标准和Bullet Phyics物理引擎开发物理中间件,而且不限于PC平台,还计划扩展到主机、掌机等游戏机平台。由此可见,AMD的野心不仅仅要在PC平台称霸,而是要完成“一统江湖”的霸业。
驱动也是成功的必备条件:
相信看过国内外各大媒体对于双卡甚至多卡互联下3DMark 11的表现之后,肯定都大跌眼镜,在这个双卡、多卡互联已经很成熟的年代,竟然还会有软件对其支持低下,当然,原因肯定是两方面的,一方面来自与3DMark 11本身对互联技术的支持不到位,另一个方面则应该是驱动上的问题。
不过还是能看出来,NVIDIA在匆忙放出GTX580之后其驱动并没有做最大的优化,可以说完全是雏形,而AMD的催化剂则之前就有了一些综合性的优化,使其兼容性有了不错的提升,这样,在遇到全新的软件或者是游戏的时候,自然有能有惊无险,从以上的层面上来看,AMD在经过数年的驱动开发之后,逐渐变得老道,这点值得NVIDIA学习学习。
3DMark 11也发布了一段时间了,想必各位读者也几乎都人手一份了,看过了华丽的不流畅的场景之后,给大家留下的是什么印象呢?每个人都有自己的想法,但给笔者留下的只是,又和当年3DMark Vantage一样,想要流畅的全效跑完所有场景,只能等待多卡互联驱动优化或者下一代DX11显卡诞生了。
从DX11发布到3DMark 11,显卡市场的变化已经风起云涌几经突变,在DX10初代HD2000惨遭滑铁卢后,痛定思痛的AMD近几代产品的进步非常大,HD3000率先支持DX10.1标准,HD4000首次使用尚未定型的GDDR5显存,HD5000则大踏步进入DX11时代,并在HD6900系列发布后大放光彩,而行事、风格都迥异的两巨头都为自己的产品不断的打拼也让消费者大呼过瘾。
敢于并且能够引领技术和标准的发展的AMD,一次又一次的在新工艺方面上演传奇,整合声卡、DX10.1、单PCB双芯、包括竞争对手所鼓吹的CUDA并行计算以及PhysX物理加速,其实最早也是AMD提出来的。虽然刚开始的不顺利导致先进科技不被重视,如同当年哥白尼学说一样,但历史总是惊人的”相似”,事物的发展总会拨开云雾见青天。
总体来看,NVIDIA给人的感觉就是成熟、保守、踏实、务实,每款产品都很在意成本控制,处处透露着商业的气息,追求利润最大化,每年都会有非常可观的财报(经济危机特殊时期除外)。而ATI则是努力追求完美却很难达到,在做工、新工艺、新技术方面很激进,甚至甘愿冒险一试,当然代价就是经常有不成熟的产品或技术。
世界上没有十全十美的东西,不断的发展进步才能看到希望,AMD产品一代比一代强,而技术也在不断进步中,虽然期间也会有不尽人意的地方,但总的方面来说方向是正确的。反观NVIDIA,这位巨头孤注一掷的做法似乎让自己陷入了某种迷局,过早的使用大核心使其成本和功耗都难以达到尽善尽美的控制,并把Tessellation的精度要求看的太重使得必须重改核心而浪费了不少时间,虽然这样NVIDIA依然发布了让人满意的Fermi二代产品GTX580让大家认识到了NVIDIA的实力。
由此看来,AMD赢得了到目前为止所有的DX11的战争,接下来的,我们拭目以待,总之,显卡这个行业永远不会有风平浪静。■<