我们经常听说视频显存缓冲这一名词,它的作用主要是加快显示速度,
视频显存缓冲的作用
。在BIOS的“Advanced Chipset Features”中就有Video RAM Cacheable这一选项,可控制L2 Cache的A0000h-AFFFFh区域(共64K),决定是否采用此段内存来作显存的缓冲。那么它能够让显卡性能提高多少呢?这将是下面要讨论的话题。一、AGP也存在系统瓶颈
现今3D游戏做得越来越复杂,使用了许多3D特效和大型纹理,对显卡带宽的要求也越来越高。假设显卡有128位显存总线,显存速度为150MHz,那么带宽=150MHz×128位/8=2.4GB/s,某些高端产品使用了200MHz显存,其带宽更达至惊人的3.2GB/s。但如果使用400MHz(400MHz×64位/8=3.2GB/秒)的CPU,就很容易出现带宽不足的情况。把赛扬300A的主频超到504MHz,CPU可以处理的峰值带宽为504MHz×64位/8=4.0GB/s,由于赛扬A的二级缓存与CPU同速,所以L2 Cache的带宽也是4.0GB。尽管如此,这也只不过比高端显卡多0.8GB/s而己。另一方面,主板内存的带宽通常是100MHz×64位/8=0.8GB/秒,换言之,二级缓存的速度是它的四倍。从理论上来说,用L2 Cache来加速主板内存的效果要好于加速显存。
请各位不要忘记,显卡要通过AGP或PCI总线与CPU交换3D数据,AGP1×总线的带宽为66MHz×64位/8=528MB/秒,AGP 4×带宽=528MHz×4=2.1GB/秒,PCI带宽=33MHz×32位/8=133MB/s,它们都远远及不上显存的数据流,很容易造成系统瓶颈,因此,我们仍然有必要使用二级缓存来加速显卡的资料传递。
二、改善的方法
由于二级缓存是一个非常稀有的资源(奔腾Ⅲ也不过512KB),并且用来处理图形总线的同时,是不能对主内存进行加速的。为此,我们需要有效地分配二级缓存的区域,以取得最佳效果。上面已经提过,视频显存缓冲只有64K,相对于今天的32M显存来说真是太小了,
它显然不足以处理3D数据,弄得不好还会造成纹理传输停顿、游戏贴图错误等严重后果。其实,并不是所有数据都需要进行缓冲,只要合理地调整,小容量缓存亦可以发挥大作用。
一幅1024×768×16位色的2D图像(无Z缓冲)大约需要1024×768×16位/8=1.6MB的RAM来存储,在不考虑纹理的3D环境中则变为1.6M×3=4.8MB。那么,开启Video RAMCacheable可以缓冲0.04%的2D工作或0.01%的3D处理。大部分显卡是用一个64KB的窗口(或称为页)来存取帧缓存的,也就是说,每次的数据传输都以64KB作为一个单位。视频显存的缓冲起了多大作用?还是先看看测试吧。
三、测试
1. 我们使用的测试系统配置如下:
CPU: 赛扬300A超504MHz
主板: Abit BE6
内存: 128MB Hitachi PC100 SDRAM (运行在112MHz, CAS2)
显卡: Creative 3D Blaster RIVA TNT2,内核频率为160MHz,
显存时钟频率为185MHz,驱动程序使用3.53版,
电脑资料
《视频显存缓冲的作用》(http://meiwen.anslib.com)。显存: 32MB SDRAM
硬盘: 22GB IBM Deskstar 22GXP1.WinBench99
CPU WinBench 99 CPUMarks:开启缓存时得分为41.9,关闭缓存时得分为41.9。
FPU WinBench 99 FPUMarks:开启缓存时得分为2690,关闭缓存时得分为2690,这两项测试没有调用显示内存,因此开启/关闭缓存对得分无影响。
Business Graphics WinBench 99 WinMarks:开启缓存时得分为214,关闭缓存时得分为213,从得分可知,打开缓冲区可以改善系统的商业图形性能。
High-End Graphics WinBench 99 WinMarks:开启缓存时得分为617.3,关闭缓存时得分为619.7,结果与商业应用恰恰相反,缓存的打开会导致性能下降。
开启缓存仅对FrontPage等商业应用有利,高端图形应用的得分再次证明了“浮点性能对系统内存总线相当敏感”,Photoshop等高端应用程序就是因为打开缓存而降低了性能。
2. Expendable(兵人)
800×600×16位色:开启缓存时得分为48.5,关闭缓存时得分为48.4。
1024×768×16位色,开启缓存时得分为45.6,关闭缓存时得分为45.6。
以上结果说明分辨率增加以后,缓存的优势被减弱了。
四、结论
无论是理论测试,还是实际测试,开启视频缓存都会改善性能,不过这只适用于要求不高的中、低级应用,对于那些调用了系统全部性能的工作而言(特别是3D游戏和高端软件),缓冲视频显存反而会降低整体速度。最后,建议大家按照自己的需要来设置缓存,适当时
候作出改变才能让电脑发挥出极限性能。