热点推荐
ZOL首页 > 显卡 > 评测 > 1000元以上 >

两种结构流处理器优劣对比

超越图形界限 AMD并行计算技术全面解析

CBSi中国·ZOL 作者:中关村在线 濮元恺 责任编辑:王胤韬 【原创】 2010年08月25日 06:20 评论
在本页阅读全文(共53页)

    ● 两种结构流处理器优劣对比

    现在的AMD,最大的追求就是在尽可能保证小尺寸核心的基础上,提供尽可能多的性能。或者这话应该换一种方式说——堆垛晶体管的临界点,出现在增加晶体管所导致的性能增加出现拐点的那一刻。当堆垛晶体管所能够换来的性能增幅明显下降的时候,就停止堆垛晶体管。

    疯狂的ALU运算器规模堆砌,让NVIDIA毫无招架之力,同时坚持以效率致胜的MIMD结构流处理器长期无法摆脱晶体管占用量大的烦恼,运算器规模无法快速增长。Fermi架构完全放弃了一味追求吞吐的架构设计方向,这一点在通用计算或者说复杂的Shader领域值得肯定,但是遇到传统编程方式的图形运算,还是因为架构过于超前显得适应性不足。

    RV770可以说是AMD化腐朽为神奇的力作,较之R600,RV770不仅将公共汽车一般缓慢的Ringbus换成了高速直连的Crossbar,而且还追加了大量的资源,比如为16个VLIW CORE配置了16K的Local Data Share,同时将原有的Global Data Share容量翻倍到了16K,在此基础上,还将VLIW CORE规模整体放大到了R600的250%(320个提升到800个),另外,在后端配置的RBE单元以及更加完善的TA/TF也促成了RV770的脱胎换骨。


超越图形界限 AMD并行计算技术全面解析
GT200和RV770运算单元架构

    在扩展ALU资源的基础之上,AMD还在做着另外一件事,那就是尽一切可能逐步优化较为古老和低效的SIMD结构。在RV7中对LDS的空间直接读写操作管理等改进就是这类努力地开始。这导致了R600和R700在Shader Program执行方面有很大差别。R600的Shader Program是Vertical Mode(5D)+Horizontal Mode(16x5D)的混合模式。而RV770是单纯的Vertical Mode(16x4D=64D & 16*1D=16D,即64D+16D)。

    简单的说,RV770更加趋紧于NV50 Shader Unit的执行方式,而R600则相去甚远。总的来说,NV更加趋紧于使用基于硬件调度器的Superscalar方式来开发ILP,而AMD更加趋紧于基于软件编译器调度的VLIW方式来开发ILP。

AMD统一渲染GPU架构 历程回顾与评测
AMD RV870芯片显微照片与功能分析

    到了RV870架构,AMD控制甚至紧缩资源,然后靠制程来拼规模,并最终让SIMD尽可能接近通过暴力吞吐掩盖延迟的最理想结局。然后就出现了我们现在看到的拥有1600个流处理器,体积却依然小于Fermi架构GF100的Radeon HD5870显卡

    AMD从R600核心开始,一直延续着上述理念设计GPU产品,R600身上有很多传统GPU的影子,其Stream Processing Units很像上代的Shader Units,它依然是传统的SIMD架构。这些SIMD架构的5D ALU使用VLIW技术,可以用一条指令完成多个对数值的计算。

    由于内部的5个1D ALU共享同一个指令发射端口,因此宏观上R600应该算是SIMD(单指令多数据流)的5D矢量架构。但是R600内部的这5个ALU与传统GPU的ALU有所不同,它们是各自独立能够处理任意组合的1D/2D/3D/4D/5D指令,完美支持Co-issue(矢量指令和标量指令并行执行),因此微观上可以将其称为5D Superscalar超标量架构。

超越图形界限 AMD并行计算技术全面解析
AMD的流处理器结构变化

    SIMD虽然很大程度上缓解了标量指令执行效率低下的问题,但依然无法最大限度的发挥ALU运算能力,尤其是一旦遇上循环嵌套分支等情况,SIMD在矢量处理方面高效能的优势将会被损失殆尽。同时VLIW的效率依赖于指令系统和编译器的效率。SIMD加VLIW在通用计算上弱势的原因就在于打包发送和拆包过程。

    NVIDIA从G80开始架构作了变化,把原来的4D着色单元彻底打散,流处理器不再针对矢量设计,而是统统改成了标量运算单元。每一个ALU都有自己的专属指令发射器,初代产品拥有128个这样的1D运算器,称之为流处理器。这些流处理器可以按照动态流控制智能的执行各种4D/3D/2D/1D指令,无论什么类型的指令执行效率都能接近于100%。

    AMD所使用的SIMD结构流处理器,具有非常明显的优势就是执行全4D指令时简洁高效,对晶体管的需求量更小。而NVIDIA为了达到MIMD流处理器设计,消耗了太多晶体管资源,同时促使NVIDIA大量花费晶体管的还有庞大的线程仲裁机制、端口、缓存和寄存器等等周边资源。NVIDIA为了TLP(线程并行度)付出了太多的代价,而这一切代价,都是为了GPU能更好地运行在各种复杂环境下。

    但是业界普通的共识是SIMD结构的流处理器设计能够有效降低晶体管使用量,特别是在已经设计好的架构中扩展流处理器数量的难度,比起MIMD结构要容易很多。对比R600和G80架构可知,4个1D标量ALU和1个4D矢量ALU 的理论运算能力是相当的,但是前者需要4个指令发射端和4个控制单元,而后者只需要1个,如此一来MIMD架构所占用的晶体管数将远大于SIMD架构。

上一页 1 ...17 18 19 20 21 ...53 下一页
本文导航
频道热词:华硕主板  Intel  AMD  
视觉焦点
ATI Radeon HD 4850
  • 商家报价:
  • 厂商品牌:ATI
  • ZOL评分:0
  • 网友口碑:0
  • 查看详细>>
    显卡评测热点
    排行 文章标题