计算机系统结构8_第1页
计算机系统结构8_第2页
计算机系统结构8_第3页
计算机系统结构8_第4页
计算机系统结构8_第5页
已阅读5页,还剩46页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 第第8 8章章 并行处理机并行处理机8.1 并行处理机模型并行处理机模型8.2 并行处理机结构并行处理机结构8.3 并行处理机实例并行处理机实例并行性的两个方面:并行性的两个方面:(1)同时性并行Simultaneity:两个或两个以上事件在同一时刻发生。(2)并发性并行Concurrency:两个或两个以上事件在同一时间间隔内发生。 三条技术途径:三条技术途径:(1)资源重复:重复设置多个部件来提高速度。(2)时间重叠:流水线(3)资源共享:分时系统,分布式系统8.1 并行处理机模型并行处理机模型1. 并行处理机的定义并行处理机的定义 在在同一个同一个控制部件控制部件CU控制下,按照一定控

2、制下,按照一定方式互连的方式互连的多个多个处理部件处理部件PU对各自的数据完对各自的数据完成成同一条指令同一条指令规定的操作。从规定的操作。从CU看,指令是看,指令是串行执行的,从串行执行的,从PU看,数据是并行处理的。看,数据是并行处理的。 并行处理机也称为阵列处理机,按照Flynn分类法,它属于SIMD处理机。2. 并行处理机的主要应用领域并行处理机的主要应用领域 用于高速向量或矩阵运算。3. 并行处理机的操作模型并行处理机的操作模型 M(N,C,I,M,R) 其中: N:PE个数个数。如IlliacIV有64个PE; C:控制部件:控制部件CU执行的指令集执行的指令集,包括标量指 令和程

3、序控制指令; I:所有:所有PE并行执行的指令集并行执行的指令集,包括ALU、数据传送等操作; M:屏蔽操作集:屏蔽操作集,将PE划分为允许操作和禁止操作两个子集; R: 数据寻径集数据寻径集,互连网络中PE间通信所需要的各种模式 。 4. H.J.Siegel提出的并行处理机模型提出的并行处理机模型 P0M0PE0P1M1PE1P2M2PE2Pn-1Mn-1Pen-1互连网络控制器一台并行处理机由五个部分组成:一台并行处理机由五个部分组成:多个处理单元多个处理单元PEPE;多个存储器模块多个存储器模块M M;一个控制器一个控制器CUCU;一个互连网络一个互连网络ICNICN;一台输入输出处理

4、机一台输入输出处理机IOPIOP。8.2 并行处理机结构并行处理机结构 8.2.1 基本结构基本结构 并行处理机有两种典型结构:并行处理机有两种典型结构:分布存储器并行处理机;分布存储器并行处理机;共享存储器并行处理机。共享存储器并行处理机。 8.2.2 分布存储器并行处理机分布存储器并行处理机 目前的大部分并行处理机属于基于分布式存储器模型。分布式存储器并行处理机比较容易构成MPP (Massively Parallel Processor),可以有几十万个处理部件PE。 CUIOPLM0LM1LMn-1PE0PE1PEn-1互连网络 分布式存储器并行处理机的结构框图分布式存储器并行处理机的

5、结构框图 CU是控制部件。对于标量指令,在CU中直接执行;对于向量指令,CU把它广播到各个PE中去执行。在CU中通常有一个较大容量的存储器,用来存放程序和共享数据。LM0互连网络PE0LM1PE1LMn-1PEn-1IOPCU IOP是输入输出处理机,或称为主机。在IOP上安装操作系统,它除了负担输入输出工作外,还负责程序的编辑、编译和调试等工作。 IOP可以是一台通用计算机。LM0互连网络PE0LM1PE1LMn-1PEn-1IOPCULM0互连网络PE0LM1PE1LMn-1PEn-1IOPCULM和PE组成了PU阵列。LM0互连网络PE0LM1PE1LMn-1PEn-1IOPCU8.2.

6、3 共享存储器并行处理机共享存储器并行处理机 共享多体并行存储器SM通过互连网络与各处理单元PE相连。PE0互连网络PE1PEn-1IOPSM0SM1SMk-1 CU 存储模块的数目等于或略大于处理单元的数目。为了实现无冲突访问,存储模块的个数为质数。 PE0互连网络PE1PEn-1IOPSM0SM1SMk-1 CU 在存储模块之间合理分配数据,通过灵活、高速的互连网络,使存储器与处理单元之间的数据传送在大多数向量运算中都能以存储器的最高频率进行,而最少受存储器冲突的影响。 因此,对互连网络的要求很高。对互连网络的要求很高。PE0互 连 网 络PE1PEn-1IOPSM0SM1SMk-1 CU

7、PE0互 连 网 络PE1PEn-1IOPSM0SM1SMk-1 CU 共享存储器模型的处理单元数目一般不多,几个至几十个。 Burroughs Scientific Processor(BSP)采用了这种结构。16个PE通过一个1617的对准互连网络访问17个共享存储器模块。 存储器模块数与PE数互质可以实现无冲突并行访问存储器。PE0互 连 网 络PE1PEn-1IOPSM0SM1SMk-1 CU主要特点如下:主要特点如下:1. 速度快,而且潜力大速度快,而且潜力大2. 模块性好,生产和维护方便模块性好,生产和维护方便3. 可靠性高,容易实现容错和重构可靠性高,容易实现容错和重构4. 效率

8、低效率低8.2.4 并行处理机的特点并行处理机的特点 与流水线处理机、向量处理机等比较,并行处理机依靠的是资源重复,而不是时间重叠,它的每个处理单元要担负多种处理功能,其效率要低一些。5. 潜力大潜力大 主要依靠增加PE个数,与流水线处理机主要依靠缩短时钟周期相比,其提高速度的潜力要大得多。6. 依赖于互连网络和并行算法依赖于互连网络和并行算法 互连网络决定了PE之间的连接模式,也决定了并行处理机能够适应的算法。7. 需要有一台高性能的标量处理机需要有一台高性能的标量处理机 如果一台机器的向量处理速度极高,但标量处理速度只是每秒一百万次,那么对于标量运算占10的题目来说,总的有效速度就不过是每

9、秒一千万次。8.3 并行处理机实例并行处理机实例 IlliacIV 是最先采用SIMD结构的并行处理机。 随后一个方向是用位片PE制造的并行处理机,如Goodyear MPP、AMT/DAP610和TMC/CM-2 CM-5是以SIMD模式运行的同步MIMD计算机,另一方向是字宽运算PE的中粒度SIMD计算机。并行处理机的两个发展方向: 保留阵列结构,但每个处理单元的规模减小保留阵列结构,但每个处理单元的规模减小,如一个bit。 去掉阵列结构和分布存储器去掉阵列结构和分布存储器。Burroughs公司的BSP是代表。8.3.1 IlliavIV 并行处理机并行处理机 1963年,美国西屋电器公

10、司提出“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的影响非常大。它是并行处理机的典型代表,也是分布存储器并行处理机的典型代表。PEM63PEM0PEM1CUCDCB

11、IOMB6700CPUB6700内存B6700多路开关B6700外围设备IOS激光存储器6464 X 8CU总 线控 制 线模 式 位 线APPA网 接 口1282561024I/O 总 线CDBPE63PE01024 实 时 装 置48484848256PE0PE1PE63.DFSIlliacIV由三大部分组成由三大部分组成IlliacIV处理机阵列:88 PE、PEM和互连网络;阵列控制器CU;输入输出处理机IOP:一台标准的 B6700计算机。1. 阵列控制器阵列控制器 阵列控制器CU实际上是一台小型计算机。对阵列处理单元实行控制和完成标量操作。对阵列处理单元实行控制和完成标量操作。标量

12、操作与各标量操作与各PE的数组操作可以重叠执行。的数组操作可以重叠执行。 控制器的功能有以下五个方面:(1)对指令进行译码,并执行标量指令;(2)向各PE发出执行数组操作指令的控制信号;(3)产生并向所有处理单元广播公共的地址;(4)产生并向所有处理单元广播公共的数据;(5)接收和处理PE、I/O操作以及B6700产生的陷阱中断信号。2. 输入输出系统输入输出系统 IlliacIV的输入输出系统包括:磁盘文件系统DFS,I/O分系统,一台B6700处理机组成。 I/O分系统由三个部分组成:输入输出开关IOS,控制描述字控制器CDC,输入输出缓冲存储器BIOM。3. IlliacIV处理阵列处理

13、阵列 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步。步。 PU56 PU57 PU63 PU63 2 3 4 5 6 PU8 PU8 10 11 12 13 14 PU16 16 17 18 19 20 21 22 23 24 25 26 27 2

14、8 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 PU55 58 59 60 61 62 PU0 PU0 PU1 PU7 PU0 PU1 PU8 PU9 PU56 PU57 PU7 PU15 PU63 例如:从PU0到PU36,采用环行网格必须8步: PUPU0 0PUPU1 1PUPU2 2PUPU3 3PUPU4 4PUPU1212PUPU2020PUPU2828PUPU3636或 PUPU0 0PUPU8 8PUPU1616PUPU2424PUPU3232PUPU3333P

15、UPU3434PUPU3535PUPU3636 或 如果采用闭合螺旋线,只需要如果采用闭合螺旋线,只需要7 7步:步: PUPU0 0PUPU6363PUPU6262PUPU6161PUPU6060PUPU5252PUPU4444PUPU3636或PUPU0 0PUPU6363PUPU5555PUPU4747PUPU3939PUPU3838PUPU3737PUPU3636 或 对于nn个单元的阵列,网络直径为n-1n-1。二维闭合螺旋线网格网二维闭合螺旋线网格网 结点度为4,网络直径为n-1。 处理单元PE的主要部件有:4个64位寄存器(RGA,RGB,RGR,RGS)、算术单元AU、逻辑单元

16、LU、移位单元SU 、16位变址寄存器RGX和地址加法器ADA以及一个保存测试结果和PE屏蔽信息的8位模式寄存器RGM 。 RGA是累加寄存器,可存放操作结果。 RGR是数据传送寄存器,用来接收和发送传送的数据。数据在PE间传送,即是指传送寄存器的内容在传送。 模式寄存器RGM的屏蔽信息用来规定PE处于活动状态还是非活动状态。若PE是活动的,则它执行从CU广播来的指令。若PE是非活动的,则它不执行CU广播给它的指令。4. 处理单元处理单元PE5. 并行算法举例并行算法举例 并行算法的一个关键是提高向量化的程度提高向量化的程度。 在设计并行算法时,要特别注意: 数据在多个存储模块之间的分布,因此

17、,要解决好要解决好访问存储器的冲突问题。访问存储器的冲突问题。 并行处理机特别依赖于并行算法。依赖于并行算法。互连网络并不能提供所有处理单元之间的连接,因此,并行算法要并行算法要充分利用互连网络的结构充分利用互连网络的结构。 并行算法要用并行程序实现,并行程序的编写需要使用并行程序设计语言;要使编写好的程序能在机器上运行,还必须有并行编译器;而编译器在程序优化的过程中又受制于机器的结构,因此编译器往往依赖于机器。 (1)矩阵加()矩阵加(假定二个假定二个8x8的矩阵的矩阵A、B相加相加 )矩阵相加的存贮器分配 A(0,0)B(0,0)C(0,0)+1+2PEM0A(0,1)B(0,1)C(0,

18、1)+1+2PEM1A(7,7)B(7,7)C(7,7)+1+2PEM63.LDA ALPHA 全部(a)由PEMi送PEi的累加器RGAiADRN ALPHA+1 全部(a+1)与(RGAi)进行相加, 结果 送RGAiSTA ALPHA+2 全部(RGAi)由PEi送PEMi的a+2单元这里,0i63。有限差分方法是一种通用和有效方法:把连续方程变换成离散形式。二阶偏导数表示为差分形式:22220UxUy22222222UxU xhU xU xhhUyU xhU xU xhh(,)( ,)(,)( ,)( ,)( ,) y y y y y y(2) 有限差分问题有限差分问题并代入原方程,则

19、可得有限差分计算公式:其中:(x, y)为平面直角坐标, h为网格间距。 IlliacIV的阵列结构特别适合计算这种在网格上定义的有限差分函数。 把内部网格点分配给各个处理单元,计算过程可以并行完成。 运算速度的提高可以与处理机数目成正比。U xU x hU xhU x hU xh()()()()(), y, y, y, y, y4(3) 矩阵乘矩阵乘 矩阵乘是典型的并行程序,非常适合在SIMD并行处理机上运行。 例如:A、B、C均为88的二维矩阵,则CAB的计算公式为: 在串行机上要用一个三重循环程序,乘法和加法分别为512次。ca bijikkjk, 0i, j707 如果在并行处理机上求

20、解,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的并行处理机运行,运算速度可提高8倍。也可在64个PE的并行处理机上运行。在并行处理机上,J循环只需一次。 PE0PE0:c c0000a a0000b b0000a a0101b b1010a a0202b b2020a a0707b b7070 PE1 PE1:c c0101a a0000b b0101a a0101b b1111a a0202b b2121a a0707b b7

21、171 PE7 PE7:c c0707a a0000b b0707a a0101b b1717a a0202b b2727a a0707b b7777 PE0PE0:c c1010a a1010b b0000a a1111b b1010a a1212b b2020a a1717b b7070 PE1PE1:c c1111a a1010b b0101a a1111b b1111a a1212b b2121a a1717b b7171 PE7 PE7:c c1717a a1010b b0707a a1111b b1717a a1212b b2727a a1717b b7777 PE7 PE7:c

22、c7777a a7070b b0707a a7171b b1717a a7272b b2727a a7777b b7777局局部部存存储储器器中中的的数数据据分分布布如如下下: PEM0 PEM1 PEM2 PEM3 PEM4 PEM5 PEM6 PEM7 b00 b10 b70 c00 c10 c70 a00 a10 a70 b01 b11 b71 c01 c11 c71 a01 a11 a71 b02 b12 b72 c02 c12 c72 a02 a12 a72 b03 b13 b73 c03 c13 c73 a03 a13 a73 b04 b14 b74 c04 c14 c74 a04

23、 a14 a74 b05 b15 b75 c05 c15 c75 a05 a15 a75 b06 b16 b76 c06 c16 c76 a06 a16 a76 b07 b17 b77 c07 c17 c77 a07 a17 a77 数据如何分布到各个局部存储器中?开 始i = 0C i , j = 0 , k = 0 读读 L L O O A A D D A A i i , , k k 播播送送 B B C C A A S S T T A A i i , , k k 乘乘 M M U U L L Y Y B B k k , , j j 加加 A A D D D D C C i i , , j

24、 j 保保存存 S S T T O O R R E E C C i i , , j j k = k + 1k = 8 ?i = i + 1i = 8 ?结 束 把N个数的顺序相加变为并行相加。 串行求和的 FORTRAN 程序如下: C(-1)0 DO 10 I0, N10 C(I)C(I-1)A(I) 在并行处理机上,采用递归加法,FORTRAN 程序如下: DO 10 I=0,log2N110 AASRL(A, 2*I) ;A向量右移向量右移2i个个PE 在并行处理机上只需做在并行处理机上只需做 log2N 次加法。次加法。4 求累加和求累加和第 三 步 : 0 0 0 0第 二 步 :

25、0 0第 一 步 : 0操 作 数 :处 理 机 : PE0 PE1 PE2 PE3 PE4 PE5 PE6 PE7A0A1A2A3A4A5A6A7A0A0+A1A1+A2A2+A3A3+A4A4+A5A5+A6A6+A7A0A0+A1A0A2A0A3A1A4A2A5A0.A0+A1A0A2A0A3A0A4A0A7A4A7A3A6A0A6A0A5递归求和算法的性能分析:递归求和算法的性能分析:运算速度提高运算速度提高:加速比为加速比为N/log2N倍倍运算次数增加运算次数增加:从从N次增加到次增加到Nlog2N次次效率降低效率降低:实际效率为实际效率为1/log2N如:N1024,速度提高,速

26、度提高100倍,运算次数倍,运算次数增加增加10倍,效率只有倍,效率只有1/10如果N220,即100万个数求和,速度可以提高5万倍。这种方法也称为级联求和,或递归求和。与流水线中采用的方法类似,它利用加法结合律来提高并行度。8.3.2 BSP处理机处理机 BSP(Buroughs Scientific Processor)计算机是由美国宝来公司和伊利诺依大学于1979年制造的。 BSP是共享存储器并行处理机的典型代表。BSP由5个部分组成:控制处理机、并行处理机、文件存储器、并行存储器模块、对准网络。1. 并行处理机并行处理机 17个存储模块,每个模块512K字,周期160ns5级流水线:级流水线:(1)从17个存储模块中读出数据(2)通过输出对准网络把数据送入16个并行处理部件(3)16个并行处理部件并行处理机数据(4)通过输入对准网络把数据从并行处理部件送到并行存储器(5)把接收到的数据写入并行存储器时钟周期160ns,向量运算速度向量运算速度50MFLOPS。1 16 6算算术术单单元元( (A AE E5 5) )输输 出出对对准准输输 入入

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论