物理加速新纪元——NVIDIA ForceWare177.39/177.26驱动程序大比拼

硬件时空

在前年,PC游戏硬件史上第一块针对物理引擎进行加速的处理器(PPU)由AGEIA公司发布,从此掀开了3D游戏硬件级物理加速的帷幕。随着GPU的计算能力飞速发展,用GPU实现异构计算已经不再是难事,NVIDIA推出了让自己的GPU支持异构计算的软件工具:CUDA。另外,在收购AGEIA公司之后,最新版的ForceWare177.39版驱动程序已经通过CUDA在GeForce GTX200系列以及GeForce 9800系列显卡中率先实现了GPU承担硬件物理加速的功能——显卡从此具备硬件物理加速能力。那么新版的ForceWare177.39到底给我们带来了什么样的惊喜呢?就让我们用它与老版本的177.26版普通驱动程序对比一下。

GPU实现物理加速的条件

GPU的要求

根据NVIDIA的官方信息,以及最新版的ForceWare177.39驱动程序的inf文件信息,我们初步认为只有GeForce GTX200系列、GeForce 9800GTX等支持CUDA的GPU能够实现硬件级的物理加速功能。ForceWare177.39驱动程序inf文件内支持的显卡型号如下:

NVIDIA_G92.DEV_0612.1 =“NVIDIA GeForce 9800 GTX”

NVIDIA_GT200.DEV_05E1.1 =“NVIDIA GeForce GTX 280“

NVIDIA_GT200.DEV_05E2.1 =“NVIDIA GeForce GTX 260”

不过,考虑到GeForce 9800GTX也是G92核心,所以我们推断GeForce 8800GT也可以支持,当然GeForce 9600GSO、GeForce 9600GT是否可以支持,我们后面会试验一下。而更低档次的GPU我们认为它们暂时不支持CUDA,所以也不会支持物理加速。

驱动程序的要求

ForceWare177.39是NVIDIA发布的第一款支持物理加速的显卡驱动程序,除此之外,在大家看到本文时,应该还有一款ForceWare177.40的“非官方修改版”可以使用,这两个版本都能提供对物理加速的支持。

除了ForceWare驱动之外,要实现物理加速还需要安装NVIDIA PhysX驱动,目前的版本号是8.06.12。相信不少读者还记得,在2006年我们测试AGEIA PhysX加速卡的时候,就必须安装AGEIA的PhysX驱动,现在AGEIA被NVIDIA收购之后,自然就将它打上了NVIDIA的标志。

实战显卡物理加速

本次我们选择了GeForce GTX280、GeForce 9800GTX显卡进行测试,同时也用GeForce 9600GSO以及GeForce 9600GT来试验对物理加速的支持,最后我们还使用了一块独立的AGEIA PhysX物理加速卡与GeForce 9800GTX的物理加速能力进行对比。考虑到对DX10的支持,我们选择了Windows Vista32 + SP1的系统环境。由于目前只有3DMark Vantage提供了比较完善的PhysX支持,所以我们以3DMark Vantage测试为主,另外选择一些支持PhysX的DEMO与游戏进行兼容测试。

测试平台

处理器:Intel Core2 Quad Q6600

主板:ASUS P5E3 Deluxe

显卡:GeForce GTX280

GeForce 9800GTX

GeForce 9600GT

GeForce 9600GSO(仅作物理加速支持验证)

内存:DDR3 1066 2GB×2

显示器:明基G2400W

电源:航嘉磐石800

测试环境:Windows Vista SP1、DX10.1

ForceWare177.39/177.26

NVIDIA PhysX驱动

测试的结果的确让人比较惊喜,在使用PhysX驱动后,CPU的物理加速测试环节中,果然出现了七个圈(使用处理器软加速的话,画面上显示的圈的数量等于处理器的核心数量,如果有物理加速则多出三个圈,我们使用了四核心处理器,所以显示七个圈),3DMark Vantage的总成绩也有了比较明显的提高,仔细观察成绩提高的部分,主要是来自CPU的分数。其实这样也很好理解,在3DMark Vantage的CPU测试中,包括了物理加速能力的部分,通过PhysX驱动,GPU与CPU一起来完成了本该CPU独自完成的工作,而GPU在这方面的计算能力又比CPU强很多,因此最后物理加速部分的得分有了非常大的提升,最后3DMark Vantage理所当然地将这个成绩归功于CPU,所以CPU得分会比不使用PhysX驱动高出200%多。

另外,我们还发现,即便是不开启物理加速,使用ForceWare177.39的性能也比ForceWare177.26好不少,相当于提升了一个档次。

ForceWare177.39是没有提供对GeForce 9600GT的支持的,不过也只是在inf中没有加入相应信息而已,我们通过自行修改inf信息,让GeForce 9600GT也用上了ForceWare177.39驱动。

25-d6-b1.jpg
25-d6-b2.jpg

测试结果证明,GeForce 9600GT现在还不能通过ForceWare177.39来实现物理加速功能。不过通过新驱动,它的性能也有很大的提高。另外我们也试验了一下和GeForce 9800GTX采用同样系列核心的GeForce 9600GSO,结果是也不支持物理加速,看来物理加速除了对GPU的型号进行限制外,对GPU的性能等级也是有限制的,不是核心架构相同就都可以支持。

特别测试

GeForce 9800GTX VS 独立PhysX加速卡

相信这个对比测试也是大家比较感兴趣的,到底现在GPU与早期独立的PPU相比,谁的物理加速能力更强?测试结果很让人吃惊,GeForce 9800GTX胜出。虽然使用PPU后,CPU得分比没开启物理加速的GeForce 9800GTX高很多,但依然没有开启物理加速的GeForce 9800GTX强,这下不知道当年花2400元买AGEIA PhysX加速卡的发烧友会怎么想了……

另外,别指望GeForce 9800GTX和PPU能同时作用……我们试验过将PhysX加速卡与GeForce 9800GTX物理加速功能同时开启,结果3DMark Vantage的CPU的得分还是与单使用GeForce 9800GTX物理加速一样。

25-d6-b3.jpg

物理加速游戏兼容性测试

在PhysX加速卡发布的时候,就有不少的游戏宣布对它提供了支持,例如《幽灵行动:尖峰战士》、《CellFactor》、《虚幻竞技场3》等等。我们选择了这几款游戏以及早期的PhysX加速卡配套DEMO来对ForceWare177.39+GeForce GTX280进行兼容性测试。

结果令人沮丧,所有早期的PhysX DEMO都不能支持GPU物理加速,提示找不到PhysX加速卡。而这几款游戏在Vista下也有问题,无法运行,《CellFactor》也提示找不到PhysX加速卡。看来ForceWare177.39对于实际游戏的支持还有很大的改进空间——我们不能用它光在3DMark Vantage中体验物理加速吧?

工程师总结

硬件评测周刊 王诚

GPU物理加速时代来临

直言不讳地说,AGEIA当初开发游戏物理加速引擎和PPU就是为了以后能将它卖个好价钱,现在其愿望实现了。NVIDIA看到了物理加速在将来游戏中的重要性,收购了AGEIA,而将它的物理加速技术应用到了自己的GPU当中。从架构上来讲,现在拥有统一渲染架构的GPU的确在这方面的数据吞吐量超过了CPU,用它来实现物理运算是可行的——NVIDIA也证明了这一点,效果也非常明显。在以后的游戏中,无论是使用NVIDIA的PhysX引擎,还是Intel的Havok引擎,可以肯定的是支持物理加速技术的3D游戏会越来越多并成为一种标准。谁抓住先机,获得更多游戏厂商支持,谁就有制定标准的权力,NVIDIA已经率先迈出了一步。

有趣的细节

我们知道NVIDIA的物理加速是通过CUDA实现的,在安装NVIDIA PhysX 8.X驱动的时候我们也注意到安装程序替换了3DMark Vantage使用的PhysX 7.X驱动文件。因此大家也会质疑是否NVIDIA在测试程序中作弊,使得整体得分变高。我们认为,测试中得分提高的部分在于CPU部分,也就是说,这是物理运算性能的测试,GPU得分部分是没有变的,而测试中CPU物理测试的场景在使用了GPU加速之后,运行速度大幅度提升,这是实实在在看得见的,能抓老鼠的猫,就是好猫。

GPU物理加速还有很长的路要走

从我们使用实际游戏测试的情况来看,GPU物理加速目前除了跑测试外,基本上没有任何用处,没有一款游戏能完美支持,是的,这个结论令人沮丧,但我们相信在相应游戏厂商推出补丁,显卡驱动进一步改进之后,会有很大改观,毕竟NVIDIA的ForceWare177.39驱动已经证明了GPU物理加速的可行性,剩下的就是厂商的支持度了。不过,PhysX也面临Intel的Havok的挑战,后者也在很多游戏机平台上得到了广泛的支持,AMD也宣布将来Radeon HD系列显卡会和处理器一起提供对Havok的支持,NVIDIA的PhysX命运如何,我们拭目以待。