第4章 向量处理机(简化版).pptVIP

  • 2
  • 0
  • 约3.41千字
  • 约 23页
  • 2017-11-27 发布于江苏
  • 举报
第4章 向量处理机(简化版)

向量由一组有序、具有相同类型和位数的元素组成。 (特别适合流水处理,流水线最适合处理大批量重复且无关联的计算) 在流水线处理机中,设置向量数据表示和相应的向量指令,称为向量处理机。 不具有向量数据表示和相应的向量指令的流水线处理机,称为标量处理机。 典型的向量处理机 1976年 Cray-1超级计算机 浮点运算速度达到了每秒1亿次 CDC Cyber 205,Cray Y-MP,NEC SX-X/44,Fujitsu VP2600等. 性能达到了每秒几十亿~几百亿次浮点运算 以计算表达式 D=A×(B-C)为例 A、B、C、D ── 长度为 N 的向量, 习惯以列向量的形式来表示 4.1 向量的处理方式 横向(水平)处理方式 向量计算是按行的方式从左到右横向地进行。 先计算: d1←a1×(b1-c1) 再计算: d2←a2×(b2-c2) …… 最后计算: dN←aN×(bN-cN) 组成循环程序进行处理。 qi←bi-ci di←qi×ai 数据相关:N次 不适合于向量处理机的并行处理。 4.1 向量的处理方式 纵向 (垂直)处理方式 向量计算是按列的方式从上到下纵向地进行。 (将整个向量按相同的运算处理完后,再进行别的运算) q1←b1-c1 d1←q1×a1 先计算 …… 再计算 …… qN←bN-cN dN←qN×aN 表示成向量指令: Q=B-C D=Q×A 两条向量指令之间: 数据相关:1次 4.1 向量的处理方式 纵横 (分组)处理方式 又称为分组处理方式。 把向量分成若干组,组内按纵向方式处理,依次处理各组。 对于上述的例子,设: N=S×n+r 其中N为向量长度,S为组数,n为每组的长度,r为余数。 若余下的r个数也作为一组处理,则共有S+1组。 运算过程为: 4.1 向量的处理方式 4.1 向量的处理方式 先算第1组: Q1~n←B1~n-C1~n D1~n←Q1~n×A1~n 再算第2组: Q(n+1)~2n←B(n+1)~2n-C(n+1)~2n D(n+1)~2n←Q(n+1)~2n×A(n+1)~2n 依次进行下去,直到最后一组:第S+1组。 每组内各用两条向量指令。 组内数据相关:1次 向量处理机的结构因具体机器不同而不同。 由所采用的向量处理方式决定。 有两种典型的结构 存储器-存储器型结构 纵向处理方式采用 寄存器-寄存器型结构 分组处理方式采用 4.2 向量处理机的结构 4.2 向量处理机的结构 要充分发挥这种结构的流水线效率,存储器要不断地提供源操作数,并不断地从运算部件接收结果。 (每拍从存储器读取两个数据,并向存储器写回一个结果) 对存储器的带宽以及存储器与处理部件的通信带宽提出了非常高的要求。 解决方法:一般是通过采用多体交叉并行存储器和缓冲器技术。 例如,70年代初问世的Star 100 存储器:32个体交叉 每个体的数据宽度:8个字(字长64位) 最大数据流量:每秒2亿字 4.2 向量处理机的结构 在向量的分组处理方式中,对向量长度N没有限制,但组的长度n却是固定不变的。 对处理机结构的要求:寄存器-寄存器结构 设置能快速访问的向量寄存器,用于存放源向量、目的向量及中间结果。让运算部件的输入、输出端都与向量寄存器相联,就构成了“寄存器-寄存器”型操作的运算流水线。 典型的寄存器-寄存器结构的向量处理机 美国的CRAY-1、我国的YH-1巨型机 提高向量处理机性能的方法 设置多个功能部件,使它们并行工作; 采用链接技术,加快一串向量指令的执行; 采用循环开采技术,加快循环的处理; 采用多处理机系统,进一步提高性能。 4.3 提高向量处理机性能的常用技术 两条向量指令占用功能流水线和向量寄存器的4种情况 指令不相关 例如:V0←V1+V2 V6←V4*V5 这两条指令分别使用各自所需的流水线和向量寄存器,可以并行执行。 功能部件冲突 例如:V3←V1+V2 V6←V4+V5 4.3 提高向量处理机性能的常用技术 这两条指令都要使用加法流水线,发生了功能部件冲突(但向量寄存器不冲突)。当第一条指令流出时,占用加法流水线。第二条指令要等加法流水线变成空闲后,才能流出。 源寄存器冲突

文档评论(0)

1亿VIP精品文档

相关文档