在NV40发布了一年又六十个日子后,nVIDIA又再次发布了其新一代的显卡——Geforce 7800GTX(G70)。 而我们PChome评测室也在第一时间收到了nVIDIA亚太重要合作伙伴之一的XFX(讯景)科技送测的Geforce 7800GTX,下面马上为大家揭开G70神秘的面纱……
从强化的MADD看Pixel Shader
三、从强化的MADD看Pixel Shader
G70搭配了总共24个Pixel Shader。从图中可看到,Pixel Shader以4 UNIT为一束,是因为要以4 UNIT为单位对Pixel Shader进行控制。nVIDIA据说把向来的以4个邻接的象素作为1个单位去控制透视图管子。这次单纯就如图中所示一般。估计是以4象素一起输入、输出来进行控制。ATI的RADEON 9700(R300)系列等也进行同种的控制。
在NV40 / G70体系结构中,Vertex Shader 是单一的,而Pixel Shader则构造非常复杂。 特别是G70里的Pixel Shader数不但从16 UNIT增加到24 UNIT,增幅50%,而且Shader内部也被扩张了。为此、Vertex Shader和Pixel Shader的非对称性发展越来越强。
在仔细揣摩官方的白皮书后,不难推测nVIDIA基本的想法为:以提高Pixel Shader内的并列性,来提高Shader“指令级并行计算 (Instruction-Level Parallelism:ILP) ”的方向性。NV40的Pixel Shader在内部有2个矢量UNIT,两个4way矢量UNIT并列进行。不过,NV40只有一个UNIT能进行MADD,所以无法实现最频繁使用的MADD并列化。G70的这个部分得到改良,可以进行两Shader UNIT的MADD。图中2个Shader UNIT虽然呈纵排列,但实际上2个Shader UNIT能并列地发行命令。上边的Shader UNIT NV40正共有组织处理器和一部分资源。 如果G70是同一构造,就有不能并列演算的情况。
Pixel Shader的两矢量UNIT中,有被称为Mini-ALU的标量演算UNIT附属其中。Mini-ALU在PS3 RSX的Graphic Engine中充当SFU(Special Function Unit)了。 看来是和Vertex Shader的标量UNIT为同一种类的UNIT。
网友评论