向量流水处理机.ppt
《向量流水处理机.ppt》由会员分享,可在线阅读,更多相关《向量流水处理机.ppt(46页珍藏版)》请在三一办公上搜索。
1、第十四讲向量流水处理机,计 算 机 系 统 结 构,2,向量处理的基本概念向量流水处理机的结构提高向量流水处理机性能的方法,3,向量处理的基本概念,从数学的概念上讲,标量是指单个量,而向量是指一组标量。例如,有一个数组A(a1,a2,a3,an),其中括号内的每一个元素ai就是一个标量。而A称为向量,它由一组标量组成。一条向量指令可以处理N个或N对操作数。我们把这N个互相独立的数叫做向量,对这样一组数的运算叫做向量处理。因此,向量指令的处理效率要比标量指令的处理效率高得多。,4,向量处理方式,有三种处理方式:横向处理方式,又称为水平处理方式,横向加工方式等。向量计算是按行的方式从左至右横向地进
2、行。纵向处理方式,又称为垂直处理方式,纵向加工方式等。向量计算是按列的方式自上而下纵向地进行。纵横处理方式,又称为分组处理方式,纵横向加工方式等。横向处理和纵向处理相结合的方式。要根据向量运算的特点和向量处理机的类型选择向量的处理方式。,5,向量处理方式,例如:向量计算:A*(B+C)的循环程序 用C语言为 for(i=1;i=n;i+)di=ai*(bi+ci)水平处理法(横向)d1=a1*(b1+c1)d2=a2*(b2+c2)dn=an*(bn+cn),6,水平处理法,假设中间结果为t(i)计算第1个分量:t(1)b(1)c(1)d(1)a(1)t(1)计算第2个分量:T(2)b(2)c
3、(2)d(2)a(2)t(2)计算第N个分量:t(N)b(N)c(N)d(N)a(N)t(N),当采用流水方式计算时,在每个向量加乘运算中都会发生数据相关。而且当使用静态流水线时,还要进行2次乘和加功能的转移。这样共出现N次相关,2N次功能转换。因此,横向处理方法不适合于向量流水处理。,7,纵向处理法,向量计算是按列的方式自上而下纵向地进行。即先是所有B和C向量元素对的相加运算,中间结果暂存到k1kN中;然后再纵向加工所有对应元素的乘法运算。,(b1c1),(b2c2),(bNcN),8,纵向处理法,用向量指令形式来表示,则变成:KBCDKA只需要两条指令就能实现 VADDB,C,K VMUL
4、K,A,D显然,当采用流水方式计算时,数据相关在两条向量指令间仅有1次,而流水线加、乘功能的切换只需1次。因此,纵向处理方法可获得较高的吞吐率,适合于在向量处理机中应用。,9,纵横处理法,当向量长度N大于向量寄存器长度n时,需要分组处理。分成k组,组内采用纵向处理方式,组间采用横向处理方式。分组方法:n=k*m+r 其中:m为每组长度,r为第k+1组剩余分量 Bi+CiKi(1到m)Ki*AiDi(1到m)Bi+CiKi(m+1到2m)Ki*AiDi(m+1到2m),10,纵横处理法,每组用两条向量指令,每组发生相关两次,其中组内发生数据相关一次,组间切换时发生相关一次。主要优点:减少访问主存
5、储器的次数例如:中间变量K不写入主存储器,11,向量处理的基本概念向量流水处理机的结构提高向量流水处理机性能的方法,12,基本结构,主存,标量寄存器,标量功能部件,向量功能部件,向量寄存器/向量缓冲器,向量指令控制部件,向量存取部件,指令处理部件,向量功能部件,向量功能部件,控制部分:控制部件和缓冲部件(中间REG),标量流水:功能部件和标量寄存器(S),向量流水:功能、存取部件和寄存器(V、VM、VL),向量流水处理机的结构,13,向量流水处理机的结构,按向量元素和结果存放分M-M和R-R两类。存储器存储器结构多个独立的存储器模块并行工作处理机结构简单对存储系统的访问速度要求很高寄存器寄存器
6、结构运算通过向量寄存器进行需要大量高速寄存器对存储系统访问速度的要求降低,14,存储器-存储器结构,向量处理机的基本思想是把两个向量的对应分量进行计算,产生一个结果向量。参加运算的向量数据在存储器中,运算的结果也送到存储器中,其结构与数据流的示意图如下图所示。如果以向量加法为例子:C=A+B,一种能实现两个向量相加的流水结构的加法器,15,多模块存储器系统的向量处理机,16,向量计算C=A+B的时空图,假设一个存取周期等于两个时钟周期,并假设向量A、B、C各有8个,那么理想实现CAB向量计算的时空图如图所示。为了不发生读写冲突,各向量元素在存储模块中的位置是有意安排的。由于运算流水线分为4段,
7、因此输入数据进入流水线4个时钟周期之后才能产生相应的输出值。当数据充满后,流水线就一直处于忙碌状态。,17,功能部件4功能部件3功能部件2功能部件1存储体M8存储体M7存储体M6存储体M5存储体M4存储体M3存储体M2存储体M1,0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 t,1 2 3 4 5 6 7 8,1 2 3 4 5 6 7 8,1 2 3 4 5 6 7 8,1 2 3 4 5 6 7 8,RB6 RB6 RA8 RA8 WC4 WC4,RB5 RB5 RA7 RA7 WC3 WC3,RB4 RB4 RA6 RA6 WC2 WC2,RB3 RB3 R
8、A5 RA5 WC1 WC1,RB2 RB2 RA4 RA4,RB1 RB1 RA3 RA3,RA2 RA2,RA1 RA1,WC8 WC8,WC7 WC7,WC6 WC6,WC5 WC5,RB8 RB8,RB7 RB7,C=A+B向量处理时序图,18,具有延迟缓冲器的向量流水线结构 然而实际情况并非总和上述理想化的情况一样。假如结果向量C的第一个元素C1不是存放在我们想存放的模块M5而是在模块M6,那么将出现存储模块的读写冲突。为了消除争用存储器的现象,可在运算流水线的输入端和输出端增加可变延迟缓冲器,如图所示。显然,有了输入输出缓冲器,可以实现向量操作无冲突地进行,存储系统,可变延迟器,流
9、水处理部件,可变延迟器,先启动读A,再启动读B,A延迟2个时钟进入加法器,19,寄存器-寄存器结构,使主存有较高带宽的另一种方法是由一级或多级中间存储器形成一个层次结构的存储器系统,其中带宽最高的这一级存储器安排在离处理器最近的位置。当处理器需要向量时,把向量从主存送到速度最快的这一级存储器。反之,运算结果也先送到速度最快的中间存储器。由于中间级存储器起着数据的中间存储作用,功能上相当于寄存器,因此称为寄存器-寄存器型向量处理机。,20,Cray-1向量机结构,21,对于向量运算来说,中间存储器是8个向量寄存器(V),每个向量寄存器有64个分量,每个分量为一个64位寄存器。执行向量指令时,流水
10、结构运算器在一个时钟周期内从两个V寄存器得到一对操作数,完成某种操作后用一个时钟周期时间把结果送入另一个V寄存器。注意,此处的向量运算流水线是从向量寄存器而不是从主存储器获得数据。同样,从流水线输出的结果向量也是送回向量寄存器。而另一方面,主存储器与V寄存器之间的数据传送以成组传送方式进行。对标量运算来说,有两级中间存储器。速度很快的一级是8个64位的S寄存器,它是标量寄存器。主存与T寄存器之间以成组传送方式进行数据交换。,22,中间存储器的优点,这种中间存储器与Cache相比的一大优点是速度快。因为CRAY-1流水运算器通过寄存器寻址方式访问中间存储器,而访问Cache必须查Cache表,这
11、需要较长时间。,23,向量处理的基本概念向量流水处理机的结构提高向量流水处理机性能的方法,24,提高向量流水处理机性能的方法,一、多功能部件并行操作二、链接技术三、分段开采技术四、向量递归技术,25,一、多功能部件并行操作,对向量机中多个功能部件,使其能并行操作。并行操作条件:(1)不存在向量寄存器使用冲突不允许出现RAW、WAR、WAW、RAR相关。如:V4V1+V2V5V1V2 V5V2V3V5V3V4(2)不存在功能部件使用冲突每种功能部件一般只设置一个。如:V3V1V2 V6V4V5,26,二、链接技术,利用向量指令间存在的先写后读的数据相关性来加快向量指令序列执行速度的技术称为链接技
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 向量 流水 处理机
链接地址:https://www.31ppt.com/p-5945100.html