• 内容讲解

1.单机系统并行性发展

在发展高性能单处理机过程中,起着主导作用的是时间并行技术。实现时间并行的物质基础是部件功能专用化,即把一件工作按功能分割为若干个相互联系的部分,把每一部分指定给专门的部件完成;然后按时间重叠原理把各部分执行过程在时间上重叠起来,使所有部件依次分工完成一组同样的工作。

指令流水线是由重叠(Overlap)发展而来的。通常,CPU 执行一条指令的过程分为5步:从主存中取指令(IF)、指令译码(ID)、执行指令(EX)、访存取数(M)、写回结果(WB)。CPU在执行其中每一步的时候,其他部分的功能处于闲置状态。如果能够将这些步骤重叠起来,比如在译码分析一条指令的同时将下一条指令取出,就可以提高CPU 的效率。流水线是对重叠的引申,它将CPU 执行一条复杂指令的处理过程分成多个复杂程度相当、处理时间大致相等的子过程,每个子过程由一个独立的功能部件来完成,将这些独立的功能部件按流水线方式连接起来,处理对象在这条流水线上连续流动,满足时间重叠原理。在同一时间里,多个部件同时进行不同的操作,完成对不同子过程的处理,从而使得处理机内部同时处理多条指令,提高了处理机的速度。显然,时间并行技术实现了计算机系统中的指令级并行。

在单处理机中,空间并行技术的运用也已经十分普遍。不论是非流水处理机,还是流水处理机,多体交叉存储器和多操作部件都是空间并行技术成功应用的结构形式。在多操作部件处理机中,通用部件被分解成若干个专用的操作部件,如加法部件、乘法部件、除法部件、逻辑运算部件等,一条指令所需的操作部件只要空闲,就可以开始执行这条指令,这就是指令级并行。

在单处理机中,资源共享概念的实质就是用单处理机模拟多处理机的功能,形成所谓的“虚拟机(Virtual Machine,VM)”的概念。例如在分时系统中,在多终端情况下,每个终端上的用户都感觉自己好像独立拥有一台处理机一样。

2.多机系统并行性发展

多机系统也遵循时间重叠、资源重复、资源共享原理,向三种不同的多处理机方向发展,但在采取的技术措施上与单处理机系统有些差别。

为了反映多机系统各机器之间物理连接的紧密程度及交互能力的强弱,我们引入“耦合度”这个术语。按照耦合度的不同,可将多机系统分为紧耦合系统和松耦合系统两大类。

紧耦合系统又称直接耦合系统,指计算机间物理连接的频带较高,一般通过总线或高速开关实现计算机间的互连,可以共享主存。由于具有较高的信息传输率,因而可以快速并行处理作业或任务。

松耦合系统又称间接耦合系统,一般通过通道或通信线路实现计算机间的互连,可以共享外存设备(磁盘、磁带等),机器之间的相互作用是在文件或数据集一级上进行的。松耦合系统表现为两种形式:一种是多台计算机和共享外存设备连接,不同机器之间实现功能上的分工(功能专用化),机器处理的结果以文件或数据集的形式送到共享外存设备,供其他机器继续处理;另一种是计算机网络,通过通信线路连接,以求得更大范围的资源共享。

多处理机中为了实现时间重叠,将处理机功能分散给各台专用处理机去完成,即功能专用化,各处理机之间则按时间重叠原理工作。例如,输入/输出功能的分离,导致由通道向专用外围处理机发展,许多主要功能(如数组运算、高级语言编译、数据库管理等)也逐渐分离出来,交由专用处理机完成,机器间的耦合程度逐渐加强,从而发展成为异构型多处理机系统。

通过设置多台相同类型的计算机而构成的容错系统,可使系统工作的可靠性在处理机一级得到提高。各种不同的容错多处理机系统方案对计算机间互连网络的要求是不同的,但正确性、可靠性是其首要要求。如果提高对互连网络的要求,使其具有一定的灵活性、可靠性和可重构性,则可将其发展成一种可重构系统。在这种系统中,平时几台计算机都像通常的多处理机系统一样正常工作,一旦发生故障,就使系统重新组织,降低档次继续运行,直到排除故障为止。

随着硬件价格的降低,人们追求的目标是通过多处理机的并行处理来提高整个系统的速度,因此对计算机间互连网络的性能提出了更高的要求。高带宽、低延迟、低开销的机间互连网络,是高效实现任务级并行处理的前提条件。为了使并行处理的任务能够在处理机间随机地进行调度,就必须使各处理机具有同等的功能,从而成为同构型多处理机系统。