
计算机系统结构课件:第五章 并行处理技术.ppt
93页计算机系统结构Computer Architecture二、二、 并行处理技术的发展并行处理技术的发展三、三、 阵列处理机原理阵列处理机原理四、四、 互连网络互连网络五、五、 多处理机多处理机一、并行处理技术的一、并行处理技术的 概述概述第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture一一. .并行性概念并行性概念在数值计算,数据处理,信息处理或人工智能求解过程中,可能存在在数值计算,数据处理,信息处理或人工智能求解过程中,可能存在某些能同时进行运算或操作的部分某些能同时进行运算或操作的部分在同一时刻或同一时间间隔内完成多个性质相同或不同的任务在同一时刻或同一时间间隔内完成多个性质相同或不同的任务同时性(同时性(simultaneitysimultaneity)): :指两个或多个事件在同一时指两个或多个事件在同一时刻发生在多个资源中刻发生在多个资源中并发性(并发性(concurrencyconcurrency)): :指两个或多个事件在同一时指两个或多个事件在同一时间间隔内发生在多个资源中。
间间隔内发生在多个资源中并行处理技术涉及:并行处理技术涉及:并行结构、并行软件、并行算法等多个方面并行结构、并行软件、并行算法等多个方面一、一、并行处理技术概述并行处理技术概述第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture1 1.从计算机系统.从计算机系统处理数据的并行性处理数据的并行性来看,并行性等级从低到来看,并行性等级从低到 高可分:高可分:位串字串位串字串----------通常指传统的串行单处理机通常指传统的串行单处理机 位并字串位并字串----------通常指传统的并行单处理机通常指传统的并行单处理机 字并位串字并位串----------同时对多个字的同一位(称位片)进行处理同时对多个字的同一位(称位片)进行处理 ,开始进入并行处理领域开始进入并行处理领域 全并行全并行----------------同时对多个字的全部或部分位组进行处理。
同时对多个字的全部或部分位组进行处理2 2.从计算机.从计算机信息加工步骤和阶段信息加工步骤和阶段看看,并行性等级可分为:,并行性等级可分为:存储器操作并行存储器操作并行--------并行存储器系统和以相联存储器为核心构成并行存储器系统和以相联存储器为核心构成的相联处理机的相联处理机二二. . 并行的等级和分类并行的等级和分类处理器操作步骤并行处理器操作步骤并行--------可以是一条指令的取指、分析、执行可以是一条指令的取指、分析、执行等操作步骤,也可以是具体运算,如流水计算机等操作步骤,也可以是具体运算,如流水计算机第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture并行性的开发还可以并行性的开发还可以按程序大小按程序大小划分不同粒度的开发方式划分不同粒度的开发方式并并行行粒粒度度((granularitygranularity))或或颗颗粒粒规规模模((grain grain sizesize))---- ---- 衡衡量量软软件件进进程程所所含含计计算算量量的的尺尺度度测测量量方方法法是是数数一一下下颗颗粒粒((程程序序段段))中中的的指指令令数数目目。
一一般般用用细、中、粗来描述,决定并行处理的基本程序段细、中、粗来描述,决定并行处理的基本程序段3. 3. 程序划分和粒度程序划分和粒度并行性粒度:并行性粒度:每次并行处理的规模大小用字母每次并行处理的规模大小用字母G G表示表示 G=TG=TW W/T/TC CT TW W:所有处理器进行计算的时间总和;:所有处理器进行计算的时间总和;T TC C:所有处理器进行通信的时间总和设系统共有:所有处理器进行通信的时间总和设系统共有P P个处理器)个处理器)当当T TC C较大时,通信量大,则较大时,通信量大,则G G较小处理粒度较细反之对于粗粒度的并行,较小处理粒度较细反之对于粗粒度的并行,通信量较小通信量较小处理器操作并行处理器操作并行--------为支持向量、数组运算,可以通过重复设置为支持向量、数组运算,可以通过重复设置处理单元进行,如并行处理机处理单元进行,如并行处理机指令、任务、作业并行指令、任务、作业并行--------较高级并行,属于较高级并行,属于MIMDMIMD计算机第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture时延时延((TC TC ))————机器各子系统间通信开销的时间量度。
如:存贮时延是机器各子系统间通信开销的时间量度如:存贮时延是处理机访问存贮器所需时间;同步时延是两台处理机互相同步所需的时处理机访问存贮器所需时间;同步时延是两台处理机互相同步所需的时间通信时延问题:通信时延问题:计算机中不同的时延是由机器内部系统结构,实现技术和计算机中不同的时延是由机器内部系统结构,实现技术和通信方式决定系统结构和实现技术将会影响子系统间容许时延的选择通信方式决定系统结构和实现技术将会影响子系统间容许时延的选择可以用平衡粒度和时延的办法来求得较好的计算机系统性能可以用平衡粒度和时延的办法来求得较好的计算机系统性能处理机间通信引起的时延:处理机间通信引起的时延:除数据通路中的信号延迟外,还受到通信方式除数据通路中的信号延迟外,还受到通信方式的影响一般情况下的影响一般情况下n n个处理任务互相通信时,它们之间需有个处理任务互相通信时,它们之间需有n n((n-1n-1))/2 /2 条通信链路由此看出复杂性是以平方关系增长,这将限制大型计算机系条通信链路由此看出复杂性是以平方关系增长,这将限制大型计算机系统中允许使用的处理机数量统中允许使用的处理机数量 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture作业级(程序)作业级(程序)任任务务级级((过过程程或或程序段)程序段)子任务级(例子任务级(例行程序或子程行程序或子程序)序)指令或语句指令或语句循环或迭代循环或迭代级级5 5级级4 4级级3 3级级2 2级级1 1通信需求通信需求与调度开与调度开销销并行程并行程度度粗粒度粗粒度中粒度中粒度细粒度细粒度现代计算机程序运行并行性级别现代计算机程序运行并行性级别 五五种种程程序序执执行行级级别别体体现现了了不不同同的的算算法法粒粒度度规规模模以以及及通通信信和和控控制制要要求求的的变变化化。
级级别别越越低低,,软软件件进进程程的的粒粒度度越越细细一一般般情情况况,,程程序序可可在在这这些些级级别别的的组组合合状状态态下下运行第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture((1 1))指指令令级级::并并行行性性发发生生在在指指令令内内部部微微操操作作之之间间或或指指令令之之间间取取决决于于程程序序的的具具体体情情况况可可借借助助于于优优化化编编译译器器开开发发细细粒粒度度并并行行性性,,它它能能自自动动检检测测并并行行性并将源代码换成运行时系统能识别的并行形式性并将源代码换成运行时系统能识别的并行形式2 2))循循环环级级::相相当当于于迭迭代代循循环环操操作作,,典典型型循循环环包包含含的的指指令令大大约约几几百百条条,,循循环环级级并并行行性性是是并并行行机机或或向向量量计计算算机机上上运运行行的的最最优优程程序序结结构构,,并并行行处处理理主主要要由由编编译译器在循环级中进行开发器在循环级中进行开发3 3))子子任任务务级级::属属于于中中粒粒度度子子程程序序是是在在单单处处理理机机或或多多处处理理机机的的多多道道程程序序设设计计这这一一级级进进行行的的。
这这一一级级并并行行性性由由算算法法设设计计者者或或程程序序员员开开发发而而非非用用编编译译器器开开发4 4))任任务务级级::这这是是与与任任务务、、过过程程、、程程序序段段、、协协同同程程序序级级相相对对应应的的中中粒粒度度或或粗粗粒粒度度规规模模典典型型粒粒度度包包含含的的指指令令几几千千条条,,检检测测本本级级的的并并行行性性比比细细粒粒度度级级困困难得多,需要更多地涉及过程间的相关性分析需编译器支持难得多,需要更多地涉及过程间的相关性分析需编译器支持5 5)作业(程序)级:)作业(程序)级:对于少量几台高性能处理机构成的超级对于少量几台高性能处理机构成的超级计算机开发这种粗粒度并行性切实可行计算机开发这种粗粒度并行性切实可行第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture小结:小结:ü 细细粒粒度度并并行行性性常常在在指指令令级级或或循循环环级级上上借借助助于于并并行行化化或或向向量量化化编编译译器器来进行开发的来进行开发的ü 任任务务或或作作业业步步骤骤((过过程程级级))中中粒粒度度并并行行性性开开发发需需要要程程序序员员和和编编译译器的共同作用。
器的共同作用ü 开开发发程程序序作作业业级级的的粗粗粒粒度度并并行行性性主主要要取取决决于于高高效效的的操操作作系系统统和和所所用算法的效率用算法的效率ü 共共享享变变量量通通信信常常用用于于支支持持中中、、细细粒粒度度计计算算消消息息传传递递型型多多计计算算机机用用于于中中粒粒度度和和粗粗粒粒度度的的计计算算通通常常情情况况下下,,粒粒度度越越细细,,并并行行性性潜潜力力越越大大,,通通信信和和调调度度的的开开销销也也越越大大细细粒粒度度能能提提供供较较高高的的并并行行度度,,但但与与粗粗粒粒度度计计算算相相比比,,其其通通信信开开销销也也较较大大大大规规模模并并行行性性通通常常是是在在细细粒粒度度级级上上开开发发如:如:SIMDSIMD或或MIMDMIMD计算机上开发的数据并行性计算机上开发的数据并行性第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture提高计算机系统的并行性的技术途径:提高计算机系统的并行性的技术途径: Ø时间重叠(时间重叠(Time InterleavingTime Interleaving):):在并行性概念中引入时间因素。
在并行性概念中引入时间因素让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度的各个部分,以加快硬件周转而赢得速度Ø资源重复(资源重复(Resource ReplicationResource Replication):):并行性概念中引入空间因素并行性概念中引入空间因素通过重复设置的硬件资源来提高系统可靠性或性能例如,通过使用通过重复设置的硬件资源来提高系统可靠性或性能例如,通过使用两台或多台完全相同的计算机完成同样的任务来提高可靠性两台或多台完全相同的计算机完成同样的任务来提高可靠性Ø资源共享(资源共享(Resource SharingResource Sharing):):利用软件的方法让多个用户按一定利用软件的方法让多个用户按一定时间顺序轮流地使用同一套资源,以提高其利用率,这样相应地提高时间顺序轮流地使用同一套资源,以提高其利用率,这样相应地提高整个系统的性能例如多道程序分时系统整个系统的性能例如多道程序分时系统. .二、二、 并行处理技术发展并行处理技术发展第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture多道程序多道程序分时系统分时系统虚拟存储器虚拟存储器多终端多终端远程终端远程终端分布处理系统分布处理系统局域计算机网局域计算机网通信处理机通信处理机计算机网计算机网多存储体多存储体多操作部件多操作部件相联处理机相联处理机并行处理机并行处理机同构型多处理机同构型多处理机系统系统可重构可重构, ,容错多处理容错多处理机机紧密耦合紧密耦合系统系统先行控制先行控制高速缓存高速缓存指令操作指令操作宏流水线宏流水线异构型多处理机系异构型多处理机系统统高级语言数据库处高级语言数据库处理机理机松散耦合系统、专用外松散耦合系统、专用外围处理机围处理机多计算机系统多计算机系统单处理机单处理机资源共享资源共享资源重复资源重复时间重叠时间重叠多机互连多机互连功能专用化功能专用化网络化网络化 并行处理技术发展并行处理技术发展第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture并行处理中需研究的课题:并行处理中需研究的课题:((1 1))在在处处理理机机数数目目很很多多的的情情况况下下,,要要把把任任何何一一个个问问题题分分成成足足够够多多的的并并行行过程(即任务分配)非常困难,并且也不是所有问题都能做到这一点。
过程(即任务分配)非常困难,并且也不是所有问题都能做到这一点2 2))现现有有的的并并行行算算法法绝绝大大多多数数是是由由串串行行算算法法发发展展而而来来的的,,因因此此很很难难摆摆脱脱传统串行的思维和处理方式方法的约束传统串行的思维和处理方式方法的约束3 3))现现有有算算法法语语言言对对并并行行性性限限制制很很大大现现行行的的SIMDSIMD和和MIMDMIMD系系统统结结构构仍仍然然没没有有摆摆脱脱传传统统的的以以指指令令流流为为主主导导的的Von Von NeumannNeumann模模式式因因指指令令相相关关和和地地址址空间相关等矛盾的出现,使并行效率受到严重的限制空间相关等矛盾的出现,使并行效率受到严重的限制4 4))在在并并行行处处理理过过程程中中,,各各处处理理机机间间的的通通信信开开销销有有可可能能使使并并行行处处理理技技术术得不偿失得不偿失5 5))并并行行处处理理技技术术的的主主要要困困难难是是软软件件,,软软件件的的关关键键在在于于如如何何高高效效地地进进行行存存储储管管理理和和机机间间通通信信,,尤尤其其是是并并行行编编译译程程序序发发展展,,对对发发挥挥硬硬件件特特性性改改善善系统性能影响更大。
系统性能影响更大第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture一一、阵列处理机的基本构成、阵列处理机的基本构成基本思路:基本思路:阵列处理机是通过重复设置大量相同的处理单元阵列处理机是通过重复设置大量相同的处理单元PEPE,,将它们按一定的方式互连,在统一的控制部件将它们按一定的方式互连,在统一的控制部件CUCU((Control UnitControl Unit)控)控制下,对各自分配来的不同数据并行地完成同一条指令所规定的操作制下,对各自分配来的不同数据并行地完成同一条指令所规定的操作它依靠操作一级的并行处理来提高系统的速度它依靠操作一级的并行处理来提高系统的速度Ø阵列处理机的控制部件中进行的是单指令流,因此与高性能单处理机阵列处理机的控制部件中进行的是单指令流,因此与高性能单处理机一样,指令基本上是串行执行,最多加上使用指令重叠或流水线的方一样,指令基本上是串行执行,最多加上使用指令重叠或流水线的方式工作Ø指令重叠是将指令分成两类,把只适合串行处理的控制和标量类指令指令重叠是将指令分成两类,把只适合串行处理的控制和标量类指令留给控制部件自己执行,而把适合于并行处理的向量类指令播送到所留给控制部件自己执行,而把适合于并行处理的向量类指令播送到所有处理单元,控制让处于活跃的那些处理单元去并行执行。
因此这是有处理单元,控制让处于活跃的那些处理单元去并行执行因此这是一种标量控制类指令和向量类指令的重叠执行一种标量控制类指令和向量类指令的重叠执行三、三、 阵列处理机的原理阵列处理机的原理第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture二二 、阵列处理机分、阵列处理机分类类 阵列处理机根据存贮器采用的组成方式不同分成两种基本构成阵列处理机根据存贮器采用的组成方式不同分成两种基本构成 ((1 1)分布存贮的阵列处理机)分布存贮的阵列处理机 各个处理单元设有局部存贮器存放分布式数据,只能被本处理单各个处理单元设有局部存贮器存放分布式数据,只能被本处理单元直接访问此种局部存贮器称为处理单元存贮器(元直接访问此种局部存贮器称为处理单元存贮器(Processing Processing Element MemoryElement Memory))PEMPEM在控制部件在控制部件CUCU内设有一个用来存放程序的主存内设有一个用来存放程序的主存贮器贮器CUMCUM整个系统在。
整个系统在CUCU统一控制下运行系统程序的用户程序执行主统一控制下运行系统程序的用户程序执行主存中的用户程序指令播送给各个存中的用户程序指令播送给各个PEPE,控制,控制PEPE并行地执行并行地执行 特点:特点:处理器阵列一般是通过处理器阵列一般是通过CUCU接到一台管理处理机接到一台管理处理机SCSC上,上,SCSC一般是一一般是一种通用计算机,用于管理整个系统的全部资源,完成系统维护、输入输种通用计算机,用于管理整个系统的全部资源,完成系统维护、输入输出、用户程序的汇编及向量化编译、作业调度、存贮分配、设备管理、出、用户程序的汇编及向量化编译、作业调度、存贮分配、设备管理、文件管理等操作系统的功能文件管理等操作系统的功能第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitecturePEMPEM0 0PEPE0 0PEMPEM1 1PEPE1 1PEMPEMN-N-1 1PEPEN-1N-1ICNICNCUCUCUMCUMI/OI/O接口接口D DSCSC分布存贮器阵列处理机结构分布存贮器阵列处理机结构第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureILLIAC-IV ILLIAC-IV 结构结构 (分布存贮器并行处理机结构)(分布存贮器并行处理机结构)•处理单元阵列处理单元阵列 由由6464个结构完全相同的处理单元个结构完全相同的处理单元PEi PEi 构成,每个处理单元构成,每个处理单元PEiPEi字字长长6464位,位,PEMiPEMi为隶属于为隶属于PEiPEi的局部存储器,每个存储器有的局部存储器,每个存储器有2K2K字,全部字,全部PEiPEi由由CUCU统一管理,统一管理,PEiPEi都有一根方式位线,用来向都有一根方式位线,用来向CUCU传送每个传送每个PEiPEi的的方式寄存器方式寄存器D D中的方式位,使中的方式位,使CUCU能了解各能了解各PEiPEi的状态是否活动,作为控的状态是否活动,作为控制它们工作的依据。
制它们工作的依据 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureILLIAC-IVILLIAC-IV的处理单元原理图的处理单元原理图 012047PEM0204701PEM1204701PEM63PE630163ACAR0ACAR1ACAR2ACAR3ALU控制器控制器CUCU累加器累加器ADB............方位总线方位总线指令控制线指令控制线CUCU总线总线......XDABRSPE1到到PE63到到PE0......CDBXDABRSPE0第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitecturePUPU间互连状态:间互连状态:PUiPUi代表代表6464位处理单元位处理单元PEiPEi、所带局部存贮器、所带局部存贮器PEMiPEMi及存贮及存贮器逻辑部件总称每台器逻辑部件总称每台PUiPUi只能与它的只能与它的4 4个近邻连接个近邻连接PUiPUi的的4 4个近邻是个近邻是PUi-1PUi-1,,PUi+1PUi+1,,PUi-8PUi-8,,PUi+8PUi+8((mod64mod64)。
这种连接称为闭合螺线阵列这种连接称为闭合螺线阵列这种互连网络中这种互连网络中, ,当数据从一个当数据从一个PUiPUi传送另一个传送另一个PUiPUi要走好几步,中间经要走好几步,中间经过其它过其它PUiPUi转送传送步数转送传送步数I≤√N -1I≤√N -1N N为为PEiPEi总数)当总数)当N=64N=64时,最多时,最多步数为步数为7 7在每次数据传送操作时由软件算出最短路径在每次数据传送操作时由软件算出最短路径 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitecturePU16PU16PU0PU0PU8PU8PU7PU7PU55PU55PU63PU63PU0PU0PU1PU1PU7PU7PU8PU8PU9PU9PU15PU15PU56PU56PU57PU57PU63PU63PU0PU0PU1PU1PU7PU7PU56PU56PU57PU57PU58PU58ILLIAC-IVILLIAC-IV的处理单元互连图的处理单元互连图 将将PU63PU63传送到传送到PU10PU10,最快可经,最快可经PU63→PU7→PU8→PU9→PU10PU63→PU7→PU8→PU9→PU10。
第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture控制器的功能有以下五个方面:控制器的功能有以下五个方面: ①① 对对指指令令流流进进行行控控制制和和译译码码,,包包括括执执行行一一整整套套标标量量操操作作指指令;令; ② ② 向各处理单元发出执行数组操作指令所需的控制信号;向各处理单元发出执行数组操作指令所需的控制信号; ③ ③ 产生和向所有处理单元广播的公共的地址部分;产生和向所有处理单元广播的公共的地址部分; ④ ④ 产生和向所有处理单元广播的公共数据;产生和向所有处理单元广播的公共数据; ⑤⑤ 接接收收和和处处理理由由各各PEPE((计计算算出出错错时时))、、系系统统I/OI/O操操作作以以及及B6700B6700所生产的陷阱中断信号所生产的陷阱中断信号•阵列控制器阵列控制器 除了对阵列的处理单元实行控制以外,还能利用本身的内除了对阵列的处理单元实行控制以外,还能利用本身的内部资源执行一整套指令,用以完成标量操作,在时间上与各部资源执行一整套指令,用以完成标量操作,在时间上与各PEPE的数组操作重叠起来的数组操作重叠起来。
第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture•I/OI/O系统系统 由磁盘文件系统由磁盘文件系统DFSDFS、、I/OI/O分系统和分系统和B6700B6700组成,组成, 完成输入输完成输入输出及其他管理功能出及其他管理功能 ILLIAC-IVILLIAC-IV系统的操作系统,连同编译程序、汇编程序、输入系统的操作系统,连同编译程序、汇编程序、输入输出服务子程序等都驻留在宿主机输出服务子程序等都驻留在宿主机B6700B6700中,处理单元阵列就像是宿中,处理单元阵列就像是宿主机的一台专门作向量处理的后端机或者说宿主机是处理单元阵列主机的一台专门作向量处理的后端机或者说宿主机是处理单元阵列的一台输入输出处理机的一台输入输出处理机 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture((2 2)集中式共享存贮的阵列处理机)集中式共享存贮的阵列处理机特特点点::每每个个PEPE没没有有局局部部存存储储器器,,存存储储模模块块以以集集中中形形式式为为所所有有PEPE共共享享,,互互连连网络网络ICNICN受受CUCU控制。
控制 ……ICNICNPEPE0 0PEPE1 1PEPEN-1N-1MMMM0 0MMMM1 1MMMMK-1K-1CUCUSCSCI/O-CHI/O-CHI/OI/OSMSM…………具有共享存贮器阵列处理机结构具有共享存贮器阵列处理机结构K K N N互连网络互连网络ICNICN的作的作用不同用不同第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture指指令令译译码码控制部件控制部件处理器处理器存储器存储器NW2NW2NW1NW11717个存储块个存储块1616个处理单元个处理单元对准网络对准网络对准网络对准网络BSPBSP的五级数据流水线构图的五级数据流水线构图 (集中式共享存贮器)(集中式共享存贮器)((1 1)并行处理机)并行处理机((2 2)控制处理器)控制处理器((3 3)文件存储器)文件存储器((4 4)对准网络)对准网络((5 5))BSPBSP的五级的五级 数数据据流流水水线线示例:示例:BurroughsBurroughs公司与依里诺大学联合研制的科学处理机公司与依里诺大学联合研制的科学处理机BSPBSP((Burroughs Scientific ProcessorBurroughs Scientific Processor))第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture作用:作用:((1 1)由)由1717个存储器模块并行读出个存储器模块并行读出1616个操作数;个操作数;((2 2))经经对对准准网网络络NW1NW1将将1616个个操操作作数数重重新新排排列列成成1616个个处处理理单单元元所所需需要要的的次次 序;序;((3 3)将排列好的)将排列好的1616个操作送到并行处理单元完成操作;个操作送到并行处理单元完成操作;((4 4))所所得得的的1616个个结结果果经经过过对对准准网网络络NW2NW2重重新新排排列列成成1717个个存存储储器器模模块块所所需要的次序;需要的次序;((5 5)写入存储器;)写入存储器;第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture共共同同特特点点::可可以以通通过过各各种种途途径径把把它它们们转转化化成成为为对对数数组组或或向向量量的的处处理理,,利利用用多多个个处处理理单单元元对对向向量量或或数数组组所所包包含含的的各各个个分分量量同同时时进进行行运运算算,,从从而而易易于于获获得很高的处理速度。
得很高的处理速度三三 阵列处理机的特点阵列处理机的特点并行处理机有如下特点:并行处理机有如下特点:((1 1)利用资源重复(空间因素)而非时间重叠利用资源重复(空间因素)而非时间重叠2 2)利用同时性而非并发性利用同时性而非并发性3 3))提提高高运运算算速速度度主主要要是是靠靠增增大大处处理理单单元元个个数数,,比比起起向向量量流流水水线线处处理理机机主主要依靠缩短时钟周期来说,速度提高的潜力要大得多要依靠缩短时钟周期来说,速度提高的潜力要大得多4 4)使用简单而又规整的互连网络来确定多个处理单元之间的连接模式使用简单而又规整的互连网络来确定多个处理单元之间的连接模式 ((5 5))并并行行处处理理机机((阵阵列列机机))研研究究必必须须与与并并行行算算法法研研究究密密切切结结合合,,使使之之适适应应性更强,应用面更广性更强,应用面更广第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture概念:概念:一种由一种由开关元件开关元件,按照一定的,按照一定的拓扑结构拓扑结构和和控制方式控制方式构成的,用来实构成的,用来实现计算机系统内部的现计算机系统内部的多个功能部件多个功能部件或者是或者是多个处理机多个处理机之间的相互连接。
之间的相互连接 MIMDMIMD计算机计算机SIMDSIMD计算机计算机四、四、 互连网络互连网络第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureIPMNIPMNSMSM1 1SMSM2 2SMnSMn……PIONPIONCnCnPnPnLMnLMnC1C1P1P1LM1LM1 IPCN IPCN……磁盘部件磁盘部件磁带部件磁带部件打印机打印机终端终端网络网络(共享(共享I/OI/O和外围设备)和外围设备)常用多处理机系统的互连结构图常用多处理机系统的互连结构图 . .. .. .. .. .. .. .. .. .第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture互连网络的特性互连网络的特性v 网络规模:网络规模:网络中结点数网络中结点数v 结结点点度度::与与结结点点相相连连接接的的边边((即即链链路路或或通通道道))数数,,用用d d表表示示结结点点度度是入度、出度之和是入度、出度之和v 距离:距离: 两结点之间相连的最少边数。
两结点之间相连的最少边数v 网络直径:网络直径:它是网络中任意两个结点之间距离的最大值它是网络中任意两个结点之间距离的最大值v 等等分分宽宽度度::某某一一网网络络被被切切成成相相等等的的两两半半时时,,沿沿切切口口的的最最小小边边数数((通通道道)),用,用b b表示v 结点间的线长:结点间的线长:两个结点间线的长度两个结点间线的长度v 对对称称性性::从从任任何何结结点点看看拓拓扑扑结结构构都都是是一一样样对对称称网网络络较较易易实实现现,,编编程程也较容易也较容易 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture 机机器器A A 机机器器B B 连接两台计算机的简单网络连接两台计算机的简单网络一台机器发送消息给另一台机器时,发送方的步骤如下:一台机器发送消息给另一台机器时,发送方的步骤如下:((1 1)) 应用程序把要发送的数据拷贝到操作系统的缓冲区。
应用程序把要发送的数据拷贝到操作系统的缓冲区2 2)) 操操作作系系统统根根据据要要发发送送的的数数据据计计算算出出检检查查和和,,并并把把它它加加在在消消息息中中,,同时启动超时计数器同时启动超时计数器3 3)) 操操作作系系统统把把缓缓冲冲区区中中的的数数据据送送到到网网络络接接口口硬硬件件并并通通知知硬硬件件开开始始发发送消息第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture消息包的接收步骤:消息包的接收步骤:((1 1)) 系统把数据从网络接口硬件数据拷贝到操作系统缓冲区系统把数据从网络接口硬件数据拷贝到操作系统缓冲区2 2)) 系统根据接收到的数据计算出检查和系统根据接收到的数据计算出检查和3 3)) 如如果果数数据据通通过过检检查查,,系系统统把把接接收收到到的的数数据据拷拷贝贝到到用用户户地地址址空空间并启动应用程序继续执行间并启动应用程序继续执行第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture 发送方发送方 开销开销((5 5)) 传输时间传输时间((2 2)) 发送方发送方 ““飞行飞行””时间时间((3 3)) 传输时间传输时间 接收方开销接收方开销((6 6)) 接收方接收方 传输时延传输时延((4 4)) 总时延总时延 互连网络的传输性能参数互连网络的传输性能参数 传输时延传输时延= =““飞行飞行””时间时间+ +传输时间传输时间一一个个消消息息的的总总时时延延 = = 发发送送方方开开销销 + + ““飞飞行行””时时间间 + + 消消息息长长度度/ /频频宽宽((1 1)) + +接收方开销接收方开销 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture概念:概念:表示互连网络的出端号和入端号的一一对应关系。
表示互连网络的出端号和入端号的一一对应关系 作用:作用:Ø对于所有的对于所有的0≤i≤N-10≤i≤N-1,同时存在入端,同时存在入端j j连至出端连至出端f f((j j)的对应关系的对应关系Ø当互连函数用来实现处理机之间数据变换时,互连函数也反映了网络当互连函数用来实现处理机之间数据变换时,互连函数也反映了网络输入数组与输出数组间对应的排列关系或者置换关系输入数组与输出数组间对应的排列关系或者置换关系 互连函数有三种表示法:互连函数有三种表示法:v 输入输出对应表示法输入输出对应表示法v 循环表示法循环表示法v 函数表示法函数表示法 (一)(一) 互联函数互联函数第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture1 1、输入输出对应表示法、输入输出对应表示法 0 0变换为变换为f(0),1f(0),1变换为变换为f(1),f(1),······,N-1,N-1变换成变换成f(N-1)f(N-1) f f是互连函数是互连函数2 2、、 循环表示法循环表示法 f f((X X0 0))= X= X1 1,,f f((X X1 1))= X= X2 2,,…………,,f f((X Xj j))= X= Xj j+1+1,,………… f f((X Xk-1k-1))= X= X0 0,其中,其中X Xi i为结点编号,这里为结点编号,这里k k为循环长度。
为循环长度第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture3 3、、 函数表示法函数表示法 如如x x::{b{bn-1n-1b bn-2n-2……b bi i……b b0 0} },,互互连连函函数数对对应应地地表表示示为为f f((b bn-1n-1b bn-n-2 2……b bi i……b b0 0) 例如交换置换:例如交换置换: E E(( b bn-1n-1b bn-2n-2……b bi i……b b0 0 ))= b= bn-1n-1b bn-2n-2……b bi i……b b0 0 它它表表示示实实现现二二进进制制地地址址编编号号中中第第0 0位位位位值值不不同同的的输输入入端端和和输输出出端端之间连接之间连接第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture几种基本的互连函数几种基本的互连函数用用N N表表示示节节点点数数目目,,当当用用二二进进制制表表示示这这些些节节点点号号时时,,将将用用n n 位二进制数表示,其中位二进制数表示,其中 n=logn=log2 2N N。
1 1、、 恒等置换恒等置换 相相同同编编号号的的输输入入端端与与输输出出端端一一一一对对应应互互连连所所实实现现的的置置换换即即为为恒恒等等置换,其表达式为:置换,其表达式为: I I((X Xn-1n-1X Xn-2n-2……X X1 1X X0 0))= X= Xn-1n-1X Xn-2n-2……X X1 1X X0 0 其中等式左边括号内的其中等式左边括号内的X Xn-1n-1X Xn-2n-2……X X1 1X X0 0和等式右边的和等式右边的X Xn-1n-1X Xn-2n-2……X X1 1X X0 0均为均为网络输入端和输出端的二进制地址编号网络输入端和输出端的二进制地址编号 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 N=8N=8的的恒恒等等置置换换 N=8N=8的的交交换换置换置换 2 2、、 交换置换交换置换 交交换换置置换换是是实实现现二二进进制制地地址址编编号号中中第第0 0位位位位值值不不同同的的输输入入端端和和输出端之间的连接。
其表达式为:输出端之间的连接其表达式为: E(( Xn-1Xn-2…X1X0 ))= Xn-1Xn-2…X1X0第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture3 3、、 方体置换方体置换 方方体体置置换换是是实实现现二二进进制制地地址址编编号号中中第第k k位位位位值值不不同同的的输输入入端端输输出出端端之之间的连接其表达式为:间的连接其表达式为:Cubek(Xn-1Xn-2…Xk+1XkXk-1…X1X0) = Xn-1Xn-2… Xk+1XkXk-1 … X1X0 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture 0 0 0 0 0 0 1 1 1 1 1 1 2 2 2 2 2 2 3 3 3 3 3 3 4 4 4 4 4 4 5 5 5 5 5 5 6 6 6 6 6 6 7 7 7 7 7 7 ((a a))C C0 0方方体体置置换换 ((b b))C C1 1方方体体置置换换 ((c c))C C2 2方方体体置置换换第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture4 4、、 均匀洗牌置换均匀洗牌置换 将将输输入入端端分分成成数数目目相相等等的的两两半半,,前前一一半半和和后后一一半半按按序序一一个个隔隔一一个个地地从头至尾依次与输出端相连,其函数关系可表示为:从头至尾依次与输出端相连,其函数关系可表示为:逆逆均均匀匀洗洗牌牌是是均均匀匀洗洗牌牌的的逆逆函函数数,,两两者者的的输输入入端端和和输输出出端端正正好好互互换换了了位位置置,,其函数表达式为:其函数表达式为:第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture 0 0 0 0 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 5 5 5 5 6 6 6 6 7 7 7 7 N=8N=8的均匀洗牌置的均匀洗牌置换和逆均匀洗牌换和逆均匀洗牌置换置换 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture5.5.蝶式置换(蝶式置换(ButterflyButterfly))被定义为:被定义为: β((Xn-1Xn-2…X1X0))= X0Xn-2…X1 Xn-1子蝶式(子蝶式(subbutterflysubbutterfly))ββ(k)(k) 置换:置换:β(K)(Xn-1Xn-2 …Xk+1XkXk-1…X1X0)) = Xn-1Xn-2 …Xk+1X0Xk-1…X1Xk超蝶式置换超蝶式置换ββ(k)(k) : : β(k) (Xn-1Xn-2 …Xn-kXn-k-1…X1X0)) = X n-k-1Xn-2…Xn-kXn-1Xn-k-2 …X1 X0 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture012345670123456701234567012345670123456701234567(a)(a) = = 置换置换 ((b b)) (1)(1)= = (1)(1)置换置换 ((c c)) (1)(1)= = (1)(1)置换置换 N=8N=8的蝶式置换的蝶式置换 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture6 6、移数置换、移数置换将将输输入入端端数数组组循循环环移移动动一一定定的的位位置置向向输输出出端端传传输输。
其其函函数数表表达达式式无无需需用二进制编号来写,可表达如下:用二进制编号来写,可表达如下: a(X)=(X+k) mod N, 0≤X ≤N k k为常数,指移动的位置值为常数,指移动的位置值 0123456701234567 移数置换移数置换k=2k=2第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture7 7、、 加减加减2 2i i((PM2IPM2I)置换)置换加减加减2 2i i 置换实际上是一种移数置换包含置换实际上是一种移数置换包含2n2n个互连函数,其表达式为个互连函数,其表达式为 PM2+i((j))=j+2 i ((mod N)) PM2-i((j))=j-2 i ((mod N))式中,式中,0≤j≤N-10≤j≤N-1,,0≤i≤n-10≤i≤n-1,,n=logn=log2 2N N012345670123456701234567012345670123456701234567(a)i=0(a)i=0(b) i=+1(b) i=+1(c) i=+2(c) i=+2第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture0 0输输入入端端 输输出端出端 N-1 N-1IS0IS1ISN-1OS0OS1OSN-1单级互连网的普遍模型单级互连网的普遍模型 (二)(二) 互联网结构互联网结构第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture三个单级互连网(以三个单级互连网(以N=8N=8为例)为例)Ø立方体网立方体网立方体单级网循环表示为:立方体单级网循环表示为:Cube0:(:(0 1)()(2 3)()(4 5)()(6 7))Cube1:(:(0 2)()(1 3)()(4 6)()(5 7))Cube2:(:(0 4)()(1 5)()(2 6)()(3 7)) 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture011010001101100000110111Cube0001011010101100000110111011010001101100000110111Cube2Cube1立方体网共有立方体网共有n=Logn=Log2 2N N种互连函数,即为种互连函数,即为CUBEK(Xn-1Xn-2…Xk+1XkXk-1…X1X0)=Xn-1Xn-2…Xk+1XkXk-1…X1X0 其其中中X Xk k为为输入端标号的第输入端标号的第K K 位二进制代号位二进制代号, ,且且0<=k<=n-1 0<=k<=n-1 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureØPM2IPM2I单级互联网单级互联网 PM2IPM2I单级网结点间的互连函数关系为加减单级网结点间的互连函数关系为加减2 2i i 置换置换, ,对于对于N=8N=8,,PM2IPM2I单级网共有单级网共有2*3=62*3=6个互连函数,循环表示为:个互连函数,循环表示为: PM2+0:(:(0 1 2 3 4 5 6 7)) PM2-0:(:(7 6 5 4 3 2 1 0)) PM2+1:(:(0 2 4 6)()(1 3 5 7)) PM2-1:(:(6 4 2 0)()(7 5 3 1)) PM2±2:(:(0 4)()(1 5)()(2 6)()(3 7)) 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitecturePM2+0 0 1 2 3 4 5 6 7PM2+1 0 1 2 3 4 5 6 7 PM2±2 0 1 2 3 4 5 6 7 PM2IPM2I互连网连接图互连网连接图 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureØ 混洗交换单级互联网络混洗交换单级互联网络全混洗(全混洗(Perfect shufflePerfect shuffle)、交换()、交换(ExchangeExchange))01234567全混洗交换单级网全混洗交换单级网 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture基本的循环互连网和多级互连网基本的循环互连网和多级互连网循环互连网:循环互连网:将同一套单级互连网循环使用,组成循环互连网络将同一套单级互连网循环使用,组成循环互连网络. .单单级级互互连连网网络络MUXDTRiDTRoMUXDTRiDTRo...循环循环循环循环PEPE0 0来来去去PEPE0 0PEPEN-1N-1来来去去PEPEN-1N-1传送传送寄存器寄存器多路开关多路开关第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture多级互连网:多级互连网:将多套单级互连网串联使用,组成多级互连网。
将多套单级互连网串联使用,组成多级互连网优点优点: :ü缩短了通过时间而提高了速度缩短了通过时间而提高了速度; ;ü可以利用各种单级互连网络进行不同的组合,产生具有各种可以利用各种单级互连网络进行不同的组合,产生具有各种特性和连接模式的多级互连网络,灵活性较好特性和连接模式的多级互连网络,灵活性较好缺点缺点: :ü增加了设备和成本增加了设备和成本第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture最最基基本本的的多多级级互互连连网网络络::多多级级立立方方体体互互连连网网络络,,多多级级混混洗洗交交换换网网络络和和PM2IPM2I网络实实现现各各种种多多级级网网络络的的区区别别::所所用用开开关关模模块块、、控控制制方方式式和和拓拓扑扑结结构构((级级间间连连接模式)三个因素不同接模式)三个因素不同 直直连连 交换交换 上播上播 下播下播2×2交叉开关连接模式交叉开关连接模式 开开关关模模块块ijijijijijijijij第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture控制方式:控制方式:是对各个开关模块进行控制的方式。
是对各个开关模块进行控制的方式拓扑结构:拓扑结构:指各级之间出端和入端相互连接的规则或连接模式指各级之间出端和入端相互连接的规则或连接模式ü级级控控制制--------每每一一级级的的所所有有开开关关只只用用一一个个控控制制信信号号控控制制,,同同时时只只能能处处于于同一种状态;同一种状态;ü单单元元控控制制--------每每一一个个开开关关都都有有自自己己单单独独的的控控制制信信号号控控制制,,可可各各自自处处于于不同的状态;不同的状态;ü部部分分级级控控制制--------第第i i级级的的所所有有开开关关分分别别用用i+1i+1个个信信号号控控制制,,0≤i≤n-10≤i≤n-1,,n n为级数第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureØ多级立方体网多级立方体网AEIBFJCGKDHL 0 1 2 3 4 5 6 701234567N=8N=8间接二进制间接二进制n n方体互连网方体互连网 特点:特点:第第i i级(级(0≤i≤n-10≤i≤n-1)控制信号为)控制信号为““1 1””时,处于交换状态,,实现时,处于交换状态,,实现的是的是cube cube i i 互连函数,当该信号为互连函数,当该信号为““0 0””时,相应单元处于直连状态代码时,相应单元处于直连状态代码不变,它们都采用两个功能(直接、交换)的交换单元。
常用的多级立方不变,它们都采用两个功能(直接、交换)的交换单元常用的多级立方体网有体网有STARANSTARAN网网,间接二进制,间接二进制n n方体网等方体网等交换网络:级控交换网络:级控移数网络:部分级控移数网络:部分级控第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture三级三级STARANSTARAN交换网络实现的入出端连接交换网络实现的入出端连接级控制信号级控制信号 000 001 010 011 100 101 110 111入入 0 1端端 2 3 4号号 5 6 7 0 1 2 3 4 5 6 7 1 0 3 2 5 4 7 6 2 3 0 1 6 7 4 5 3 2 1 0 7 6 5 4 4 5 6 7 0 1 2 3 5 4 7 6 1 0 3 2 6 7 4 5 2 3 0 1 7 6 5 4 3 2 1 0第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureØ多级混洗交换网络多级混洗交换网络又称又称omegaomega网络,网络,由由n n级相同的网络组成,每一级都包含一个全混拓扑和级相同的网络组成,每一级都包含一个全混拓扑和随后一列随后一列2 2n-1n-1个个四功能交换单元四功能交换单元,(直连、交换、上播、下播),采用单,(直连、交换、上播、下播),采用单元控制方式。
元控制方式DHL 6 767AEIBFJCGK 0 1 2 3 4 5012345N=8 N=8 多级混洗交换网多级混洗交换网第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architectureü 多级多级PM2IPM2I互连网又称为数据交换网互连网又称为数据交换网; ;ü 其其中中N=8N=8,,n=logn=log2 2N=3N=3各各级级中中的的处处理理单单元元按按PM2IPM2I互互连连函函数数关关系系连连接接起来ü 第第0 0级、第一级、第二级完成的都是级、第一级、第二级完成的都是PM2IPM2Iü 网络中提供了冗余通路,提高了可靠性网络中提供了冗余通路,提高了可靠性 Ø多级多级PM2IPM2I互连网互连网STARANSTARAN网络和网络和omegaomega网络都是为了进行存储器与处理器之间的数据交换,网络都是为了进行存储器与处理器之间的数据交换,间接二进制间接二进制n n方体网络是为了连接成微处理器阵列方体网络是为了连接成微处理器阵列第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture互连网络的设计特性互连网络的设计特性计计算算机机中中,,衡衡量量互互连连网网络络性性能能好好坏坏的的主主要要因因素素是是它它的的连连接接度度、、延延时时性性、、带宽、可靠性和成本。
带宽、可靠性和成本连连接接度度::指指一一个个结结点点与与其其他他结结点点的的连连接接程程度度如如果果一一个个结结点点直直接接连连接接的其他结点数越多,连接度就越高,表明连接性越好的其他结点数越多,连接度就越高,表明连接性越好延延时时性性::指指从从一一个个结结点点传传送送信信息息到到任任何何另另一一个个结结点点所所需需的的时时间间通通常常可用结点间最大距离加以表示可用结点间最大距离加以表示第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture1 1、、 通信工作方式通信工作方式 通信工作方式可分为同步和异步两种通信工作方式可分为同步和异步两种2 2、、 控制策略控制策略 控制策略分为集中和分散两种控制策略分为集中和分散两种3 3、、 交换方式交换方式 交换方式分为线路交换和分组交换两种交换方式分为线路交换和分组交换两种4 4、、 网络拓扑网络拓扑 网网络络拓拓扑扑分分为为静静态态和和动动态态两两种种这这里里的的拓拓扑扑是是指指互互连连网网络络中中的的各个结点间连接关系,通常用图来描述。
各个结点间连接关系,通常用图来描述互连网络设计的四个特征互连网络设计的四个特征第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture网络拓扑结构网络拓扑结构 静态网络常用来实现集中式系统的多系统之间或分布式系静态网络常用来实现集中式系统的多系统之间或分布式系统的多个计算机结点间固定连接它一旦构成后就固定不变统的多个计算机结点间固定连接它一旦构成后就固定不变 1 1.. 静态互连网络静态互连网络第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture一维拓扑结构一维拓扑结构 环形拓扑结构环形拓扑结构 树形拓扑结构树形拓扑结构星形拓扑结构星形拓扑结构网格拓扑结构网格拓扑结构 全连接网络全连接网络 三维立方体结构三维立方体结构 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture各种互连网主要性能比较各种互连网主要性能比较 互连网络互连网络拓扑结构拓扑结构连接数连接数最最 大大连接度连接度最大结点距离最大结点距离(网络直径)(网络直径)线性线性N--12N--1环状环状N2N/2网格(网格(N*NN*N))2N((N--1))42((N--1))星形星形N-1N-12超立方(超立方(N N==2 2K K ))kN/2Log2NLog2N全互连全互连N((N--1))/2N--11二叉树二叉树N--132[Log2(N+1)-1]第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture2 2.. 动态互连网动态互连网v根据程序要求实现所有的通信模式;根据程序要求实现所有的通信模式;v通常紧耦合多处理机系统的互连网络采用动态拓扑结构;通常紧耦合多处理机系统的互连网络采用动态拓扑结构;v不不用用固固定定连连接接,,而而是是沿沿着着连连接接通通路路使使用用开开关关与与仲仲裁裁器器以以提提供供动动态连接特性,实现所要求的通讯模式;态连接特性,实现所要求的通讯模式;v按按照照价价格格和和性性能能增增加加的的顺顺序序,,动动态态连连接接网网络络分分为为总总线线系系统统,,多多端口存储器,交叉开关和多处理机的多级网络等。
端口存储器,交叉开关和多处理机的多级网络等 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture1 1、多处理机概念、多处理机概念ü一种系统构造方式一种系统构造方式; ;ü多个处理机共享主存或输入输出的子系统多个处理机共享主存或输入输出的子系统; ;ü统一操作系统控制或受各自独立操作系统统一操作系统控制或受各自独立操作系统; ;ü实现作业,任务级甚至指令级间并行实现作业,任务级甚至指令级间并行五、五、 多处理机多处理机第五章第五章 并行处理机和多处理机并行处理机和多处理机(一)(一) 多处理机硬件结构多处理机硬件结构计算机系统结构Computer Architecture2 2 、、 多处理机特点多处理机特点v 具有更大的灵活性和更强的通用性具有更大的灵活性和更强的通用性v 主要开发高层次作业及任务级(粗粒性)并行性主要开发高层次作业及任务级(粗粒性)并行性v 并行任务的派生需要用显式的专用语句或指令加以表示并行任务的派生需要用显式的专用语句或指令加以表示。
v 并并发发执执行行的的进进程程间间的的同同步步需需要要采采取取特特殊殊措措施施,,以以保保证证程程序序 原来的正确语义原来的正确语义v 对资源分配和任务分配要进行良好的调度对资源分配和任务分配要进行良好的调度v MIMDMIMD系统在执行条件语句时比系统在执行条件语句时比SIMDSIMD系统有较高的效率系统有较高的效率v MIMDMIMD的异步特性使得它在执行一串完成时间可变的指令的异步特性使得它在执行一串完成时间可变的指令时,比时,比SIMDSIMD有更快的速率有更快的速率第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture处理机处理机1 1处理机处理机N N......处理机处理机2 2存储器存储器存储器存储器......存储器存储器互连网络互连网络I/OI/OI/OI/O((a a)共享存储型)共享存储型 处理机处理机1 1处理机处理机N N......处理机处理机2 2存储器存储器存储器存储器......存储器存储器互连互连网络网络I/OI/OI/OI/O......I/OI/O((b b)点对点型(分布型))点对点型(分布型) 3 3、两种多处理机结构、两种多处理机结构 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture((1 1)共享存储型(紧耦合系统))共享存储型(紧耦合系统) 特点:特点: 1 1)多处理机系统中,多个处理器、高速缓存()多处理机系统中,多个处理器、高速缓存(cachecache)一般利用公)一般利用公 共总线实现互连。
共总线实现互连 2 2)通过共享主存实现处理机间的相互通信,相互间的联系比较紧)通过共享主存实现处理机间的相互通信,相互间的联系比较紧密 3 3)所有处理机共享)所有处理机共享I/OI/O设备或通过通道和外设相连,整个系统有统设备或通过通道和外设相连,整个系统有统一的操作系统管理,提供处理机及程序之间的作业、任务、文一的操作系统管理,提供处理机及程序之间的作业、任务、文件、数据各个级别上的相互联系件、数据各个级别上的相互联系 按系统所用的处理机结构类型是否相同及操作功能是否对称,可分为:按系统所用的处理机结构类型是否相同及操作功能是否对称,可分为:•同构对称型多机系统同构对称型多机系统•异构非对称型多机系统异构非对称型多机系统 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureI/OI/OSM1SM1SMmSMmP1P1P2P2PnPn 系统互连系统互连( (总线总线, ,交叉开关交叉开关, ,多级网络多级网络) )处理机处理机 ………… …………共享存储器共享存储器 UMA UMA多处理机模型多处理机模型 三种模型三种模型 (按存取方式)(按存取方式)1 1)均匀存储器存取)均匀存储器存取(Uniform-Memory-Access(Uniform-Memory-Access))UMAUMA2 2)非均匀存储器存取()非均匀存储器存取(Nonuniform-Memory-AccessNonuniform-Memory-Access))NUMANUMA3 3)高速缓存存储结构()高速缓存存储结构(Cache-Only-Memory ArchitectureCache-Only-Memory Architecture)) COMACOMA模型模型第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture LM1 LM1 P1 P1 LM2 LM2 P2 P2 LMn LMn Pn Pn 互连网络互连网络. .. .. .. . . .. .. .. . ((a a)) NUMANUMA共享本共享本地存储器(如地存储器(如BBN BBN ButterflyButterfly)) 多处理机系统的两种多处理机系统的两种NUMANUMA模型模型 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture…………GSMGSM 全局互连网络全局互连网络GSMGSMGSMGSM………………………………C CI I N N P1 P1 P2 P2 Pn Pn………………CSMCSM1 1CSM CSM 2 2CSMCSM3 3……………… P1 P1 P2 P2 Pn PnCSMCSM1 1CSMCSM2 2CSMCSMn n …………C CI I N N((b b)层次式机群)层次式机群模型(如伊利诺模型(如伊利诺伊大学的伊大学的CedarCedar系系统)统) 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture互连网络互连网络 D D CacheCache P P D D CacheCache P P D D CacheCache P P......多处理机的多处理机的COMACOMA模型模型 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitecturePM I/ONI模块模块1 1 消息传送系统消息传送系统MTSMTSPMI/ONI模块模块N N....计算机模块计算机模块(节点机)(节点机)NINI————节节点点机接口机接口 ((2 2)分布存储型(松散耦合的多处理机系统)分布存储型(松散耦合的多处理机系统 ))层次式和层次式和非层次式非层次式两种两种第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture C Cm mn n层次式多机系统层次式多机系统 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architectureü总线结构:总线结构:把所有功能模块(或部件、或计算机)连接到一条公共通信把所有功能模块(或部件、或计算机)连接到一条公共通信通路上,又称为分时或公共总线。
通路上,又称为分时或公共总线机间互连形式机间互连形式...全局存储器全局存储器处理机处理机1 1Cache1本本地地存存储储器器1 1I/O处理机处理机2 2Cache1本本地地存存储储器器2 2I/O处理机处理机N NCache1本本地地存存储储器器p pI/O......第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture采用总线结构的多处理机系统采用总线结构的多处理机系统优点:优点: ((1 1)系统硬件成本最低且最简单,每个处理机的物理)系统硬件成本最低且最简单,每个处理机的物理 接口、寻址、判优和分时逻辑线路与单处理机系统相同接口、寻址、判优和分时逻辑线路与单处理机系统相同 ((2 2)通过增、删功能模块可方便地改变系统硬件配置通过增、删功能模块可方便地改变系统硬件配置缺点:缺点: ((1 1)全部存贮访问都要经过总线,所以全系统的速度)全部存贮访问都要经过总线,所以全系统的速度 受到总线工作周期的限制,带宽窄,可连接的处理机数少。
受到总线工作周期的限制,带宽窄,可连接的处理机数少 ((2 2)系统以增加模块方式进行扩充会降低整个系统的)系统以增加模块方式进行扩充会降低整个系统的 吞吐率;吞吐率; ((3 3)这种互联方式其可靠性差,系统效率较低这种互联方式其可靠性差,系统效率较低第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture常用的仲裁算法常用的仲裁算法Ø静静态态优优先先级级算算法法::为为每每个个连连到到总总线线上上的的处处理理机机((或或计计算算机机模模块块))分分配配一个唯一的固定优先级一个唯一的固定优先级优点:优点:算法简单,易实现算法简单,易实现缺点:缺点:优先级低的处理机将很少有机会使用总线优先级低的处理机将很少有机会使用总线Ø平平等等算算法法::以以轮轮转转方方式式将将总总线线按按固固定定大大小小的的时时间间片片依依次次供供各各处处理理机机使使用,常用于同步总线用,常用于同步总线优点:算法较简单且能保证各处理机有均等机会使用总线优点:算法较简单且能保证各处理机有均等机会使用总线。
缺点:平均等待时间较长缺点:平均等待时间较长第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureØ动动态态优优先先级级算算法法::根根据据总总线线使使用用情情况况和和相相应应规规则则,,能能动动态态地地改改变变连连接接到到总线上的多处理机的优先级总线上的多处理机的优先级优优点点::兼兼顾顾了了前前两两种种算算法法的的优优点点,,即即有有较较短短的的平平均均等等待待时时间间, ,并并可可使使系系统中的各处理机有均等机会使用总线统中的各处理机有均等机会使用总线缺点:控制逻辑较为复杂缺点:控制逻辑较为复杂Ø先来先服务算法:先来先服务算法:不是按优先级选择主控器不是按优先级选择主控器优点:具有最好的均等性,该算法是性能最好的仲裁算法优点:具有最好的均等性,该算法是性能最好的仲裁算法缺点:实现困难该算法的作用只提供一种标准以衡量其他算法好坏缺点:实现困难该算法的作用只提供一种标准以衡量其他算法好坏第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architectureü交叉开关网络交叉开关网络 包含一组纵横开关阵列,把纵向的处理机包含一组纵横开关阵列,把纵向的处理机P P及及I/OI/O通道与横向的存储器通道与横向的存储器模块模块M M连接起来,使每个连接起来,使每个处理器都有处理器都有有它单独可用的通路与存储器模块相连,有它单独可用的通路与存储器模块相连,这样可以加大频带宽度,每个交叉点都有开关、多路控制转换及仲裁部件。
这样可以加大频带宽度,每个交叉点都有开关、多路控制转换及仲裁部件 M1 M2 … Mn…P0P Pp-1p-1I/OI/O0 0I/OI/OD-1D-1…第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture特点:特点:((1 1)) 互连系统最复杂,潜在的总通信速率最高;互连系统最复杂,潜在的总通信速率最高;((2 2)) 控制和切换逻辑在开关内部,所以功能模块最简单且最便宜;控制和切换逻辑在开关内部,所以功能模块最简单且最便宜;((3 3)) 任何功能模块要装配到系统中都需要使用一个基本开关矩阵,所任何功能模块要装配到系统中都需要使用一个基本开关矩阵,所以面向多处理机才会能使性能价格比趋于合理以面向多处理机才会能使性能价格比趋于合理4 4)) 系统扩充会提高整个系统性能,而且不必重写操作系统,有最高系统扩充会提高整个系统性能,而且不必重写操作系统,有最高的系统潜在效率的系统潜在效率5 5)) 从理论上讲,系统扩充只受开关矩阵大小限制,而开关矩阵的设从理论上讲,系统扩充只受开关矩阵大小限制,而开关矩阵的设计和控制可采用模块化方式予以扩展。
计和控制可采用模块化方式予以扩展6 6)) 开关内部采用与开关内部采用与/ /或的冗余方法提高了开关的可靠性,因此,也或的冗余方法提高了开关的可靠性,因此,也就就提高了系统的可靠性提高了系统的可靠性 对于分布存储的松散耦合方式的大规模并行多处理机系统可采用纵对于分布存储的松散耦合方式的大规模并行多处理机系统可采用纵横交叉开关实现互连横交叉开关实现互连第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architectureü多端口存储器互连方式多端口存储器互连方式 每每个个存存贮贮器器模模块块有有多多个个存存取取端端口口,,将将分分布布在在交交叉叉开开关关矩矩阵阵中中的的控控制制,,转转换换和和优优先先级级仲仲裁裁逻逻辑辑分分别别移移到到相相应应存存贮贮器器模模块块的的接接口口中中,,构构成成多多端端口口存存贮器的结构贮器的结构M1p1p2M2M3M4I/OI/O1 1I/OI/O1 1四端口存储器形式的结构四端口存储器形式的结构第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture优点:优点:((1 1)) 比较简单。
比较简单2 2)) 传送速率可以较高传送速率可以较高3 3)) 增增加加安安全全性性,,防防止止无无权权使使用用的的用用户户访访问问,,还还可可以以保保护护存存放放在在存存贮贮器器 中的重要程序不被其它处理机修改破坏中的重要程序不被其它处理机修改破坏 缺点:缺点:比总线结构复杂,在存贮器系统中要增加很多硬件比总线结构复杂,在存贮器系统中要增加很多硬件 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture多级互连网多级互连网 MIMDMIMD和和SIMDSIMD计计算算机机都都使使用用多多级级网网络络每每一一级级都都用用了了多多个个a a××b b开开关关,,相相邻邻各各级级开开关关之之间间都都有有固固定定的的级级间间连连接接为为了了在在输输入入和和输输出出之之间间建建立立所所需的连接,可用动态设置开关的状态来实现需的连接,可用动态设置开关的状态来实现 各种多级网络的区别就在于所用开关模块、控制方式和级间连接各种多级网络的区别就在于所用开关模块、控制方式和级间连接((ISCISC)模式的不同。
最简单的开关模块是)模式的不同最简单的开关模块是2 2××2 2开关前面介绍的有立方开关前面介绍的有立方体多级网,多级混洗交换网等这些交叉开关在处理机时比较复杂,可体多级网,多级混洗交换网等这些交叉开关在处理机时比较复杂,可采用改进的方法,即把多个较小规模交叉开关采用改进的方法,即把多个较小规模交叉开关““串联串联””和和““并联并联””,组,组成多级交叉开关网络成多级交叉开关网络 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture单单处处理理机机::cachecache一一致致性性问问题题只只存存在在于于cachecache与与主主存存之之间间,,即即使使有有I/OI/O通道共享通道共享cachecache亦可通过全写法或回写法较好地加以解决;亦可通过全写法或回写法较好地加以解决;多多处处理理机机::由由于于每每一一个个处处理理机机都都有有一一个个cachecache,,因因此此在在写写操操作作时,必须保证各时,必须保证各cachecache之间的数据一致性之间的数据一致性导致多处理机系统中导致多处理机系统中cachecache内容不一致的因素有三个:内容不一致的因素有三个:((1 1)可写数据的共享。
可写数据的共享2 2)输入输出活动输入输出活动3 3)进程迁移进程迁移二)(二) 多处理机多处理机cachecache一致性一致性第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture解决多处理机解决多处理机CACHECACHE一致性的方法一致性的方法监视监视cachecache协议法(协议法(snoopy cache protocolsnoopy cache protocol))各个处理机中的各个处理机中的cachecache控制器都有一个监听部件,随时都控制器都有一个监听部件,随时都在监视着其它在监视着其它cachecache的行动把数据块作废的办法叫写作废法(把数据块作废的办法叫写作废法(write-invalidatewrite-invalidate),把数据),把数据块更新的办法叫写更新法(块更新的办法叫写更新法(write-updatewrite-update))优点:优点:实现简单;实现简单;缺点:缺点:只适用于总线结构的多处理机系统只适用于总线结构的多处理机系统以硬件为基础:以硬件为基础:第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureCacheP2CacheP3共享存储器共享存储器X:……c--数据数据---CacheP1读读X XCacheP2读读X XCacheP3读读X X共享存储器共享存储器X:……c--数据数据---CacheP1 X:X:数数据据 X: X:数据数据 X: X:数据数据((a a)全幅目录表)全幅目录表 目目录录表表法法(( d di ir re ec ct to or ry y s sc ch he em me e ))共享存储器共享存储器X:数据数据cCacheP1CacheP2CacheP3读读X X X: X:数据数据 X: X:数据数据CacheP1CacheP2CacheP3 X: X:数据数据 X:X:数数据据共享存储器共享存储器X:数据数据c((b b)有限目录表)有限目录表 三种目录表法三种目录表法 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture共享存储器共享存储器X:数据数据cCacheP3Cache X:X:数数据据 P2Cache X:X:数据数据 CTP1P1CacheCacheP2CacheP3 X: X:数据数据共享存储器共享存储器X:数据数据c CT读读X X((c c)链接目录表)链接目录表 第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture特征:特征:Ø靠软件的作用来限制一些公用的可写数据存放到靠软件的作用来限制一些公用的可写数据存放到cachecache中。
中Ø在在编编译译时时,,通通过过编编译译程程序序分分析析,,把把数数据据分分为为能能用用cachecache的的((cacheablecacheable))和和不不能能用用cachecache的的((noncacheablenoncacheable))两两部部分分,,不不能能用用cachecache的的数数据据只只能能存存在在主存中Ø比比较较简简单单,,实实际际是是避避开开了了在在CACHECACHE中中实实现现可可写写数数据据的的共共享享问问题题,,影影响响系系统统性能以软件为基础的办法以软件为基础的办法第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture多处理机操作系统的功能:多处理机操作系统的功能:ü资源分配和管理资源分配和管理ü表格和数据保护表格和数据保护ü防止系统死锁防止系统死锁ü非正常情况下的结束(例外情况处理)非正常情况下的结束(例外情况处理)ü输入输出负载平衡输入输出负载平衡ü处理机负荷平衡处理机负荷平衡ü系统重新组合系统重新组合单处理机也有单处理机也有多处理机特有多处理机特有(三)(三) 多处理机的操作系统多处理机的操作系统第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureØ主从型主从型Master-Slave ConfigurationMaster-Slave Configuration(集中控制或专门控制)(集中控制或专门控制) 主从型其管理程序只在一个指定的处理机(主处理机)上运行。
主从型其管理程序只在一个指定的处理机(主处理机)上运行优点:优点: 1. 1. 硬件结构比较简单;硬件结构比较简单; 2. 2. 简化了管理控制的实现;简化了管理控制的实现; 3. 3. 实现起来简单、经济、方便,是目前大多数多处理机操实现起来简单、经济、方便,是目前大多数多处理机操作系作系统所采用的方式;统所采用的方式;缺点:缺点: 1. 1. 对主处理机的可靠性要求很高;对主处理机的可靠性要求很高; 2. 2. 整个系统显得不够灵活;整个系统显得不够灵活; 3. 3. 如果负荷过重,也会影响整个系统的性能;如果负荷过重,也会影响整个系统的性能;第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureØ各自独立型(各自独立型(Separate SupervisorSeparate Supervisor)) 各自独立型将控制功能分散给多台处理机,共同完成对整个各自独立型将控制功能分散给多台处理机,共同完成对整个系统系统 的控制工作。
的控制工作优点:优点:1. 1. 很适应分布处理的模块化结构特点,减少对大型控制专用处理很适应分布处理的模块化结构特点,减少对大型控制专用处理机的需求;机的需求;2. 2. 有较高的可靠性;有较高的可靠性;3. 3. 每台处理机都有其专用控制表格每台处理机都有其专用控制表格缺点:缺点:1. 1. 实现复杂;实现复杂;2. 2. 某台处理机一旦发生故障,要想恢复和重新执行未完成的工某台处理机一旦发生故障,要想恢复和重新执行未完成的工作较困难;作较困难;3. 3. 使整个系统的输入输出结构变换需要操作员干预;使整个系统的输入输出结构变换需要操作员干预;4. 4. 各台处理机需有局部存储器存放管理程序副本,降低了存储各台处理机需有局部存储器存放管理程序副本,降低了存储器的利用率器的利用率适合于松耦合多处理机系统适合于松耦合多处理机系统第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer ArchitectureØ浮动型方式(浮动型方式(Floating SupervisorFloating Supervisor)) 浮动型操作系统是界于主从型和各自独立型之间的浮动型操作系统是界于主从型和各自独立型之间的一种折衷方式,其管理程序可以在处理机之间浮动。
一种折衷方式,其管理程序可以在处理机之间浮动适合于紧耦合多处理机系统适合于紧耦合多处理机系统第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture机群系统:机群系统:利用高速通用网络将一组高性能工作站或高档利用高速通用网络将一组高性能工作站或高档PCPC机,机,按某种结构连接起来,并在并行程序设计以及可视化人机交互按某种结构连接起来,并在并行程序设计以及可视化人机交互集成开发环境支持下,统一调度,协调处理,实现高效并行处集成开发环境支持下,统一调度,协调处理,实现高效并行处理的系统理的系统 原因:原因: ((1 1))RISCRISC技术的发展;技术的发展; ((2 2)网络技术的进步;)网络技术的进步; ((3 3))并并行行编编程程环环境境的的开开发发使使得得新新编编并并行行程程序序或或改改写写串串行行程序更为容易程序更为容易四)(四) 机群系统机群系统第五章第五章 并行处理机和多处理机并行处理机和多处理机计算机系统结构Computer Architecture机群系统的特点机群系统的特点: :1.1. 系统开发周期短。
系统开发周期短2.2. 用户投资风险小用户投资风险小3.3. 系统价格低系统价格低4.4. 节约系统资源节约系统资源5.5. 系统扩展性好系统扩展性好6.6. 用户编程方便用户编程方便第五章第五章 并行处理机和多处理机并行处理机和多处理机。






![河南新冠肺炎文件-豫建科[2020]63号+豫建科〔2019〕282号](http://img.jinchutou.com/static_www/Images/s.gif)





