本章重点:多处理机的特点,程序并行性,并行任务的派生与汇合。
本章难点:并行算法的研究,程序中并行任务的派生和汇合。
第一节多处理机的概念、问题和硬件结构
一、多处理机的基本概念和要解决的技术问题
1.多处理机的基本概念
多处理机是指两台以上的处理机,共享I/O系统,机间经共享主存或高速通信网络通信,在统一操作系统控制下,协同求解大而复杂的问题的计算机系统。
2.多处理机的目标
对多个作业、多个任务并行执行来提高解题速度,从而提高整体性能。
使用冗余的多个处理机通过重新组织来提高系统的可靠性、适应性和可用性。
3.多处理机的特点
- 结构灵活性;
- 进程并行性;
- 并行任务派生;
- 进程同步;
- 资源分配和任务调度;
4.需要解决的主要问题
- - 硬件结构上如何处理好处理机、存贮器模块及I/O子系统之间的互连;
- - 如何最大限度地开发系统的并行性,以实现多处理机各级的全面并行;
- - 如何选择分割任务和子任务的大小,即任务的粒度大小,使并行度最高,而辅助开销小;
- - 如何协调好多处理机中各并行执行的任务和进程间的同步问题;
- - 如何将各个任务分配到一个或多个处理机上,解决好处理机调度、任务调度和资源分配问题,防止死锁;
- - 一旦一个处理机发生故障,如何对系统进行重新组织而不使其瘫痪。
Hadoop-软件解决所有问题(问题是常态,可以低成本但多个机器进行)
技术问题:多处理机结构、机间互连、并行算法、并行语言、编译支持、操作系统支持。
二、多处理机的硬件结构
1、紧耦合和松耦合
(1)紧耦合多处理机
紧耦合多处理机是通过共享主存来实现处理机间通信的,其通信速率受限于主存的频宽。但是,由于各处理机与主存经互连网络连接,系统中处理机数就受限于互连网络带宽及多台处理机同时访问主存发生冲突的概率。