【教学】第六章 向量处理机

上传人:资****亨 文档编号:216339435 上传时间:2021-11-28 格式:PPT 页数:48 大小:2.15MB
返回 下载 相关 举报
【教学】第六章 向量处理机_第1页
第1页 / 共48页
【教学】第六章 向量处理机_第2页
第2页 / 共48页
【教学】第六章 向量处理机_第3页
第3页 / 共48页
【教学】第六章 向量处理机_第4页
第4页 / 共48页
【教学】第六章 向量处理机_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《【教学】第六章 向量处理机》由会员分享,可在线阅读,更多相关《【教学】第六章 向量处理机(48页珍藏版)》请在金锄头文库上搜索。

1、单击此处编辑母版标题样式单击此处编辑母版副标题样式编辑ppt1n向量处理机是解决数值计算问题的一种高性能计算机结构n向量处理机一般都采用流水线结构,有多条流水线并行工作n向量处理机通常属大型或巨型机,也可以用微机加一台向量协处理器组成n一般向量计算机中包括有一台高性能标量处理机n必须把要解决的问题转化为向量运算,向量处理机才能充分发挥作用编辑ppt6.1 向量处理的基本概念n什么是向量处理n 例如:一个简单的C语言程序如下:for (i = 1; i N ) GOTO 2010 read bI11 read cI12 add bI+cI13 store aIbI+cI14 read aI+11

2、5 multiply 2*aI+116 store bI 2*aI+117 increment I I+118 goto 1020Stop常量2,a,b,c中每一个元素都称为一个标量。该指令序列称为标量指令序列,执行过程为标量处理过程,每一条指令只处理一个或一对数据。编辑pptn上述程序用向量化指令序列实现为: a1:n=b1:n+c1:n temp1:n=a2:n+1 b1:n=2*temp1:n 将n个独立的数构成的整体称为向量,对这一组数的运算称为向量处理。一条向量处理指令可以处理n个或n对操作数。编辑ppt向量处理方式n要根据向量运算的特点和向量处理机的类型选择向量的处理方式。n有三种

3、处理方式:1横向处理方式,又称为水平处理方式,横向加工方式等。向量计算是按行的方式从左至右横向地进行。2纵向处理方式,又称为垂直处理方式,纵向加工方式等。向量计算是按列的方式自上而下纵向地进行。3纵横处理方式,又称为分组处理方式,纵横向加工方式等。横向处理和纵向处理相结合的方式。n 以一个简单的C语言编写的程序为例,说明向量的三种处理方式的工作原理。for (i = 1;i = n;i+)yi = ai ( bi + ci );编辑pptn横向处理方式 也称为水平处理方式,横向加工方式等逐个分量进行处理:假设中间结果为TI计算第1个分量: T1 B1C1 Y1 A1T1计算第2个分量: T2

4、B2C2 Y2 A2T2最后一个分量: TN BNCN YNANTNn存在两个问题:在计算向量的每个分量时,都发生写读数据相关。流水线效率低如果采用多功能流水线,必须频繁进行流水线切换n横向处理方式对向量处理机不适合即使在标量处理机中,也经常通过编译器进行指令流调度。编辑pptn纵向处理n也称为垂直处理方式,纵向加工方式等T1 = B1 + C1T2 = B2 + C2Tn = Bn + CnY1 = A1T1Y2 = A2T2YN = AN TNn采用向量指令只需要2条:VADDB, C, TVMULA, T, Yn这种处理方式适用于向量处理机,数据相关不影响流水线连续工作。不同的运算操作只

5、需要切换1次。编辑pptn纵横处理方式 将长度为n的向量分成若干组,每组长度为m,组内按纵向方式处理,依次处理各组。n用于寄存器-寄存器结构的向量处理机中向量寄存器的长度是有限的,例如,每个向量寄存器有64个寄存器。当向量长度N大于向量寄存器长度n时,需要分组处理。n分组方法:nm,其中:为余数,共分组。组内采用纵向处理方式,组间采用横向处理方式。因此,也称为分组处理方式,纵横向加工方式等。编辑ppt6.2 向量处理机结构n向量处理机的基本思想是把两个向量的对应分量进行运算,产生一个结果向量。最关键问题是存储器系统能够满足运算部件带宽的要求。n主要采用两种方法:1. 存储器存储器结构多个独立的

6、存储器模块并行工作处理机结构简单,对存储系统的访问速度要求很高2. 寄存器寄存器结构运算通过向量寄存器进行需要大量高速寄存器,对存储系统访问速度的要求降低编辑ppt 存储器存储器结构n下图说明一个具有8个存储体的向量处理机: MMMMMMMM流水结构加法器ABC=A+B三条互相独立的数据通路,可并行工作,同一个存储模块同时只能为一个通路服务编辑pptn向量处理示例1:求C=A+B,设A、B、C的存储形式如图:C4B6A0C5B7A1C6B0A2C7B1A3C0B2A4C2B3A5C3B4A6C4B5A7模块0模块1模块2模块3模块4模块5模块6模块7A、B、C在主存储器中的存放情况编辑ppt流

7、水段1流水段2流水段3流水段4W4W4RB6RB6RA0RA0W5W5RB7RB7RA1RA1W6RA2RA2RB0RB0RA3RA3RB1RB1W0W0RA4RA4RB2RB2W1W1RA5RA5RB3RB3W2W2RA6RA6RB4RB4W3W3RA7RA7RB5RB576543210765432107654321076543210M0M1M2M3M4M5M6M70 1 2 3 4 5 6 7 8 9 10 11 12两个向量在流水线方式下分量相加的时序图时间(时钟周期)编辑pptn在流水线的输入端和输出端增加缓冲器可以消除争用存储器现象。可变延迟器可变延迟器主存储器流水结构加法器ABC延

8、迟4个时钟周期延迟2个时钟周期编辑pptW0RB8RB8RA8RA8RB0RB0RA0RA0RB8RB8RA8RA8RB1RB1RA1RA1RB8RA8RA8RB2RB2RA2RA2 RA8RA8RB3RB3RA3RA3 RA8RB4RB4RA4RA4RB5RB5RA5RA5 RB6RB6RA6RA6RB7RB7RA7RA776543210765432106543210543210M0M1M2M3M4M5M6M70 1 2 3 4 5 6 7 8 9 10 11 12流水段1流水段2流水段3流水段4存储器发生冲突时两个向量相加的时序图编辑ppt 寄存器-寄存器结构n把存储器-存储器结构中的缓冲

9、栈改为向量寄存器,运算部件需要的操作数从向量寄存器中读取,运算的中间结果也写到向量寄存器中。n向量寄存器与标量寄存器的主要差别是:一个向量寄存器能够保存一个向量,例如:64个64位寄存器。连续访问一个向量的各个分量。n需要有标量寄存器和地址寄存器等。n采用寄存器-寄存器结构的主要优点:降低主存储器的流量。例如:采用寄存器-寄存器结构的CRAY-1与采用存储器-存储器结构的STAR-100比较,运算速度高3倍多,而主存流量低2.5倍。nSTAR-100的主存储器流量:328W/1.28us=200MW/SCRAY-1的主存储器流量: 4W/50ns=80MW/S编辑ppt8个向量寄存器86464

10、主存储器8MB64个个体12个流水线结构的运算部件缓冲寄存器6464标量寄存器864缓冲寄存器6424地址寄存器824指令缓冲寄存器25616CRAY-1向量处理机结构q编辑ppt向量处理机系统结构的设计目标 提高向量处理机性能的常用技术6.3 提高向量处理机性能的办法编辑ppt 向量处理机系统结构的设计目标n较好地维持向量/标量性能平衡 向量平衡点(vector balance point)定义为:为了使向量硬件设备和标量硬件设备的利用率相等,一个程序中向量代码所占的百分比。 例如:系统在向量模式下能够达到9Mflops,在标量模式下能够达到1Mflops的运算速度,假设代码的90%是向量运

11、算,10%是标量运算,这样花在两种模式上的计算时间相等,那么向量平衡点为0.9。编辑ppt几种超级计算机的向量性能和标量性能(了解)机器型号Fujitsu VP400Cray ISCray 2SCray X-MPCray Y-MPHitachi S820NEC SX2向量性能Mflops标量性能Mflops向量平衡点85.09.80.90151.511.20.93143.313.10.92201.617.00.92737.317.80.98424.29.50.98207.16.60.97编辑pptn可扩展性随处理机数目的增加而提高 可扩展性的三个目标:规模可扩展性、换代可扩展性、问题可扩展性。

12、n提供高性能的I/O和易访问的网络编辑ppt 提高向量处理机性能的常用技术n链接技术 向量指令的类型:n4321VjVkVin4321SjVkVi第一类向量指令第二类向量指令编辑ppt存储器7654321Vi存储器7654321Vi第三类向量指令第四类向量指令编辑pptn向量运算中的相关和冲突n向量运算中的数据相关和功能部件冲突:采用顺序发射顺序完成方式(1) 写读数据相关。(2) 读读数据相关,或向量寄存器冲突。(3) 运算部件冲突。编辑pptV0 V1V2 V3 V1V2V3 V4 * V5 V6 V4 +V5(a)不相关的指令 (b)功能部件的预定V3 V1V2 V0 V1V2V6 V1

13、*V5 V3 V1 + V5(c) 操作数寄存器预定 (d)功能部件和操作数寄存器的预定n3、向量链接技术(chaining)n 结果寄存器可能成为后继指令的操作数寄存器两条有数据相关的向量指令并行执行,这种技术称为两条流水线的链接技术。编辑ppt 例如:有如下3条向量指令:V3 AV2 V0V1V4 V2V3第一、二条指令没有数据相关和功能部件冲突,可以同时开始执行。第三条指令与第一、二条指令均存在写读数据相关,可以链接执行。编辑ppt浮点加71 2 3 4 5 6MemV0V1V2V3V41 2 3 4 5 61 2 3 4 5 6浮点乘编辑pptn三种执行方式比较:n(1) 如果向量长度

14、为N,三条指令采用串行方法执行的时间为:(1+6+1)+N-1+(1+6+1)+N-1+(1+7+1)+N-1 = 3N+22 拍n(2) 如果前两条指令并行执行,第三条指令串行执行,则执行时间为:(1+6+1)+N-1+(1+7+1)+N-1= 2N+15 拍n(3) 如果采用链接技术,则执行时间为:(1+6+1)+(1+7+1)+(N-1)=17+N-1=N+16 拍编辑pptn实现链接的条件:n(1) 没有向量寄存器冲突和运算部件冲突。n(2) 只有第一个结果送入向量寄存器的那一个周期可以链接。n(3) 先行的两条指令产生运算结果的时间必须相等。n(4) 两条向量指令的向量长度必须相等。

15、编辑ppt当向量的长度大于向量寄存器的长度时,必须把长向量分成长度固定的段,采用循环结构处理这个长向量,这种技术称为向量循环开采技术,也称为向量分段开采技术。例如:A和B为长度N的向量。for (i=1; iN; i+) ai=5*b(i)+c;当N为当N为64或更小时,产生A数组的7条指令序列是:q1:S15.0在标量寄存器内设置常数q2:S2C 将常数C装入标量寄存器q3:VLN 在VL寄存器内设置向量长度q4:VoB 将B向量读入向量寄存器q5:V1S1 Vo B数组的每个分量和常数相乘q6:V2S2V1 C和5 B(x)相加q7:AV2将结果向量存入A数组向量循环开采技术编辑ppt向量

16、处理机主要出自美国和日本。美国著名的向量计算机公司有:CRAY、CDC、TI等日本公司有:NEC、Fujitsu、Hitachi等6.4 向量处理机实例(自学)编辑ppt机器型号美国和日本制造的向量处理机Cray IS配置特点有10条流水线的单处理机,12.5ns,COS/CF7 2.1第一台基于ECL的超级计算机,1976年问世Cray2S/4-256256M字存储器的4台处理机,4.lns, COS或UNIX/CF77 3.016K字的本地存储器,移植了UNIXV,1985问世 向量处理机的历史与现状编辑ppt机器型号Cray X-MP 416配置特点16M字存储器的4台处理机,128M字SSD, 8.5ns, COS CF77 5.0使用共享寄存器组用于IPC,1983年问世Cray Y-MP 832128M字存储器的8台处理机, 6ns, CF77 5.0XMP的改进型,1988年问世每台处理机2条向量流水线, 16台处理机, 4.2ns, Unicos/CF77 5.0CrayY-MPC-90最大的Cray机器1991年问世编辑ppt机器型号CDC Cyber 205配置特点

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号