Flynn分类法与Schwartz的并行机类别

Michael J. Flynn是美国斯坦福大学的计算机教授,1972年他提出了著名的费林分类法(Flynn's taxonomy,或Flynn’s classifications)。Flynn's taxonomy是一种经典的计算机体系结构分类方式。Flynn根据指令流、数据流的多倍性特征把计算机系统(或体系结构)分成了四类:

  • SISD : single instruction single data,
  • SIMD : single instruction multiple data,
  • MISD : multiple instruction single data,
  • MIMD : multiple instruction multiple data。

这其实也为并行计算的模型提供了四种实现方式(当前其中SISD其实就是串行的)。下图给出了SISD的抽象示意图,其中PE是precessing element,M表示Memory:


对于涉及大量并行数据的应用而言,SIMD架构的机器无疑是性价比最高的选择。在这种机器上,单个的control unit会将 instructions 向多个 processing elements 并行地进行广播,其中每个PE都是拥有本地存储器的一个功能单元集合。下图是SIMD的抽象示意图:


现在市场上的多处理系统更多属于MIMD架构的,它比SIMD更进一步。一些标准的处理器和存储芯片通过高速总线在内部进行连接(memory通常是交织的)。下图是MIMD的抽象示意图:


美国计算机科学家、纽约大学教授Jacob T. Schwartz定义了两种大致的方法来组织处理器和内存,即Paracomputers和Ultracomputers。Paracomputers将memory从处理中分离出来。Memory是共享的,处理器之间通过共享的memory来进行通讯。在Paracomputers中,如果我们认为每一个内存地址都可以被每一个处理器均等地访问,那么就可以据此认为PRAM模块以这种方式来被Paracomputers近似地模拟。另一方面,Ultracomputers将memory分配给若干个处理器,这样就形成了众多modules,一个处理器可以用恒定时间来访问它的module上的memory,但是访问远程的module上的memory则要耗费更长时间。


在更多的资料中,我们常常用另外两个术语来替代Paracomputers和Ultracomputers,即多处理器共享内存(multiprocessor shared memory)和多计算机分布内存(multicomputer distributed memory),如下图所示:


在共享内存系统中,处理器通过对全局皆知的内存地址(globally known memory address)进行读写来实现通信。硬件实现上会确保所有处理器对内存都有用相同的访问方式(即使用单一地址空间)。因此,这也被称为是对称多处理器机“symmetric multiprocessor (SMP) machine”。而在分布内存系统中,处理器之间通过发送消息的方式来进行通信。此时硬件将仅负责消息的传递。也不再有单一地址空间。所以这也被称为是消息传送机器(message passing machine)。一个分布共享内存 (DSM) 系统拥有一个分布式的内存但是是一个单一的地址空间。 通常在SMP机器上编程要比再 message passing machine上编程容易很多。然而,message passing machine可以用更低的代价来进行扩容。


(本文完)

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 24
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

白马负金羁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值