在NV40发布了一年又六十个日子后,nVIDIA又再次发布了其新一代的显卡——Geforce 7800GTX(G70)。 而我们PChome评测室也在第一时间收到了nVIDIA亚太重要合作伙伴之一的XFX(讯景)科技送测的Geforce 7800GTX,下面马上为大家揭开G70神秘的面纱……
从Vertex Shader看G70
二、从Vertex Shader看G70
G70的Vertex Shader和Pixel Shader依旧保持为传统的独立分离式结构,Vertex Shader构造与NV40惊人地相似。恐怕在机能上没有很大的变更。其中Vertex Shader架构只是增强了Shader数以及强化了Setup Engine的能力。据官方的白皮书指出,Vertex Shader的数量从NV40的6 UNIT提升到G70 的8 UNIT,增加到33%了。改进的Setup Engine在处理数据能力上提高了将近50%。
Vertex Shader上的演算UNIT有一个4way矢量UNIT和一个标量UNIT。矢量UNIT支持3D图形中多数采用的MADD,而且MADD能每周期实行。标量UNIT则主要用于三角函数和对数等特殊作业。 无论是矢量还是标量UNIT都支持32bit单精度浮动小数点形式。在NV40/G70中,这两UNIT各自发行命令,而且能一并进行处理。
GPU的Shader方面,DirectX的话用API,OpenGL的话用JIT编译程序,将Shader的指令集屏蔽,为此,GPU可自由设计Shader的原始指令集。也就是说,能够导入大幅度革新指令集水平的设计。 nVIDIA利用这点,在NV40中的Vertex Shader原始ISA并非采用能够以单周期同时处理多项数据的SIMD(Single Instruction Multiple Data),而是以多项命令同时处理多项数据的MIMD (Multiple Instruction, Multiple Data)。此外,NV40的Vertex Shader拥有128bit长的VLIW型指令集。从G70的Vertex Shader构造和规格书都与NV40一样,或推测它们也拥有同样的指令集。顺便说一句,在NV40的Shader中,Pixel Shader也是拥有SIMD型的命令 / DATA FORMAT,通常的GPU也为SIMD型。
NV40系列的Vertex Shader各个Shader可实现最大3 线的多线程。为此,G70也应该具备同等甚至以上的多线程功能。Vertex Shade也像Texture Fetch那样,潜伏时间需进行长处理,即使动态分歧也有可能会令管道混乱,为了避免重蹈在NV30结构上出现的管道数据流停止状态,所以才要进行多线程化。
网友评论