1966年,MichealFlynn根据指令和数据流的概念对计算机的体系结构进行了分类,这就是所谓的Flynn分类法。Flynn将计算机划分为四种基本类型,即SISD、MIMD、SIMD、MISD。

  传统的顺序执行的计算机在同一时刻只能执行一条指令(即只有一个控制流)、处理一个数据(即只有一个数据流),因此被称为单指令流单数据流计算机Single Instruction Single Data即SISD计算机)。而对于大多数并行计算机而言,多个处理单元都是根据不同的控制流程执行不同的操作,处理不同的数据,因此,它们被称作是多指令流多数据流计算机,即MIMD(Multiple Instruction Multiple Data)计算机。


  曾经在很长一段时间内成为超级并行计算机主流的向量计算机除了标量处理单元之外,最重要的是具有能进行向量计算的硬件单元。在执行向量操作时,一条指令可以同时对多个数据(组成一个向量)进行运算,这就是单指令流多数据流(Single Instruction Multiple Data,SIMD)的概念。因此,我们将向量计算机称为SIMD计算机。


  第四种类型即所谓的多指令流单数据(MultipleInstructionSingleData)计算机。在这种计算机中,各个处理单元组成一个线性阵列,分别执行不同的指令流,而同一个数据流则顺次通过这个阵列中的各个处理单元。这种系统结构只适用于某些特定的算法。


  相对而言,SIMD和MISD模型更适合于专用计算。在商用并行计算机中,MIMD模型最为通用,SIMD次之,而MISD最少用。


多处理机.并行处理机.流水线处理机


1. 关于“并行处理”应理解:    a. 目的:节省大型和复杂问题的解决时间。    b. 特征:处理机可同时工作于同一程序的不同方面。-->为使用并行处理,首先需要:(见c)    c. 前提条件:对程序进行并行化处理,即讲工作各部分分配到不同的处理机中。    d. 注意:并行是一个相互依靠性问题,不能自动实现。故并行不能保证加速。但:(见e)    e. 优势:一个在n个处理机上执行的程序,其速度可能会是在单一处理机上执行的速度的n倍。 2. 阵列处理机与多处理机对比: 阵列处理机(并行处理机): 单个控制部件(CU),多个处理单元(PU);共享主存(可分为多个)和所有外部设备;单指令流多数据流计算机(SIMD)。实现操作级的并行,并行性存在于指令内部。 多处理机:多个控制部件,多台处理机(每台处理机有属于自己的控制部件);共享一个主存和所有外部设备;多指令流多数据流计算机(MIMD)。实现作业,任务级的并行。并行性还存在于指令外部。 3. 阵列处理机与采用流水结构的单机系统对比: 阵列处理机: 单指令流多数据流; 采用资源重复技术。 采用流水结构的单机系统: 单指令流多数据流; 采用时间重复技术。 4. 多处理机: 多处理机系统由多个独立的处理机组成,每个处理机都能够独立处理自己的程序。 按其构成的分类:    异构型(非对称型):由多个不同类型或可完成不同功能的处理机组成;    同构型(对称型): 由多个同类型或可完成同等功能的处理机组成;    分布式处理机系统: 由多个具有独立功能的处理机相互连接起来。 按机间的互联结构,分为四种多处理机结构:    总线式结构: 又分为:单总线, 多总线, 分级式总线, 环式总线等多种。    交叉开关结构: 设置一组纵横开关阵列,把横向的处理机P及I/O通道与纵向的存储器M连接起来。    多端口存储器结构: 将多个多端口存储器的对应端口连在一起,并且每一个端口连接一个处理机P或一个I/O通道控制器I/OC。    开关枢纽式结构: 有多个输入端和多个输出端,在他们之间切换,使输入端有选择地与输出端相连。一个仲裁单元(可分解冲突的部件)与一个开关单元(可在一个输入端和多个输出端之间切换)构成一个基本的开关枢纽。 5. 阵列(并行)处理机: 两种典型结构:    具有分布存储器的并行处理机结构: 有两类存储器:一类附属于主处理机,其内常驻操作系统;另一类为局部存储器,分布在各个处理单元,用来保存程序和数据。    具有共享存储器的并行处理机结构: 将若干个共享存储器通过互联网络ICN为整个并行系统的所有处理单元共享。



2009-05-11