计算机系统结构(第20讲).ppt

上传人:牧羊曲112 文档编号:6432913 上传时间:2023-10-30 格式:PPT 页数:45 大小:399.97KB
返回 下载 相关 举报
计算机系统结构(第20讲).ppt_第1页
第1页 / 共45页
计算机系统结构(第20讲).ppt_第2页
第2页 / 共45页
计算机系统结构(第20讲).ppt_第3页
第3页 / 共45页
计算机系统结构(第20讲).ppt_第4页
第4页 / 共45页
计算机系统结构(第20讲).ppt_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《计算机系统结构(第20讲).ppt》由会员分享,可在线阅读,更多相关《计算机系统结构(第20讲).ppt(45页珍藏版)》请在三一办公上搜索。

1、,计算机系统结构(第20讲),计算机系统结构,第一章 基本概念第二章 指令系统第三章 存储系统第四章 输入输出系统第五章 标量处理机,第六章 向量处理机第七章 互连网络第八章 并行处理机和 多处理机,第六章 向量处理机,6.1 向量数据表示方式6.2 向量处理机的结构6.3 向量处理方式6.4 向量处理机的关键技术6.5 向量处理机实例6.6 向量处理机的性能评价6.7 向量处理机的发展,6.1 向量数据表示方式向量处理机是解决数值计算问题的一种高性能计算机结构向量处理机一般都采用流水线结构,有多条流水线并行工作向量处理机通常属大型或巨型机,也可以用微机加一台向量协处理器组成一般向量计算机中包

2、括有一台高性能标量处理机必须把要解决的问题转化为向量运算,向量处理机才能充分发挥作用,6.1 向量数据6.1.1 从标量到向量,6.1.1 从标量到向量例如:一个简单的C语言程序如下:for(i=10;i=1010;i+)ci=ai+bi+5;在向量处理机上,可以只用一条指令:C(10:1010)=A(10:1010)+B(15:1015)一条向量指令可处理个或对操作数在标量处理机上用10多条指令,其中有8条指令要循环1000次。采用多寄存器结构的两地址指令编写程序。,存储器采用字节编址方式,字长为32位在一般标量处理机中需要如下指令序列来实现(A、B、C分别是向量a、b、c在内存中的起始地址

3、):,START:LOADR0,ST;读循环初值,10LOADR1,ED;读循环终值,1010LOADR2,L;读内存地址增量,;常数4MOVER3,R2MULR3,R0;向量偏移量,;初始值为40LOOP:LOADR4,A(R3);读A向量的;一个元素,LOADR5,B(R3);读B向量的一个元素ADDR4,R5STORER4,C(R3);写C向量的一个元素ADDR3,R2;改变向量偏移量INCR0;循环次数增1CMPR0,R1;循环是否结束BLELOOP;循环未结束转LOOP,;否则继续HALTST:10;循环初值ED:1010;循环终值L:4;内存地址增量,第六章 向量处理机,6.1 向

4、量数据表示方式6.2 向量处理机的结构6.3 向量处理方式6.4 向量处理机的关键技术6.5 向量处理机实例6.6 向量处理机的性能评价6.7 向量处理机的发展,6.2 向量处理机结构向量处理机的最关键问题是存储器系统能够满足运算部件带宽的要求。主要采用两种方法:1.存储器存储器结构多个独立的存储器模块并行工作处理机结构简单,对存储系统的访问速度要求很高2.寄存器寄存器结构运算通过向量寄存器进行需要大量高速寄存器,对存储系统访问速度的要求降低,6.2.1 存储器存储器结构向量处理机中有多个高速流水线运算部件,存储器的访问速度是关键采用多个存储体交叉和并行访问来提高存储器速度,例如:CRAY-1

5、有64个存储体,每个处理机访问4个存储体STAR-100采用32个存储体交叉,每个存储体并行读出8个64位数据我国研制的YH-1向量计算机有37个存储体,操作数缓冲栈和写结果缓冲栈主要用于解决访问存储器冲突虽然采用质数个存储体能消除访问存储器的冲突,但是,数据经过多次运算之后,在存储体中分布必然发生改变主要优缺点:硬件结构简单,造价低;速度相对较低,操作数缓冲栈,写结果缓冲栈,主存储器,流水线运算部件,6.2.2 寄存器-寄存器结构把存储器-存储器结构中的缓冲栈改为向量寄存器,运算部件需要的操作数从向量寄存器中读取,运算的中间结果也写到向量寄存器中。向量寄存器与标量寄存器的主要差别是:一个向量

6、寄存器能够保存一个向量,例如:64个64位寄存器。连续访问一个向量的各个分量。需要有标量寄存器和地址寄存器等。,采用寄存器-寄存器结构的主要优点:降低主存储器的流量。例如:采用寄存器-寄存器结构的CRAY-1与采用存储器-存储器结构的STAR-100比较,运算速度高3倍多,而主存流量低2.5倍。STAR-100的主存储器流量:328W/1.28us=200MW/SCRAY-1的主存储器流量:4W/50ns=80MW/S,计算机系统结构(第21讲),第六章 向量处理机,6.1 向量数据表示方式6.2 向量处理机的结构6.3 向量处理方式6.4 向量处理机的关键技术6.5 向量处理机实例6.6 向

7、量处理机的性能评价6.7 向量处理机的发展,6.2 向量处理机结构向量处理机的最关键问题是存储器系统能够满足运算部件带宽的要求。主要采用两种方法:1.存储器存储器结构多个独立的存储器模块并行工作处理机结构简单,对存储系统的访问速度要求很高2.寄存器寄存器结构运算通过向量寄存器进行需要大量高速寄存器,对存储系统访问速度的要求降低,6.2.1 存储器存储器结构向量处理机中有多个高速流水线运算部件,存储器的访问速度是关键采用多个存储体交叉和并行访问来提高存储器速度,例如:CRAY-1有64个存储体,每个处理机访问4个存储体STAR-100采用32个存储体交叉,每个存储体并行读出8个64位数据我国研制

8、的YH-1向量计算机有37个存储体,采用寄存器-寄存器结构的主要优点:降低主存储器的流量。例如:采用寄存器-寄存器结构的CRAY-1与采用存储器-存储器结构的STAR-100比较,运算速度高3倍多,而主存流量低2.5倍。STAR-100的主存储器流量:328W/1.28us=200MW/SCRAY-1的主存储器流量:4W/50ns=80MW/S,8个向量寄存器86464,主存储器8MB64个个体,12个流水线结构的运算部件,缓冲寄存器6464,标量寄存器864,缓冲寄存器6424,地址寄存器824,指令缓冲寄存器25616,CRAY-1向量处理机结构,第六章 向量处理机,6.1 向量数据表示方

9、式6.2 向量处理机的结构6.3 向量处理方式6.4 向量处理机的关键技术6.5 向量处理机实例6.6 向量处理机的性能评价6.7 向量处理机的发展,6.3 向量处理方式要根据向量运算的特点和向量处理机的类型选择向量的处理方式。有三种处理方式:1横向处理方式,又称为水平处理方式,横向加工方式等。向量计算是按行的方式从左至右横向地进行。2纵向处理方式,又称为垂直处理方式,纵向加工方式等。向量计算是按列的方式自上而下纵向地进行。3纵横处理方式,又称为分组处理方,式,纵横向加工方式等。横向处理和纵向处理相结合的方式。以一个简单的C语言编写的程序为例,说明向量的三种处理方式的工作原理。for(i=1;

10、i=n;i+)yi=ai(bi+ci);,6.3.1 横向处理方式也称为水平处理方式,横向加工方式等逐个分量进行处理:假设中间结果为T(I)计算第1个分量:T(1)B(1)C(1)Y(1)A(1)T(1)计算第2个分量:T(2)B(2)C(2)Y(2)A(2)T(2)计算最后一个分量:T(N)B(N)C(N)Y(N)A(N)T(N),存在两个问题:在计算向量的每个分量时,都发生写读数据相关。流水线效率低如果采用多功能流水线,必须频繁进行流水线切换横向处理方式对向量处理机不适合即使在标量处理机中,也经常通过编译器进行指令流调度。,6.3.2 纵向处理方式也称为垂直处理方式,纵向加工方式等T(1)

11、=B(1)+C(1)T(2)=B(2)+C(2)T(n)=B(n)+C(n)Y(1)=A(1)T(1)Y(2)=A(2)T(2)Y(N)=A(N)T(N),采用向量指令只需要2条:VADDB,C,TVMULA,T,Y这种处理方式适用于向量处理机数据相关不影响流水线连续工作。不同的运算操作只需要切换1次。,6.3.3 纵横处理方式用于寄存器-寄存器结构的向量处理机中向量寄存器的长度是有限的,例如,每个向量寄存器有64个寄存器。当向量长度N大于向量寄存器长度n时,需要分组处理。分组方法:,其中:为余数,共分组。组内采用纵向处理方式,组间采用横向处理方式。因此,也称为分组处理方式,纵横向加工方式等。

12、,计算机系统结构(第22讲),6.3.3 纵横处理方式用于寄存器-寄存器结构的向量处理机中向量寄存器的长度是有限的,例如,每个向量寄存器有64个寄存器。当向量长度N大于向量寄存器长度n时,需要分组处理。分组方法:,其中:为余数,共分组。组内采用纵向处理方式,组间采用横向处理方式。因此,也称为分组处理方式,纵横向加工方式等。,运算过程为:第组:T(1,n)=B(1,n)+C(1,n)Y(1,n)=A(1,n)T(1,n)第组:T(n+1,2n)=B(n+1,2n)C(n+1,2n)Y(n+1,2n)=A(n+1,2n)T(n+1,2n)最后第k+1组:T(kn+1,N)=B(kn+1,N)+C(

13、kn+1,N)Y(kn+1,N)=A(kn+1,N)+T(kn+1,N),每组用两条向量指令,每组发生数据相关两次,其中组内发生数据相关一次,组间切换时发生数据相关一次。优点:减少访问主存储器的次数例如:中间变量T不写入主存储器。,第六章 向量处理机,6.1 向量数据表示方式6.2 向量处理机的结构6.3 向量处理方式6.4 向量处理机的关键技术6.5 向量处理机实例6.6 向量处理机的性能评价6.7 向量处理机的发展,6.4 向量处理机的关键技术6.4.1 向量与标量性能的平衡6.4.2 向量链接技术,6.4.1 向量与标量性能的平衡实际的应用问题中通常既有向量计算又有标量计算,而且两类计算

14、有一定的比例向量平衡点(vector balance point):为了使向量硬件设备和标量硬件设备的利用率相等,一个程序中向量代码所占的百分比。关键问题是:希望向量硬件和标量硬件都能够充分利用,不要空闲。例如:一个系统的向量运算速度为90Mfolps,标量运算速度为 10Mfolps。,如果程序的90是向量运算,10是标量运算。则向量平衡点为0.9。硬件利用率最高。向量处理机的向量平衡点必须与用户程序的向量化程度相匹配。IBM向量计算机的设计思想与上述方法不同,它维持较低的向量与标量比例,定在35的范围之间。这种做法能够适应通用应用问题对标量和向量处理要求。,机器型号,几种超级计算机的向量性

15、能和标量性能,Fujitsu VP400,Cray IS,Cray 2S,Cray X-MP,Cray Y-MP,Hitachi S820,NEC SX2,向量性能Mflops,标量性能Mflops,向量平衡点,85.0,9.8,0.90,151.5,11.2,0.93,143.3,13.1,0.92,201.6,17.0,0.92,737.3,17.8,0.98,424.2,9.5,0.98,207.1,6.6,0.97,6.4.2 向量链接技术1、向量指令的类型以CRAY-1向量处理机为例,有四类指令,两种指令格式(1)向量与向量操作,ViVj OP Vk(2)向量与标量操作,Vi Sj

16、OP Vk(3)向量取,Vi存储器(4)向量存,存储器 Vi,CRAY向量处理机的指令格式,g,h,i,j,k,4位,3位,3位,3位,3位,g,h为操作码,i为目的寄存器编号j,k为源寄存器编号,g,h,i,j,k,g为操作码,h为变址寄存器A的编号i为目的寄存器编号,j,k,m为形式地址,m,4位,3位,3位,3位,3位,16位,2、向量运算中的相关和冲突向量运算中的数据相关和功能部件冲突:采用顺序发射顺序完成方式(1)写读数据相关。(2)读读数据相关,或向量寄存器冲突。(3)运算部件冲突。V0 V1V2V0 V1V2V3 V4 V5V3 V0 V4(a)不相关的指令(b)写读数据相关,V

17、0 V1V2V0 V1V2V3 V4V5V3 V1 V4(c)功能部件冲突(d)读读数据相关3、向量链接技术(chaining)结果寄存器可能成为后继指令的操作数寄存器两条有数据相关的向量指令并行执行,这种技术称为两条流水线的链接技术。,例如:有如下3条向量指令:V3 AV2 V0V1V4 V2V3第一、二条指令没有数据相关和功能部件冲突,可以同时开始执行。第三条指令与第一、二条指令均存在写读数据相关,可以链接执行。,浮点加,7,1,2,3,4,5,6,Mem,V0,V1,V2,V3,V4,1,2,3,4,5,6,1,2,3,4,5,6,浮点乘,三种执行方式比较:(1)如果向量长度为N,三条指令采用串行方法执行的时间为:(1+6+1)+N-1+(1+6+1)+N-1+(1+7+1)+N-1=3N+22 拍(2)如果前两条指令并行执行,第三条指令串行执行,则执行时间为:(1+6+1)+N-1+(1+7+1)+N-1=2N+15 拍(3)如果采用链接技术,则执行时间为:(1+6+1)+(1+7+1)+(N-1)=17+N-1=N+16 拍,实现链接的条件:(1)没有向量寄存器冲突和运算部件冲突。(2)只有第一个结果送入向量寄存器的那一个周期可以链接。(3)先行的两条指令产生运算结果的时间必须相等。(4)两条向量指令的向量长度必须相等。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号