在并行计算机的分类方法中,Flynn分类法(Flynn’s Taxonomy)应用较为广泛。
Flynn分类按两个独立的维度进行区分:指令流(Instruction Stream)和数据流(Data Stream)。
既然Flynn分类法是按两个独立的维度进行划分,两两组合,可以得到4钟类型。
类型 | 特点 | 典型 |
---|---|---|
SISD | 传统串行计算机,一个时钟周期仅处理一条指令和一条数据 | 早期的大型机 / 微型机 / 单核 PC |
SIMD | 所有处理器单时钟一条指令处理多条数据 | 矩阵处理器 / 向量流水线 |
MISD | 多个处理单元各自独立使用指令处理一条数据 | 实时容错计算机 / 单一信号多频滤波器 |
MIMD | 每个处理器执行各自的指令和各自的数据 | 超级计算机 / 集群服务器 /多核计算机 |
Flynn的分类依据是指令流和数据流,其特点就是:
例如:
串行计算机单个处理器 + 单条指令 + 单条数据 = SISD
现代计算机多个处理器 + 独立指令(或单条指令) + 独立数据 = MIMD (或SIMD)
超级计算机多个处理器 + 独立指令 + 独立数据 = MIMD
值得注意的是,现代处理器的架构设计越来越复杂,并不一定只属于一类。