|
2.传统Pipeline模型 VS Unified Shader模型 Geforce8800 GPU的研发工作从2002年夏天正式开始。Geforce8800 GPU的设计当时有四大目标。显而易见的超过当代的GPUs、提升图像质量、提供强大的物理和浮点处理性能,适应DirectX的发展推出新概念的GPU Pipeline。 | 架构 | 制造工艺 | 晶体管数目 | DirectX支持
| GeForce256 | NV10 | 0.22 Micron | 23 Million | 7.0 | GeForce2 GTS | NV15 | 0.18 Micron | 25 Million | 7.0 | GeForce3 | NV20 | 0.15 Micron | 57 Million | 8.0 | GeForce4 Ti4600 | NV25 | 0.15 Micron | 63 Million | 8.0 | GeForce FX 5900 | NV35 | 0.13 Micron | 135 Million | 9.0 | GeForce 6800 Ultra | NV40 | 0.13 Micron | 222 Million | 9.0C | GeForce 7800GTX | G70 | 0.11 Micron | 302 Million | 9.0C | GeForce 7900GTX | G71 | 0.09 Micron | 278 Million | 9.0C | GeForce 8800GTX | G80 | 0.09 Micron | 671 Million | 10 |
传统经典的Pipeline模型,不同种类属性的vertices,包括index、commands和textures,线性缓冲区的Setup引擎自上而下的经过vertex shading、 pixel shading和ROP,最后被写进frame buffer。事实上Geforce7系列GPU拥有超过200个连续的阶段。 
显而易见的,采用了Unified pipeline设计的Geforce8800 GPU可以有效的减少pipeline的层数,同时将传统经典pipeline自上而下的线性顺序变成连续的循环导向的过程。input经过unified shader core作为output写进去寄存器,同时返回到shader core再进行下次操作。  (G70架构图)

在不同应用程序和游戏中,vertex shader和pixel shader的需求比例不尽相同, 十分不幸地在Geforce8800 GPU之前,GPU里面的vertex shader和pixel shader的比例是固定。显然unified的实际适应性更强,从下面的例子我们可以看到在unified shader架构的威力,大大提升了GPU的硬件使用率,尽量避免shader空闲的情况发生。
|