638第六章向量处理机.ppt
《638第六章向量处理机.ppt》由会员分享,可在线阅读,更多相关《638第六章向量处理机.ppt(48页珍藏版)》请在三一办公上搜索。
1、计算机系统结构,第六章 向量处理机,向量处理机是解决数值计算问题的一种高性能计算机结构向量处理机一般都采用流水线结构,有多条流水线并行工作向量处理机通常属大型或巨型机,也可以用微机加一台向量协处理器组成一般向量计算机中包括有一台高性能标量处理机必须把要解决的问题转化为向量运算,向量处理机才能充分发挥作用,6.1 向量处理的基本概念,什么是向量处理 例如:一个简单的C语言程序如下:for(i=1;i n;i+)ai=bi+ci;bi=2*a i+1;在标量处理机上用下述指令实现:,A、B、C分别是向量a、b、c在内存中的起始地址:INITIALIZE I=1 if(iN)GOTO 20 read
2、 bI read cI add bI+cI store aIbI+cI read aI+1 multiply 2*aI+1 store bI 2*aI+1 increment I I+1 goto 10Stop,常量2,a,b,c中每一个元素都称为一个标量。该指令序列称为标量指令序列,执行过程为标量处理过程,每一条指令只处理一个或一对数据。,上述程序用向量化指令序列实现为:a1:n=b1:n+c1:n temp1:n=a2:n+1 b1:n=2*temp1:n 将n个独立的数构成的整体称为向量,对这一组数的运算称为向量处理。一条向量处理指令可以处理n个或n对操作数。,向量处理方式要根据向量运算
3、的特点和向量处理机的类型选择向量的处理方式。有三种处理方式:1横向处理方式,又称为水平处理方式,横向加工方式等。向量计算是按行的方式从左至右横向地进行。2纵向处理方式,又称为垂直处理方式,纵向加工方式等。向量计算是按列的方式自上而下纵向地进行。3纵横处理方式,又称为分组处理方式,纵横向加工方式等。横向处理和纵向处理相结合的方式。以一个简单的C语言编写的程序为例,说明向量的三种处理方式的工作原理。for(i=1;i=n;i+)yi=ai(bi+ci);,横向处理方式 也称为水平处理方式,横向加工方式等逐个分量进行处理:假设中间结果为TI计算第1个分量:T1 B1C1 Y1 A1T1计算第2个分量
4、:T2 B2C2 Y2 A2T2最后一个分量:TN BNCN YNANTN存在两个问题:在计算向量的每个分量时,都发生写读数据相关。流水线效率低如果采用多功能流水线,必须频繁进行流水线切换横向处理方式对向量处理机不适合即使在标量处理机中,也经常通过编译器进行指令流调度。,纵向处理也称为垂直处理方式,纵向加工方式等T1=B1+C1T2=B2+C2Tn=Bn+CnY1=A1T1Y2=A2T2YN=AN TN采用向量指令只需要2条:VADDB,C,TVMULA,T,Y这种处理方式适用于向量处理机,数据相关不影响流水线连续工作。不同的运算操作只需要切换1次。,纵横处理方式 将长度为n的向量分成若干组,
5、每组长度为m,组内按纵向方式处理,依次处理各组。用于寄存器-寄存器结构的向量处理机中向量寄存器的长度是有限的,例如,每个向量寄存器有64个寄存器。当向量长度N大于向量寄存器长度n时,需要分组处理。分组方法:nm,其中:为余数,共分组。组内采用纵向处理方式,组间采用横向处理方式。因此,也称为分组处理方式,纵横向加工方式等。,6.2 向量处理机结构,向量处理机的基本思想是把两个向量的对应分量进行运算,产生一个结果向量。最关键问题是存储器系统能够满足运算部件带宽的要求。主要采用两种方法:1.存储器存储器结构多个独立的存储器模块并行工作处理机结构简单,对存储系统的访问速度要求很高2.寄存器寄存器结构运
6、算通过向量寄存器进行需要大量高速寄存器,对存储系统访问速度的要求降低,存储器存储器结构,下图说明一个具有8个存储体的向量处理机:,三条互相独立的数据通路,可并行工作,同一个存储模块同时只能为一个通路服务,向量处理示例1:求C=A+B,设A、B、C的存储形式如图:,A、B、C在主存储器中的存放情况,两个向量在流水线方式下分量相加的时序图,时间(时钟周期),在流水线的输入端和输出端增加缓冲器可以消除争用存储器现象。,W0,RB8,RB8,RA8,RA8,RB0,RB0,RA0,RA0,RB8,RB8,RA8,RA8,RB1,RB1,RA1,RA1,RB8,RA8,RA8,RB2,RB2,RA2,R
7、A2,RA8,RA8,RB3,RB3,RA3,RA3,RA8,RB4,RB4,RA4,RA4,RB5,RB5,RA5,RA5,RB6,RB6,RA6,RA6,RB7,RB7,RA7,RA7,7,6,5,4,3,2,1,0,7,6,5,4,3,2,1,0,6,5,4,3,2,1,0,5,4,3,2,1,0,M0,M1,M2,M3,M4,M5,M6,M7,0 1 2 3 4 5 6 7 8 9 10 11 12,存储器发生冲突时两个向量相加的时序图,寄存器-寄存器结构,把存储器-存储器结构中的缓冲栈改为向量寄存器,运算部件需要的操作数从向量寄存器中读取,运算的中间结果也写到向量寄存器中。向量寄存器
8、与标量寄存器的主要差别是:一个向量寄存器能够保存一个向量,例如:64个64位寄存器。连续访问一个向量的各个分量。需要有标量寄存器和地址寄存器等。采用寄存器-寄存器结构的主要优点:降低主存储器的流量。例如:采用寄存器-寄存器结构的CRAY-1与采用存储器-存储器结构的STAR-100比较,运算速度高3倍多,而主存流量低2.5倍。STAR-100的主存储器流量:328W/1.28us=200MW/SCRAY-1的主存储器流量:4W/50ns=80MW/S,CRAY-1向量处理机结构,向量处理机系统结构的设计目标 提高向量处理机性能的常用技术,6.3 提高向量处理机性能的办法,向量处理机系统结构的设
9、计目标,较好地维持向量/标量性能平衡 向量平衡点(vector balance point)定义为:为了使向量硬件设备和标量硬件设备的利用率相等,一个程序中向量代码所占的百分比。例如:系统在向量模式下能够达到9Mflops,在标量模式下能够达到1Mflops的运算速度,假设代码的90%是向量运算,10%是标量运算,这样花在两种模式上的计算时间相等,那么向量平衡点为0.9。,几种超级计算机的向量性能和标量性能(了解),可扩展性随处理机数目的增加而提高 可扩展性的三个目标:规模可扩展性、换代可扩展性、问题可扩展性。提供高性能的I/O和易访问的网络,提高向量处理机性能的常用技术,链接技术 向量指令的
10、类型:,第一类向量指令,第二类向量指令,向量运算中的相关和冲突向量运算中的数据相关和功能部件冲突:采用顺序发射顺序完成方式(1)写读数据相关。(2)读读数据相关,或向量寄存器冲突。(3)运算部件冲突。,V0 V1V2 V3 V1V2V3 V4*V5 V6 V4+V5(a)不相关的指令(b)功能部件的预定V3 V1V2 V0 V1V2V6 V1*V5 V3 V1+V5(c)操作数寄存器预定(d)功能部件和操作数寄存器的预定3、向量链接技术(chaining)结果寄存器可能成为后继指令的操作数寄存器两条有数据相关的向量指令并行执行,这种技术称为两条流水线的链接技术。,例如:有如下3条向量指令:V3
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 638第六章 向量处理机 638 第六 向量 处理机
链接地址:https://www.31ppt.com/p-5613944.html