[7800GTX专题]核心架构解析&专业测试
随着NVIDIA最新GeForce 7800GTX的发布,人们关注的焦点再次放到了高端图形芯片的革新上。在了解了GeForce 7800GTX显卡的性能和CineFX 4.0引擎的基础上,想必您对GeForce 7800GTX的芯片架构方面产生了更大的兴趣,今天我们就再来看看GeForce 7800GTX图形芯片的架构方面有什么改进。
每一代新的图形芯片,势必在架构上有重大改变,因为这是提升芯片性能的最重要途径。仅仅是提升频率,不能称之为不同的芯片。在GeForce 7800GTX图形芯片中,包含了NVIDIA最新的技术,并且在架构上比上一代产品有了更进一步的改进。
GeForce 7800GTX图形芯片架构上的改进主要体现在两个方面:
◎ 并行性:GeForce 7800GTX在并行处理能力上有大幅度的提高,相比上一代产品,提供了更丰富的处理管线,从而让性能得到了大幅的提升。
◎ 管线密度:GeForce 7800GTX图形芯片并不是上一代产品的管线数增加的版本,而是真正对管线内部进行了改进,每一个管线均有内在的改进,提升了单个管线的处理能力。并且在处理数据的精度上有了进一步的提升。
在了解GeForce 7800GTX图形芯片的架构之前,我们先从微观的角度来看看这款芯片。
在GeForce 7800GTX芯片上,集成了高达3亿200万的晶体管,可以说是世界上最复杂的芯片了。
这3亿200万个晶体管代表什么意思呢?我们给大家算个加法大家就明白了:
芯片 | 晶体管数目 |
PS2 CPU | |
PS2 图形芯片 | |
XBOX CPU | |
XBOX 图形芯片 | |
NGC CPU | |
NGC 图形芯片 | |
Athlon 64 FX55 | |
合计 |
我们看到,即使将目前市场上非常先进的3款游戏机的处理器和图形芯片加起来,再加上PC上最快的处理器Athlon64 FX55,总共的晶体管数目只有300.4M,也就是3亿40万个,还没有GeForce 7800 GTX图形处理器的一颗多。
图形芯片 | 顶点处理管线 | 像素处理管线 |
GeForce 7800 GTX | 8 | 24 |
GeForce 6800 Ultra | 6 | 16 |
GeForce 6800 GT | 6 | 16 |
GeForce 6800 | 5 | 12 |
GeForce 6800 Le | 5 | 8 |
GeForce 6600 GT | 3 | 8 |
GeForce 6600 | 3 | 8 |
GeForce 6200 | 3 | 4 |
首先我们来看看在GeForce 7800GTX全新的架构中VertexShader Unit(顶点渲染单元)的具体架构。
然后我们再来看看在GeForce 7800GTX图形芯片中像素渲染管线的具体架构。
那么经过这些改良的GeForce 7800GTX图形芯片的性能将有多大的性能提升呢?我们特别安排了专门针对Shader性能的测试,首先我们使用3DMark05中自带的测试功能对VertexShader的性能进行了测试:
在这个测试中,测试的过程主要是考察处理顶点的能力,所以受分辨率的影响不是很大,通过测试我们也验证了这一点,所以我们仅仅用一个常用的分辨率来进行这个测试。
在对Vertex Shader进行了测试之后,我们再来看看Pixel Shader的性能测试。同样的,我们使用3DMark 05中所提供的测试选项进行测试。
和前面我们测试的VertexShader不同,PixelShader的性能很大程度上会受显示分辨率的影响,所以我们看到,不同的分辨率的性能也有着比较大的差异。
除了使用3DMark 05中自带的测试功能之外,我们还使用了更为专业的Shader测试软件进行测试,我们使用的是ShaderMark最新的2.1版。
ShaderMark是一个专门测试3D Shader性能的测试软件,这个测试软件其中自带了实现多种效果的Shader,通过运行这些Shader来测试显示芯片的性能。
在最新的2.1版本的ShaderMark中,支持最新的DirectX 9.0中的ShaderModel 3.0。ShaderMark 2.1能够很好的提供对SM3.0的支持,并且可以表现出ShaderModel 3在画质和性能上的优势。
Shader精度 | RADEON X850XT | GeForce 6800 Ultra | GeForce 7800 GTX |
Pixel Shader 1.1 完全精度 | s16e7 | s10e8 | s10e6 |
Pixel Shader 1.4 完全精度 | s16e7 | s10e8 | s10e6 |
Pixel Shader 2.0 完全精度 | s16e7 | s23e8 | s23e8 |
Pixel Shader 2.0 局部精度 | s16e7 | s10e5 | s10e5 |
Pixel Shader 3.0 完全精度 | s0e0 | s23e8 | s23e8 |
Pixel Shader 3.0 局部精度 | s0e0 | s10e5 | s10e5 |
这里特别说明一下,上表中“s10e6”代表10位底数6位指数的有符号数。
下面我们就来看看在ShaderMark 2.1中各种Shader的执行效率。ShaderMark中包含了各种各样的特效Shader一共24个,下面是我们的测试结果。
Shader种类 | X850XT | 6800U | 7800GTX |
Per Pixel Diffuse Lighting | 964 | 898 | 1553 |
Per Pixel Directional Light Shader (Phong) | 721 | 718 | 1316 |
Per Pixel Point Light Shader (Phong) | 719 | 718 | 1316 |
Per Pixel Spot Light Shader (Phong) | 596 | 658 | 1077 |
Per Pixel Anisotropic Lighting | 721 | 718 | 1316 |
Per Pixel Fresnel Reflections | 629 | 658 | 1196 |
Per Pixel Car Surface Shader | 403 | 416 | 778 |
Per Pixel Environment Mapping | 1205 | 1075 | 1674 |
Per Pixel Environment Bump Mapping | 792 | 837 | 1316 |
Per Pixel Bump Mapping | 671 | 703 | 1196 |
Per Pixel Shadowed Bump Mapping | 245 | 459 | 702 |
Per Pixel Veined Marble Shader | 347 | 419 | 778 |
Per Pixel Wood Shader | 387 | 448 | 837 |
Per Pixel Tile Shader | 284 | 325 | 568 |
Per Pixel Refraction and Reflection Shader with Phong Lighting | 326 | 347 | 626 |
Per Pixel BRDF-Phong/Anisotropic Lighting | 417 | 438 | 837 |
Fur Shader With Anisotropic Lighting | 42 | 54 | 76 |
Combination Effect | 137 | 178 | 311 |
Dual Layer 8x8 PCF Shadow Mapping without Flow Control | 46 | 60 | 105 |
Dual Layer 8x8 PCF Shadow Mapping with Flow Control | 不支持 | 88 | 101 |
205 | 119 | 267 | |
不支持 | 134 | 299 | |
143 | 84 | 198 | |
Per Pixel Edge Detection And Hatching Shader using 1 RT and 2 Passes | 121 | 94 | 180 |
我们注意到在HDR特效上,X850XT有的项目不支持。在成绩方面,我们看到,GeForce 7800GTX的性能比前面的两块显卡高很多,基本上都是翻倍的提升,这证明GeForce 7800GTX在Shader的运行效率上的确有很大进步。
● 总结
GeForce 7800GTX图形处理器在架构上的改变是明显而且有效的,同时选择增加管线的数目和提升管线的能力是一个很好的主意,这样从两方面入手,使得在管线数目增加不到1倍的情况下实现了性能的翻倍。