并行性是指计算机系统具有可以同时进行运算或操作的特性,它包括
同时性与
并发性两种含义,时间重叠、资源共享两种技术途径。
并行性
分类
⑴从处理数据的角度看,并行性等级从低到高可分为四类。
字串位串
同时只对一个字的一位进行处理。这是最基本的串行处理方式,不存在并行性。
字串位并
同时对一个字的全部位进行处理,不同字之间是串行的。这里已开始出现并行性。
字并位串
同时对许多字的同一位进行处理。这种方式有较高的并行性。
全并行
同时对许多字的全部位进行处理。这是最高一级的并行。
⑵从执行程序的角度看,并行性等级从低到高也可分为四类。
指令内部并行
一条指令执行时各微操作之间的并行。
指令级并行
并行执行两条或多条指令。
任务级或过程级并行
并行执行两个以上过程或任务(程序段)。
作业或程序级并行
并行执行两个以上作业或程序。
技术途径
时间重叠
时间重叠即时间并行。在并行性概念中引入时间因素,即多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的各个部分,以加快硬件周转时间而赢得速度。
资源重复
资源重复即空间并行。在并行性概念中引入空间因素,以数量取胜的原则,通过重复设置硬件资源,大幅度提高计算机系统的性能,随着硬件价格的降低,这种方式在单处理机中广泛使用,而多处理机本身就是实施“资源重复”原理的结果。
时间重叠+资源重复
在计算机系统中同时运用时间并行和空间并行技术,这种方式在计算机系统中得到广泛使用,成为并行性主流技术。
资源共享
这是一种软件方法。它使多个任务按一定时间顺序轮流使用同一套硬件设备。例如多道程序、分时系统就是遵循“资源共享”原理而产生的。资源共享既降低了成本,又提高了计算机设备的利用率。
指令
并行计算机的分类及基本结构(采用扩展的Flynn分类):
SM--Vector Pipelined 向量流水计算机
DM--Processor Array SIMD阵列机
SM--
SMP(UMA) 对称式
多处理机 UMA Uniform-memory-access
VSM--cc-NUMA NonUniform-memory-access
DM
BeoWulf
SMP cluster
其中,MIMD中的又分两类
(1).
共享存储型:具有统一的
地址空间,任何一个处理器都可以直接访问到
存储空间中的第一个存储单元.
UMA
物理存储器被所有
处理机均匀共享,所有处理机对所有
存储字具有相同的
存取时间.
cc-NUMA 访问时间随
存储字的位置不同而变化.
COMA 只用高速缓存的
多处理机远程高速缓存访问则借助于分布高速缓存目录进行.
(2).分布式存储型:不具有统一的
地址空间,每个处理器只能访问部分存储资源.