上篇 并行程序设计导论
单元 Ⅰ 并行程序设计基础
**章 并行计算机系统与结构模型
1.1 典型并行计算机系统简介
1.1.1 阵列处理机
按照Flynn的分类法,阵列处理机(或称阵列机)属于SIMD(Single Instruction Multiple Data,单指令多数据流机)并行机,其名称反映出它是由多台处理器(即处理单元PE,Processing Element)摆成阵列的拓扑结构,利用资源重复的方法开拓并行性。曲于单一的指令运行在大型规则的数据结构(如数组和矩阵等)上,使阵列处理机也常叫做数据并行结构(Data Parallel Architecture)。下面依次讨论它的基本结构、主要特点以及典型的阵列机Illiac-IV。
1.阵列机的基本结构
阵列机通常由一个控制单元CU(Control Unit)、n个处理单元PE、m个存储模块M和一个互连网络IN(Interconnection Network)组成。CU将单一指令(单指令流)播送至各个PE,而所有活动的PE将从相应的M中取出各自所需的数据元素(多数据流),以同步的方式执行该条指令。在阵列机中,IN常常是实现置换(Permutation)的网络,它用来提供各PE之间或PE与M之间的通信连接。按照存储模块的分布方式不同,阵列机可分为两种基本组态:分布存储的阵列机和共享存储的阵列机,它们分别对应图(a)所示的处理器一处理器组态(也称为闺房式)和图(b)所示的处理器一存储器组态(也称为舞厅式)。在分布存储的阵列机中,只要数据分配得当,各PE将从各自的局存M;中获得所需要的数据;CU中除了存放系统程序和用户程序外,也可以存放各个PE所需共享的数据。不管哪种结构,对于标量型指令,CU中的运算部件可直接执行;对于向量型指令,它就将此指令播送给各个PE同步执行。共享存储的阵列机结构中,PE没有局存,存储模块以集中形式为所有PE共享,当两个需要交换数据的PE之间无共享存储单元时,就需要经过多次传输方可实现交换。
……