E X P

  • 编辑
  • 评论
  • 标题
  • 链接
  • 查错
  • 图文
  • 全文浏览

    更高效的图形与计算架构:VLIW4

      说到VLIW(Very long instruction word,超长指令字),不得不要多费些笔墨。一直以来,传统的GPU均是基于SIMD(Single Instruction Multiple Data,单指令多数据)架构的,这种架构的好处在于一个指令发射端可以对应多个数据通道。

      ·SIMD架构

      我们知道,一个像素颜色可以由RGB三原色和半透明通道(Alpha)一共是RGBA四个通道来描述,同样,对于一个像素的位置可以用XYZW齐次坐标精准的进行定位,也是需要四个数据,3D图形渲染本质上就是改变RGBA或XYZW的数值。一个像素渲染或几何转换,需要进行四次运算,这也是为什么最初像素着色器和顶点着色器被设计为具备四次运算能力的ALU(Arithmetic Logic Unit,算术逻辑单元)。

      传统GPU的ALU在一个时钟周期内进行四次并行运算,我们称之为4D矢量(Vector)操作,和矢量对应的是标量(Scalar),标量指一个单独的值,N个标量在一起就组成了矢量。在GPU中像顶点着色器这样的ALU,只有一个指令发射端,却可以同时运行四个数据,这就是SIMD架构。

      SIMD架构能够有效提升GPU的矢量处理性能,但是4D SIMD架构一旦遇到1D标量指令时,利用率只有1/4。ATI和NVIDIA在进入DX9时代后相继采用混合型设计,允许Co-issue操作(矢量和标量指令并行执行),比如支持2D+2D和3D+1D模式,很大程度上缓解了标量指令执行效率低下的问题,但是随着API和游戏越来越复杂,4D指令比重变得越来越小,ALU的效率始终不能令人满意。

      GPU演变到了统一渲染架构时代后,NVIDIA开始“背离”SIMD架构,在G80时代开始采用MIMD(Multiple Instruction Multiple Data,多指令多数据)架构,而AMD的R600继承了SIMD的设计,并且一直延用到了Cayman核心。

      ·VLIW5处理器

      R600的核心里,设计有多个VLIW处理器(也叫流处理单元或线程处理器),每个VLIW处理器中拥有有5个1D ALU(亦即常说的流处理器)和1个分支执行单元,为了避免和其它规格搭配的VLIW冲突,称R600中的这种处理器为VLIW5处理器。

      5个ALU能以1+1+1+1+1或1+4或2+3等方式搭配,理想状态下,采用特定安排的指令组合,在一个时钟周期内可以完成5个指令运算。shader指令经过驱动JIT编译器编译优化后,变成能识别的机器码并捆绑成非常长的VLIW指令串,这些指令串会被序列器重新安排,把不相依的指令捆绑在一起交给VLIW处理器去执行。

      实际上在VLIW处理器中的5个ALU并非对等的,它们被分为两种ALU[X, Y, Z, W]和ALU.trans两种,也就是4D+1D的组合形式,在上图中的T-Stream那个胖一点的就是ALU.trans,除了MAD外,它还能够进行一些特殊(SIN、COS、LOG、EXP等)函数的运算,但CUBE、Dot4、MOVA等指令不能在ALU.trans上执行。

      NVIDIA的G80走的是彻底的标量化路线,将ALU拆分为了最基本的1D标量,传统GPU中一个周期完成的4D矢量操作,在MIMD架构中需4个周期或4个ALU并行处理完成。它的最大好处是灵活,不论是1D/2D/3D/4D指令,都能将其拆成1D指令来处理。

      AMD所使用的SIMD架构非常明显的优势就是执行全4D指令时简洁高效,1个指令发射端可以对应5个ALU,晶体管的需求量小,规模扩展的难度比起MIMD架构要小很多。而NVIDIA的MIMD设计,每个ALU都需要指令发射端,需要消耗非常多的晶体管,庞大的线程仲裁机制、端口、缓存和寄存器等周边资源的消耗也很大,功耗和成本上处于劣势。

      R600的SIMD架构的缺陷也很明显,还是效率问题,VLIW本身会存在若干约束,一般情况下指令吞吐率可能只有1/5,AMD提供的数据是,VLIW5处理器只有3-4个ALU的利用率。AMD通过大幅增加流处理器单元的数量并增加分支执行单元改善指令分配问题,如何优化好VLEW指令组合,在驱动设计上要付出更多努力,这或许是AMD的催化剂驱动一直备受诟病的原因之一。

      对于VLIW处理器,因为存在指令相依性的问题,所以没有哪个指令序列器、编译器能保证其100%超标量执行能力(VLIW内部其实是一种超标量处理器)。

        所谓相依性,是指B指令对A指令的依赖,比如A指令为a=b+c,B指令为d=a*e,
        显然B指令必须等待A指令完成后才能执行,A和B不能实现超标量执行。

    ×
    热门文章
    1OpenWrt首款硬件产品已有实物,且将会在OpenWrt峰会展出并被拍卖
    2ROG MAXIMUS Z790 HERO BTF背插主板图赏:旗舰美感再进化
    3影驰RTX 4060 Ti 无双MAX显卡评测:带来极致的安装兼容性体验
    4昂达首批显示器即将上市:共四款产品,提供三年上门全国联保
    5海信推出27G7K-Pro显示器:与《黑神话》合作,4K@160Hz,预售价3699元
    6十铨科技发布MP44Q M.2 PCIe 4.0 SSD:最大可选4TB,紧随大容量需求趋势
    7三星HBM4计划2025年首次亮相:将有16层堆叠,改用3D封装
    8铠侠连续亏损后再次寻求IPO,最快今年10月在东京上市融资
    9三星和高通宣布成功完成1024 QAM测试:下行链路速度提高20%以上
    已有 39 条评论,共 262 人参与。
    登录快速注册 后发表评论
    • 游客  2020-11-12 16:53

      该评论年代久远,荒废失修,暂不可见。

      已有5次举报

      支持(11)  |   反对(0)  |   举报  |   回复

      39#

    • 游客  2011-02-11 13:26

      该评论年代久远,荒废失修,暂不可见。

      已有4次举报

      支持(4)  |   反对(0)  |   举报  |   回复

      38#

    • 游客  2011-01-30 19:47

      该评论年代久远,荒废失修,暂不可见。

      已有4次举报

      支持(5)  |   反对(1)  |   举报  |   回复

      37#

    • 游客  2011-01-28 17:33

      该评论年代久远,荒废失修,暂不可见。

      已有4次举报

      支持(5)  |   反对(1)  |   举报  |   回复

      36#

    • 游客  2011-01-24 02:56

      该评论年代久远,荒废失修,暂不可见。

      已有4次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      35#

    • 游客  2010-12-30 02:52

      该评论年代久远,荒废失修,暂不可见。

      已有4次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      34#

    • 超能网友大学生 2010-12-23 10:56    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有4次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      33#

    • 超能网友管理员 2010-12-17 19:26    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      32#

    • 游客  2010-12-17 14:03

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      31#

    • 游客  2010-12-17 13:47

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      30#

    • 游客  2010-12-17 13:40

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      29#

    • 游客  2010-12-17 12:04

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      28#

    • 游客  2010-12-17 10:53

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      27#

    • 游客  2010-12-16 22:02

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      26#

    • 游客  2010-12-16 21:23

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      25#

    • 超能网友研究生 2010-12-16 19:30    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      24#

    • 超能网友小黑屋 2010-12-16 17:59    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      23#

    • 超能网友大学生 2010-12-16 17:43    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      22#

    • 游客  2010-12-16 17:34

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      21#

    • 游客  2010-12-16 17:20

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      20#

    • 超能网友小学生 2010-12-16 17:10    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      19#

    • 超能网友研究生 2010-12-16 14:59    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有3次举报

      支持(3)  |   反对(0)  |   举报  |   回复

      18#

    • 游客  2010-12-16 12:29

      该评论年代久远,荒废失修,暂不可见。

      已有2次举报

      支持(2)  |   反对(0)  |   举报  |   回复

      17#

    • 超能网友高中生 2010-12-16 12:18    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有2次举报

      支持(2)  |   反对(0)  |   举报  |   回复

      16#

    • 游客  2010-12-16 11:50

      该评论年代久远,荒废失修,暂不可见。

      已有2次举报

      支持(2)  |   反对(0)  |   举报  |   回复

      15#

    • 超能网友管理员 2010-12-16 11:18    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有2次举报

      支持(2)  |   反对(0)  |   举报  |   回复

      14#

    • 游客  2010-12-16 10:12

      该评论年代久远,荒废失修,暂不可见。

      已有2次举报

      支持(2)  |   反对(0)  |   举报  |   回复

      13#

    • 超能网友博士 2010-12-16 08:13    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有2次举报

      支持(2)  |   反对(0)  |   举报  |   回复

      12#

    • 游客  2010-12-16 07:48

      该评论年代久远,荒废失修,暂不可见。

      已有2次举报

      支持(2)  |   反对(0)  |   举报  |   回复

      11#

    • 超能网友教授 2010-12-16 02:27    |  加入黑名单

      该评论年代久远,荒废失修,暂不可见。

      已有2次举报

      支持(2)  |   反对(0)  |   举报  |   回复

      10#

    加载更多评论

    登录 后发表评论,若无帐号可 快速注册 ,请留意 评论奖罚说明