计算机体系结构-第7章 多处理机

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第7章 多处理机
80386CPU Weitek1167FPU
···
80386CPU Weitek1167FPU
MEM
MEM
···
第7章 多处理机
7.1.2 多处理机的硬件结构 多处理机在系统结构上可分为两类:紧耦合多处
理机和松耦合多处理机。 1. 紧耦合(tightly coupled)多处理机 紧耦合多处理机是通过共享主存来实现处理机间
的通信的。各处理机与主存之间通过一个互连网络连 接。在这种系统中,处理机间的数据通信速率将受限 于主存的带宽,而处理机的数目受限于处理机-主存互 连网络带宽以及多台处理机同时访问主存所引起的冲 突概率。
第7章 多处理机
(5)合理地进行资源分配和任务调度。 在MIMD多处理机中,由于任务的大小不相同, 各处理机的速度也可能不相同(如异构型多处理机系统), 互连网络的拓扑结构和通信延迟在不同的多处理机中 也有很大的差别,在执行并发任务时,并不是使用的 处理机个数越多,系统获得的性能就越高。因此需要 采用软件手段,合理地进行资源分配和任务调度,否 则系统性能将受较大影响。而在SIMD并行处理机中, 程序员只需用屏蔽的手段来设置部分处理单元为不活 跃状态,来控制实际参加并行操作的处理单元数目。
第7章 多处理机
紧耦合多处理机的典型结构如图7.1所示。系统由 m个共享存储器模块,p台处理机和d个I/O通道组成, 每台处理机可以拥有一个Cache存储器或一个小容量的 本地存储器。用三个互连网络PPIN(处理机-处理机)、 PMIN(处理机-主存)和PIOIN(处理机-I/O通道)将所有的 处理机、共享存储器模块,以及I/O通道连接起来。
另外,它能灵活地开发数据并行性和功能并行性,而SIMD并 行处理机只能开发数组和向量中存在的数据并行性,因此其通用 性较差。
第7章 多处理机
(2)主要开发高层次作业及任务级并行性。对于高 层次的并行性开发,通常是通过算法和程序设计语言 来描述程序中的显式并行性,或通过编译器、操作系 统和硬件来开发程序中存在的隐式并行性。而SIMD并 行处理机则主要是开发低层次,即操作一级的并行性。
第7章 多处理机
紧耦合多处理机按所用处理机类型是否相同可分为同构型和异 构型多处理机。
(1)同构对称式多处理机 Sequent公司生产的Balance多处理机就是同构对称式的,
它的结构如图7.4所示。处理机数为2~32个,共享存储器模 块数为1~6个。其中,每台处理机由80386微处理器和浮点 运算器Weitek11Fra Baidu bibliotek7FPU组成,并带有64KB的Cache。存储器 由8MB(可扩充到48MB)的存储器模块和一个存储控制器 组成。各处理机和存储器模块均与系统总线相连,系统总线 还通过总线适配器与Ethernet局域网、SCSI相连,或通过磁 盘控制器与磁盘相连。此外,系统总线还可借助总线适配器 和Multibus与远程网相连。
紧耦合多处理机按所用处理机类型是否相同可分 为同构型和异构型多处理机。
第7章 多处理机
PPIN
LMP
PP
· · ·
I/O 通道 D1
·
PIOIN
·
·
LM1
P1
Dd
CM1
··· CMP
PMIN
SM1
SMm
LM:本地存储器 CM:Cache 存储器 SM:共享存储器 P:处理机 D:外部设备
图7.1 紧耦合多处理机系统的典型结构
第7章 多处理机
(4)并发执行的进程间的同步需要采取特殊措施,以保持程序 所要求的正确顺序。
由于MIMD多处理机实现的是作业、任务和程序级的并行性, 一般来说,各处理机在同一时刻执行的是不同的指令。并行任务 派生后,由于空闲处理机的限制使得所有的新任务不一定能同时 投入运行,又加上各并发进程之间可能存在数据相关、控制相关 等,为保持程序所要求的正确顺序,必须采取特殊的措施来实现 并发进程间的同步。如采用数据同步(信号量、锁、生产者-消费 者)、控制同步(路障、临界区)等。而在SIMD并行处理机中,由于 所有的处理单元在同一控制器控制下,同时执行同一条指令的功 能,工作是自然同步的。
第7章 多处理机
第7章 多处理机
7.1 多处理机结构 7.2 多处理机的Cache一致性 7.3 程序的划分和调度 7.4 多处理机性能模型 7.5 并行机的发展趋势 习题7
第7章 多处理机
7.1 多处理机结构
多处理机属于MIMD系统,它与第5章介绍的SIMD并 行处理机有很大的差别,所有的差别归根结底来源于两者 开发的并行性等级不同。多处理机实现的是作业、任务之 间的并行,粒度组合主要为粗粒度和中粒度。
第7章 多处理机
(3)并行任务派生需要用显式的专用指令来表示。 在MIMD多处理机中,一个程序当中就存在多个并发 的程序段,需要专用的指令来表示它们的并发关系以 控制它们的并发执行,以便一个任务开始被执行时就 能派生出可与它并行执行的另一些任务。这个过程称 为并行任务派生。
派生出的新任务被分配到其它处理机上去并行执 行,若处理机的数量不够,那些暂时不能分配到空闲 处理机的任务就进入排队器,等待即将释放的处理机。 在SIMD并行处理机中,并行操作由单独指令表示和控 制,故不需要设置专用的指令。
因此,在结构上,多处理机中的每个结点都应该是一 台能独立执行指令的处理机,而不只是一个简单的处理单 元,各处理机之间通过总线或互连网络实现通信;
第7章 多处理机
在算法上,不再限于数组和向量中的数据并行性, 还要挖掘和实现更多通用算法中隐含的并行性;
在系统管理上,要更多地依靠软件手段有效解决 资源管理,特别是粒度的组合与调度、多处理机调度、 进程的同步和通信等,这些内容将在后面的章节中详 细介绍。
第7章 多处理机
7.1.1 多处理机的特点 MIMD多处理机的主要特点都是相对于SIMD并行处理机而言
的,主要表现在以下几个方面: (1)具有更大的灵活性和更强的通用性。 由于在MIMD多处理机中各结点是一台独立的处理机,可以
与其它处理机共享主存储器或采用分布式存储器,因而在不同的 处理机上可并行执行不同的作业、任务或程序段,所以MIMD多 处理机适宜于求解通用算法。
相关文档
最新文档