MIMD计算机.ppt
《MIMD计算机.ppt》由会员分享,可在线阅读,更多相关《MIMD计算机.ppt(24页珍藏版)》请在优知文库上搜索。
1、2023-3-16计算机系统结构1第九章第九章 MIMDMIMD计算机计算机( (P499)P499) MIMD计算机与SIMD计算机的主要区别,在于SIMD只能在同一时刻做多件相同的事情,而MIMD却可以在同一时刻做多件相同或不同的事情(多指令流所致),所以求解同一个问题时采用MIMD将能实现更大比例的并行操作,即处理效率更高。 从并行处理的级别看,SIMD是数据级并行处理,流水线是指令级并行处理,MIMD是任务级并行处理。 由于技术上的原因,目前实现的MIMD计算机都是多处理机系统,包括多计算机系统。 多处理机系统由多台处理机连接而成,它们能够并行执行独立的程序模块,并且相互通信和同步,以
2、实现作业、任务级的并行。2023-3-16计算机系统结构2CU2CU1CUnPUnPU2PU1MMnMM2MM1IS1IS1IS2IS2ISnDS1ISnDS2DSn多指令流多数据流MIMD2023-3-16计算机系统结构39.1 MIMD的典型结构(P500) 多处理机系统通常包含多个处理机模块、多个存储器模块、多个I/O通道,这些设备与单处理机系统中的设备没有本质不同,最大的差别是互连网络和多机操作系统。 由于多处理机系统是在作业、任务级并行,处理机之间的通信不像SIMD系统那样频繁和急迫,所以互连网络可以采用通用网实现,以便在满足流量需要的前提下降低成本。(1)共享存储器方案(紧耦合型)
3、 P500图9.1(a)。 存储器和I/O设备是独立的子系统,通过互连网络为所有的处理机共享。(2)分布存储器方案(松耦合型) P500图9.1(b)。每台处理机有自己的存储器和I/O设备。 处理机之间的信息交换通过互连网络。2023-3-16计算机系统结构42023-3-16计算机系统结构5(1)它有多个控制器,至少有多个指令部件,用以对各个PE实现单独的控制,而又相互协调配合。(2)多处理机的外围设备要能够被多个PE分别调用,因而要通过互连网络转接,而不像并行处理机的外围设备那样统一访问主存储器。(3)并行处理机由于主要完成数组向量运算,它的PE和MM之间的数据交往比较有规则,互连网络的作
4、用主要放在数据对准上,功能简单;多处理机的互连网络必须满足各个PE随机地访问主存储器的要求,连接模式、频带和路径选择等问题都要复杂。(4)多处理机属任务级并行,SIMD属于数据级并行。多处理机与并行处理机(SIMD)的主要区别2023-3-16计算机系统结构6 结构灵活性 并行处理机是针对数组、向量处理而设计的。而多处理机不限于数组向量的处理,力图把能并行处理的任务、数组,以至标量都进行并行处理。 程序并行性的识别并行处理机实现操作一级的并行,其并行性存在于指令内部。多处理机中,因为不限于解决数组向量处理问题,并行性存在于指令外部,即表现在多个任务之间。再加上系统通用性的要求,就使程序并行性的
5、识别难度较大。因此,它必须利用多种途径,如算法、程序语言、编译、操作系统、以至指令、硬件等,尽量挖掘各种潜在的并行性。多处理机的特点2023-3-16计算机系统结构7 并行任务的派生 并行处理机依靠单指令流对多数据流实现并行操作,这种并行操作是通过各条单独的指令加以反映和控制的,指令本身就可以启动多个处理部件并行。 多处理机是处于多指令流操作方式,一个程序当中就存在多个并发的程序段,需要专门的指令来表示它们的并发关系以控制它们的并发执行,以便一个任务开始被执行时就能派生出可与它并行执行的另一些任务。该过程称为并行任务派生。可能达到较高的效率9.2 MIMD的并行程序控制(P608)2023-3
6、-16计算机系统结构8 进程同步 并行处理机是操作级的并行,所有处于活动状态的处理单元同时执行共同的指令,受同一个控制器控制,工作自然同步。 多处理机所实现的是指令、任务、程序级的并行。在同一时刻,不同的处理机执行着不同的指令。要区分进程之间的多种不同的依赖关系。要求多处理机采取特殊的同步措施,使并发进程之间保持程序所要求的正确顺序。 资源分配和进程调度 处理机执行并发任务,需用处理机的数目没有固定要求,各个处理机进入或退出任务的时刻互不相同,所需共享资源的品种、数量又随时变化,情况十分复杂,需要好的资源分配和进程调度策略。9.2 MIMD的并行程序控制(P608)2023-3-16计算机系统
7、结构9(1)任务派生语句 当前运行的进程向操作系统申请创建一个新进程,并试图用一个空闲处理机来运行它。如果操作系统没有找到空闲处理机资源,则让新进程排队等待。 格式: FORX (2)任务汇合语句 检查包括当前进程在内的各先期并发进程是否完成,如未完成则停止当前进程,释放其处理机资源,如已完成则让当前进程继续执行,通常是转入后继进程。汇合语句的每次执行会对一个计数器加1(该计数器初值为0),直至达到语句所要求的汇合进程数。 格式:JOIN ,9.2 MIMD的并行程序控制(P608)2023-3-16计算机系统结构10 实例:x = ( a + b )( a - c ) 我们设想用3个进程来完
8、成上式中3个运算,则它们之间的相关关系可用数据相关图来描述(右图)。 并行程序可用Fork/Join语句写成如下形式:k:Fork k+3k+1:Add A,B,T1k+2:Goto k+4k+3:Sub A,C,T2k+4:Join 2,1k+5:Mul T1,T2,X 该程序在2台处理机的MIMD系统上运行的时空关系可用资源时间图表示(假设进程k执行时间大于进程k+3)。数据相关图数据相关图 处理机k+3Join 2,12kk+51Fork k+3Join 2,1 时间资源时间图资源时间图k:A+BT1k+3:A-CT2k+5:T1T2X2023-3-16计算机系统结构119.4 MIMD
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MIMD 计算机