不同意楼主的看法
R600拥有320个流处理单元,而8800只有128个流处理器,数量上大大超过了G80,但2者是完全不同的构架,数量上的对比是没有意义的.G80的每个流处理器均能在同一个周期中,进行浮点运算或函数运算,和处理整数指令,也就是说理论上一个周期内能完成128个数据及指令运算,而且G80的流处理器频率与核心频率并不同步,8800gtx核心频率为575,shader频率却高达1.35g,这大大提升了流处理器的处理能力。而ATI同步了2者的频率,即2900XT的shader仅为740,比G80几乎低了一倍
ATI采用了SIMD(single instrucion multiple data)的设计,核心拥有4组流处理器,并各自连接一组Texture Units,每组拥有16个流处理器,共计64个流处器。ATI宣传的2900XT拥有320个,是流处理单元不是流处理器!
还记得ATI的黄金3比1架构吗?每条渲染管线拥有3个pixel shader units,ATI的同一渲染架构跟前者有异曲同工之妙,实际上ATI的每个流处理器中拥有5组ALU,这里的ALU就是所谓的流处理单元,64个流处理器拥有320个流处理单元。
在ATI的每个流处理器中,1组闲置的ALU分支预测单元,配置了缓存器,可以存放输入/输出数据,5组ALU组多可以处理5份数据。所以2900XT的320个流处理单元,在一个周期能处理320分数据。不过,每个SIMD只能执行一份VLIM指令,因此,每个周期能够执行的指令数量在很大程度上取决于UTDP(ultra thred displath processor)能将更多的简单指令,集合成一组VLIM指令,填满一条流水线上的16个流处理器,80个ALU。为了提升SIMD运算效率,ATI在2900XT中加入了8KB的读取缓存,作为虚拟暂时存储空间,配合stream out buffer,存储一些不需要经过渲染后端处理的数据。