RV770 GT200核心架构大比拼
AMD-ATI和NVIDIA两家公司的产品在设计思路上迥异,下面就让我们浅析一下GT200和RV770二者的架构。
首先,新一代的产品势必会要争取更强大的性能,在进入DirectX 10时代后,显卡除了增加自身频率外,大规模增加流处理器数量是一个立竿见影的做法。RV770就是如此,相对于上一代RV670的320个流处理器,其翻倍增至800个。
其次,增加显存位宽和显存容量。RV770在这点上相对RV670没有做改动,也许是吸取了在Radeon HD 2900系列产品中教训。反观GT200核心不仅着手增加流处理器,还激进的首次采用512bit显存位宽,这样通过增加流处理器和显存位宽,从而降低显卡对频率的依赖,毕竟14亿晶体管构建的576mm2核心发热量、功耗太大了。
● 以组为单位 性能浅析
众所周知,现在在进入DirectX 10时代后启用了统一架构,但是AMD-ATI和NVIDIA在设计上略有差别,例如上图中的架构可以看出AMD-ATI的产品采用4D+1D的SIMD方式,而NVIDIA再用1D标量MIMID方式,这就是很多网友为什么说AMD-ATI产品流处理器要除以5再和NVIDIA产品比较的原因。
我们可以把4D+1D的组合看做一个SP(Streaming Processor 流处理器),AMD-ATI每16个SP构成一个叫做SIMD Core的组,这点与NVIDIA的SM(Streaming Multiprocessor)结构相类似,其是由8个SP构成一组SM。
在核心宏观角度考虑,RV770相对于RV670仅是增加了2.5倍的SIDM Core,基本宏观设计思路变化不大。反观GT200的核心架构,首先大刀阔斧的将每组TPC扩容至3组SM(之前产品为2组SM),从而增加线程管理作用。
那么,GT200的1D标量MIMD架构和RV770的4D+1D向量SIMD架构在运算上分别有何长处呢?
NVIDIA GT200 | AMD RV770 | AMD RV670 | |
SP Issue Width | 1-way(1D) | 5-way(4D+1D) | 5-way(4D+1D) |
# of SPs | 240 | 160 | 64 |
Worst Case Dependent Instruction Throughput | 240 | 160 | 64 |
Maximum Scalar Instruction Throughput | 480 | 800 | 320 |
从表中不难看出,GT200的1D标量MIMD架构相对而言更加适合单线程运算,此时相对于RV670和RV770有更多的执行线程。而在运行负载运算时,AMD-ATI的4D+1D向量SIMD架构得以发挥,例如RV770此时800流处理器运算,而GT200即使调用SFU实现Dual-Issue技术,也仅有480线程计算量。
对比RV770和GT200核心中每组流处理器架构,我们能够很容易看出RV770共有160个SIMD Core(每SIMD Core由5个流处理器组成,即160*5=800个流处理器)分成10组,每组SIMD Core有16个SP。反观GT200核心的240个流处理器,由于NVIDIA采用MIMD的流处理器形式,所以每个流处理器拥有独立的指令发射器。而这240个流处理器分为10组TPC,每组TPC又分成3组SM,每组SM拥有8个流处理器。
两款核心及产品在宏观架构设计上平分秋色,在微观单元设计及技术应用上二者都较上一代产品有了大踏步的前进,尤其是RV770融入了很多AMD在通用处理器上的技术,使其工作效率更佳。