计算机系统结构第八章并行处理机.ppt

上传人:ga****84 文档编号:493915 上传时间:2018-10-15 格式:PPT 页数:44 大小:640.50KB
下载 相关 举报
计算机系统结构第八章并行处理机.ppt_第1页
第1页 / 共44页
计算机系统结构第八章并行处理机.ppt_第2页
第2页 / 共44页
计算机系统结构第八章并行处理机.ppt_第3页
第3页 / 共44页
计算机系统结构第八章并行处理机.ppt_第4页
第4页 / 共44页
计算机系统结构第八章并行处理机.ppt_第5页
第5页 / 共44页
点击查看更多>>
资源描述

1、第8章 SIMD 处理机,8.1 SIMD处理机模型8.2 SIMD处理机的结构8.3 SIMD处理机实例8.4 SIMD处理机算法举例,两种并行性概念:(1)同时性并行Simultaneity:两个或两个以上事件在同一时刻发生。(2)并发性并行Concurrency:两个或两个以上事件在同一时间间隔内发生。三条技术途径:(1)资源重复:重复设置多个部件来提高速度。(2)时间重叠:流水线(3)资源共享:分时系统,分布式系统,8.1 SIMD处理机模型,1. SIMD处理机的定义: 多个处理部件PU按照一定方式互连,在同一个控制部件CU控制下,对各自的数据完成同一条指令规定的操作。从CU看,指令

2、是串行执行的,从PU看,数据是并行处理的。按照按照佛林分类法,它属于SIMD处理机。SIMD处理机又称SIMD处理机,也称为阵列处理机。2. SIMD处理机的主要应用领域:用于高速向量或矩阵运算。,3. SIMD处理机的操作模型可用五元组来表示: M(N,C,I,M,R), 其中:N为PE个数。如IlliacIV有64个PE。C为控制部件CU执行的指令集,包括标量指令和程序控制指令。I为所有PE并行执行的指令集,包括ALU、数据传送等操作M为屏蔽操作集,将PE划分为允许操作和禁止操作两个子集R是数据寻径集,互连网络中PE间通信所需要的各种模式,4. H.J.Siegel提出的SIMD处理机模型

3、,8.2 SIMD处理机结构,8.2.1 SIMD处理机的基本结构8.2.2 分布存储器SIMD处理机8.2.3 共享存储器SIMD处理机8.2.4 SIMD处理机的特点,8.2.1 SIMD处理机的基本结构,一台SIMD处理机由五个部分组成:多个处理单元PE,多个存储器模块M,一个控制器CU,一个互连网络ICN,一台输入输出处理机IOP。SIMD处理机有两种典型结构:分布存储器SIMD处理机,共享存储器SIMD处理机。,8.2.2 分布存储器SIMD处理机,目前的大部分SIMD处理机属于基于分布式存储器模型。分布式存储器SIMD处理机比较容易构成MPP(Massively Parallel

4、Processor),可以有几十万个处理部件PE。CU是控制部件。对于标量指令,在CU中直接执行;对于向量指令,CU把它广播到各个PE中去执行。在CU中通常有一个较大容量的存储器,用来存放程序和共享数据。,IOP是输入输出处理机,或称为主机。在IOP上安装操作系统,它除了负担输入输出工作外,还负责程序的编辑、编译和调试等工作。 IOP可以是一台通用计算机。分布式存储器SIMD处理机必须依靠并行算法来提高PE的利用率。因此,应用领域有限,可以认为是一种专用计算机。数据在局部存储器中的分布是一个很关键的问题。标量指令与向量指令可以并发执行。,分布式存储器SIMD处理机的结构框图,8.2.3 共享存

5、储器SIMD处理机,共享多体并行存储器SM通过互连网络与各处理单元PE相连。存储模块的数目等于或略大于处理单元的数目。为了实现无冲突访问,存储模块的个数为质数。在存储模块之间合理分配数据,通过灵活、高速的互连网络,使存储器与处理单元之间的数据传送在大多数向量运算中都能以存储器的最高频率进行,而最少受存储器冲突的影响。,共享存储器模型的处理单元数目一般不多,几个至几十个。Burroughs Scientific Processor(BSP)采用了这种结构。16个PE通过一个1617的对准互连网络访问17个共享存储器模块。存储器模块数与PE数互质可以实现无冲突并行访问存储器。对互连网络的要求很高。

6、,共享存储器SIMD处理机的结构框图,8.2.4 SIMD处理机的特点,SIMD处理机的主要特点如下:1. 速度快,而且潜力大2. 模块性好,生产和维护方便3. 可靠性高,容易实现容错和重构4. 效率低与流水线处理机、向量处理机等比较。依靠的是资源重复,而不是时间重叠,它的每个处理单元要担负多种处理功能,其效率要低一些。,5. 潜力大 主要依靠增加PE个数,与流水线处理机主要依靠缩短时钟周期相比,其提高速度的潜力要大得多。6. 依赖于互连网络和并行算法 互连网络决定了PE之间的连接模式,也决定了SIMD处理机能够适应的算法。7. 需要有一台高性能的标量处理机 如果一台机器的向量处理速度极高,但

7、标量处理速度只是每秒一百万次,那么对于标量运算占10的题目来说,总的有效速度就不过是每秒一千万次。,8.3 SIMD处理机实例,IlliacIV 是最先采用SIMD结构的SIMD处理机。随后一个方向是用位片PE制造的SIMD处理机,如Goodyear MPP、AMT/DAP610和TMC/CM-2CM-5是以SIMD模式运行的同步MIMD计算机另一方向是字宽运算PE的中粒度SIMD计算机SIMD处理机的两个发展方向:保留阵列结构,但每个处理单元的规模减小,如一个bit。去掉阵列结构和分布存储器。Burroughs公司的BSP是代表。,8.3.1 IlliacIV SIMD处理机,1963年,美

8、国西屋电器公司提出“Slotnick,The SOLOMON Computer,Simultaneous Operation linked Ordinal Modular Network”。1966年美国国防远景研究规划局ARPR与伊利诺依大学签定合同。原计划:256个PE,运算速度为1GFLOPS。Burroughs公司和伊利诺依大学于1972年共同设计和生产,1975年实际投入运行。用了4倍的经费,只达到1/20的速度。只实现了8864个PE,只达到50MFLOPS。IlliacIV的影响非常大。它是SIMD处理机的典型代表,也是分布存储器SIMD处理机的典型代表。,IlliacIV由三大

9、部分组成IlliacIV处理机阵列:包括88 PE、PEM和互连网络。阵列控制器CU。输入输出处理机:一台标准的Burroughs B6700计算机。,1. 阵列控制器阵列控制器CU实际上是一台小型计算机。对阵列处理单元实行控制和完成标量操作。标量操作与各PE的数组操作可以重叠执行。控制器的功能有以下五个方面:(1)对指令进行译码,并执行标量指令;(2)向各PE发出执行数组操作指令的控制信号;(3)产生并向所有处理单元广播公共的地址;(4)产生并向所有处理单元广播公共的数据;(5)接收和处理PE、I/O操作以及B6700产生的陷阱中断信号。,2. 输入输出系统IlliacIV的输入输出系统包括

10、:磁盘文件系统DFS,I/O分系统,一台B6700处理机组成。I/O分系统由三个部分组成:输入输出开关IOS,控制描述字控制器CDC,输入输出缓冲存储器BIOM。,3. IlliacIV处理阵列IlliacIV处理阵列由64个PU组成。每个PU由处理部件PE和它的局部存储器PEM组成。每一个PUi只和它的东、西、南、北四个近邻:PUi+1 mod 64、PUi-1 mod 64、PUi+8 mod 64、PUi-8 mod 64直接连接。南北方向同一列PU连成一个环,东西方向构成一个闭合螺线。闭合螺线网络直径为7步,环形网格的直径为8步。,例如:从PU0到PU36,采用环行网格必须8步: PU

11、0PU1PU2PU3PU4PU12PU20PU28PU36或 PU0PU8PU16PU24PU32PU33PU34PU35PU36 或 如果采用闭合螺旋线,只需要7步: PU0PU63PU62PU61PU60PU52PU44PU36或PU0PU63PU55PU47PU39PU38PU37PU36 或 对于nn个单元的阵列,网络直径为n-1。,二维闭合螺旋线网格网 结点度为4,网络直径为n-1。,8.3.2 BSP处理机,BSP(Buroughs Scientific Processor)计算机是由美国宝来公司和伊利诺依大学于1979年制造的。BSP是共享存储器SIMD处理机的典型代表。BSP由

12、5个部分组成:控制处理机、SIMD处理机、文件存储器、并行存储器模块、对准网络。,1. SIMD处理机17个存储模块,每个模块512K字,周期160ns5级流水线:(1)从17个存储模块中读出数据(2)通过输出对准网络把数据送入16个并行处理部件(3)16个并行处理部件SIMD处理机数据(4)通过输入对准网络把数据从并行处理部件送到并行存储器(5)把接收到的数据写入并行存储器时钟周期160ns,向量运算速度50MFLOPS。,2. 控制处理机控制处理机主要用来控制SIMD处理机。提供与系统管理机相连的接口。执行存放在控制存储器中的操作系统和用户程序的标量部分。把全部的向量指令及成组的标量指令送

13、给SIMD处理机。控制维护单元是系统管理机与控制处理机之间的接口,用来进行初始化、监控命令通信和维护。,3. 文件存储器计算任务文件从系统管理机加载到文件存储器,由控制处理机执行。文件存储器是在BSP直接控制下的唯一外围设备。程序执行过程中所产生的暂存文件和输出文件,在将它们送给系统管理机输出给用户之前是存在文件存储器中的。文件存储器的数据传输率较高,大大地缓解了I/O受限问题。,4. 对准网络对准网络采用全交叉开关实现。数据从一个源广播至几个目的地,几个源寻找一个目的地时能分解冲突。存储器模块和对准网络的组合实现了无冲突访问并行存储器。对准网络还可以实现快速傅里叶变换、数据压缩和扩展操作。,

14、5. 无访问冲突存储系统只有数组存取和I/O访问并行存储器。等效存储周期为10ns。两次算术运算中需要用到三个变量,产生一个结果,共访问存储器4次,并行存储器和浮点运算之间的频带保持完全平衡。对于长向量来,中间结果存在寄存器中,每次运算只需要一个操作数。因此并行存储器有足够的频宽留给输入和输出信息用。实现一维向量和二维矩阵的行、列、对角线和反对角线的无冲突访问。,8.4 SIMD处理机算法举例,8.4.1 有限差分问题8.4.2 矩阵乘8.4.3 求累加和,SIMD处理机特别依赖于并行算法。并行算法的一个关键是提高向量化的程度。在设计并行算法时,要特别注意:数据在多个存储模块之间的分布。要解决

15、好访问存储器的冲突问题。互连网络并不能提供所有处理单元之间的连接,因此,并行算法要充分利用互连网络的结构。,8.4.1 有限差分问题,有限差分方法是一种通用和有效方法:把连续方程变换成离散形式。二阶偏导数表示为差分形式:,并代入原方程,则可得有限差分计算公式:其中:(x, y)为平面直角坐标, h为网格间距。IlliacIV的阵列结构特别适合计算这种在网格上定义的有限差分函数。把内部网格点分配给各个处理单元,计算过程可以并行完成。运算速度的提高可以与处理机数目成正比。,8.4.2 矩阵乘,矩阵乘是典型的并行程序,非常适合在SIMDSIMD处理机上运行。例如:A、B、C均为88的二维矩阵,则CA

16、B的计算公式为:在串行机上要用一个三重循环程序,乘法和加法分别为512次。,如果在SIMD处理机上求解,FORTRAN语言程序如下: DO 10 I0,7 C(I, J)=0 DO 20 K=0, 720 C(I, J)=C (I, J )+A(I, K) * B(K, J)10 CONTINUE可以在8个PE的SIMD处理机运行,运算速度可提高8倍。也可在64个PE的SIMD处理机上运行数据如何分布到各个局部存储器中?,在SIMD处理机上,J循环只需一次。 PE0:c00a00b00a01b10a02b20a07b70 PE1:c01a00b01a01b11a02b21a07b71 PE7:

17、c07a00b07a01b17a02b27a07b77 PE0:c10a10b00a11b10a12b20a17b70 PE1:c11a10b01a11b11a12b21a17b71 PE7:c17a10b07a11b17a12b27a17b77PE7:c77a70b07a71b17a72b27a77b77,8.4.3 求累加和,把N个数的顺序相加变为并行相加。串行求和的 FORTRAN 程序如下: C(-1)0 DO 10 I0, N10 C(I)C(I-1)A(I)在SIMD处理机上,采用递归加法,FORTRAN 程序如下: DO 10 I=0,log2N110 AASRL(A, 2*I) ;A向量右移2i个PE在SIMD处理机上只需做 log2N 次加法。,递归求和算法的性能分析:运算速度提高:加速比为N/log2N倍运算次数增加:从N次增加到Nlog2N次效率降低:实际效率为1/log2N如:N1024,速度提高100倍,运算次数增加10倍,效率只有1/10如果N220,即100万个数求和,速度可以提高5万倍。这种方法也称为级联求和,或递归求和。与流水线中采用的方法类似,它利用加法结合律来提高并行度。,本章重点:1.并行处理的基本结构2.并行处理的特点3.典型的SIMD处理机算法练习题:8.3 8.6(改为:n个PE) 8.12,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。