相同显示核心的显卡性能能差多少?如果我说能够达到65%你相信吗?就在大家关注新显卡频率、显存容量的时候,是否考虑过显存的带宽呢?即便是最新的显示核心,如果受到了显存带宽的限制也将性能低下。
被束缚的显示核心
nVIDIA的GeForce4 MX4000。这是一款综合了 FX5200和MX440-8X特性的低端产品。虽然其并不支持DirectX9.0,但是却在DirectX7.0的基础上增加了24条DirectX8.0的像素着色指令。然而,市场上却出现了搭配32位显存的产品。经验证,这样的新显卡性能不升反降,完全束缚了新核心的手脚。
性能下降并非是GeForce4 MX4000显示核心出了问题,关键在于其对显存的要求更宽松,给了不法商贩以可乘之机。首先,MX4000可以直接安插在FX5200的PCB上制造(厂商节省了开发成本)。其次,MX4000加入了对16MB×16位规格显存颗粒的支持。这使MX4000显卡既能是128MB 128位、64MB 64位的显卡,又能是256MB 128位、128MB 64位、64MB 32位的显卡。这一功能以往要在FX5200和更高级别的nVIDIA显卡上才能看到。在低端市场里,主流产品中除了FX5200外,就连ATi的R9200SE?R9200?也不能支持这一显存规格。
终究是显存在作祟
市场上已经出现了搭配32位显存的MX4000核心显卡,虽然其容量仍然是64MB,但显存颗粒的减少直接导致了总显存位宽的降低,比如32位的显卡,只用2颗16MB×16位就足够了。但是这样的结果如何呢?我们使用了Pentium4E 2.8GHz处理器的平台来做了一个小小的试验,在以Direct8为代表的3DMark2001SE测试软件中,32位的MX4000仅得到了4668分的成绩,和128位的MX4000几乎差了65%,而以Direct9.0为代表的3DMark03测试软件中得到了919分的成绩,和128位的显卡也差了将近61%,虽然这样的成绩未必能够精确到个位,但我相信在实际的游戏和软件应用中,肯定已经有了明显的差距。这样的成绩不但没有体现出MX4000的威力,也会让显卡的性能有所倒退。
我们应该知道,显存位宽的大小跟显存带宽有着成正比的关系,而显存带宽却又对显卡3D性能的发挥有着不容忽视的影响。显卡在进行像素渲染时,需要从显存的不同缓冲区读写数据。这些缓冲区有的放置描述像素ARGB?阿尔法通道、红、绿、蓝?元素的颜色数据,有的放置像素Z值?用来描述像素的深度或者说可见性的数据?。如果一旦产生Z轴数据,显存的负担难免会陡然提升,再加上各种材质贴图、深度复杂性渲染、3D特效,其要求的带宽就会成倍增加。如果显存位宽太小,显卡在3D加速能力上大打折扣也就不可避免了,即使配备了大容量显存也于事无补。在超大型3D游戏风靡的今天,32位显存位宽的确显得小了一些,这种显卡的游戏表现往往是不堪重负的。
32位显存为什么出现
除了利润以外,消费者对显存带宽的认识远远不如对显示核心的频率和显存容量那么深刻。平时在电脑市场装机器的时候,大家经常在询问某某显卡的品牌、速度、级别、显存多大,如果是两块同样64MB显存容量的显卡,一个是32位的、一个是64位的,前者能够便宜许多,我想很多消费者会选择前者的,但是在应用的时候就会发现,怎么新的显卡就是不快呀!如果你根本不玩三维游戏,倒是不会有这些烦恼,但你完全可以选择价格更低的老一代显卡,2维应用足够应用,何必让新核心被老应用所拖累呢!
如何辨别低位显存
很明显,MX4000依托16MB×16位颗粒低廉的价格,可以使那些原先生产GF4 MX440-8X以及GF FX5200的厂商,在成本变化不大的情况下,利用MX4000将低端显卡的显存容量加以提升。或者说在显存容量不变的情况下,将显卡的成本降低。但是改动毕竟会留下痕迹,消费者只要细心就不难发现。根据“单颗显存位宽×显存颗粒数=总显存位宽”的计算公式不难看出,只要观察显卡的显存颗粒数量就能够察觉。比如一片采用8颗4MB×16位显存颗粒,拥有64MB显存容量的MX4000显卡,它的显存位数就是128位,其成本在14.4美元左右。而换成2颗16MB×16位显存,显存容量不变,但位数却降低到了32位,当然成本也降低了降低了一半左右。
小知识 显存带宽有多重要
大容量的显存如果没有高带宽支持,就像大奔开进了羊肠小路一样无法充分发挥作用。可以说显存带宽是如此重要,有时候甚至超过了显示芯片的重要性。我们知道,在相同工作频率下,当需要处理大量视频数据时(如Pixel/Vertex Shader等),相对于GPU,较低的显存带宽已经成为制约显卡性能的瓶颈。从“显存带宽=工作频率(若为DDR则是工作频率 X 2) X 显存位宽/8”计算公式知道,若一块显卡的显存为128位的DDR,工作在200MHz(200 X 2=400MHz)的频率上,那么该显卡的带宽=400MHz X 128位/8=6.4GB/s。此时如果采用的是64位的DDR显存,则相应的带宽应为400MHz X 64位/8=3.2GB/s。从理论上来说,64位显存的显卡的性能将是采用128位显存的显卡的一半!
链接 32位显存的背后
32位显存显卡的出现和近期显存颗粒的涨价有直接联系。4MB×16位以及8MB×16位的颗粒价格已经从1.1/2美元涨到1.8/3.5美元,而16MB×16位颗粒价格却稳定在4美元以下。尽管三种颗粒的容量呈现倍数关系,但价格却并未倍数增长。配备64MB显存的显卡如采用4颗8MB×16位显存,成本需要3.5×4=14美元,而采用2颗16MB×16位显存却只需要8美元,根据“单颗显存位宽×显存颗粒数=总显存位宽”的计算公式能够看出,这种设计在为生产厂商节约大量资金的同时,留给消费者的却只能是显存位宽的严重不足。