并行分布式计算 并行计算机体系结构

并行分布式计算 并行计算机体系结构

冯诺依曼体系存在的问题:运算器和存储器分离,导致运算器速度提升比存储器快得多,即“存储器墙”问题。

并行计算机结构模型

SIMD 单指令多数据流

CUDA 就是 SIMD 的形式,图形学中很多计算都是相同的计算形式、不同的数据流。

游戏图形计算中往往只需要单精度 SIMD,因为只需要算到屏幕中的某个像素的坐标(整数)。

PVP 并行向量处理机

定制高性能向量处理机,经由高带宽的交叉开关网络,连接共享存储器。

问题:交叉开关的成本高,适用于定制化的场景。

请添加图片描述

  • VP:向量处理机,vector processor
  • SM:共享存储器,shared memory

SMP 对称多处理机

商用处理器,经由高速总线(或交叉开关网络),连接共享存储器。

系统是对称的,每个处理器可以等同地访问共享存储器、IO 设备。(不同于 USMP 非对称处理机,只有部分处理器能够执行操作系统并能操作 I/O)

问题:共享存储器导致 P/C 之间的通信成本较高。

请添加图片描述

MPP 大规模并行处理机

处理节点为商用处理器,物理上的分布式存储器,专门设计和定制的高通信带宽低延迟网络。

扩展性好,能扩展到成千上万个处理器。

特点:异步 MIMD,多个进程,突破了共享内存的模式,每个处理器具有私有地址空间,所以进程间采用消息传递机制协同。

问题:改变了编程方式,一台机器上编程只能看到自己的地址空间,访问其他核和 LM 需要时钟同步。

请添加图片描述

  • LM:本地存储器,Local Memory

  • NIC:网卡,Network Interface Card

DSM 分布式共享存储多处理机

使用高速缓存目录(DIR)支持分布高速缓存一致性。

采用分布式共享存储器(逻辑上共享,由 DIR 实现),系统硬件和软件提供单一地址的编程空间。

特点:DIR 是一种硬件协议,使用 DIR 可以解决 MPP 中地址空间分隔的问题。

问题:DIR 是一种标准的协议,无法对具体的算法提供特殊优化点。

请添加图片描述

COW 工作站集群

每个节点是完整“无头工作站”(没有显示器、鼠标、键盘等),通过低成本商品网络互连。

每个节点有本地磁盘(MPP没有本地磁盘,只有本地内存),网络层耦合到 I/O 总线(MPP则是将网络层耦合到存储总线),每个节点驻留完整操作系统(MPP 的每个节点是微核)

特点:可以看作是低成本 MPP;

问题:标准以太网较慢,需要想办法降低网络负载,增加了开发难度;

请添加图片描述

总结

请添加图片描述

并行计算机系统
SIMD
MIMD
PVP
SMP
MPP
DSM
COW

并行计算机访存模型

UMA 均匀存储访问模型

特点:例如 SMP、PVP

  • 物理存储器被所有处理器均匀共享;
  • 所有处理器访问任何存储字是相同的时间;
  • 每台处理器可以带有私有高速缓存;
  • 外围设备 I/O 也可以以一定形式共享;

问题:处理器数量受限,否则交叉开关网络会变得很复杂

请添加图片描述

NUMA 非均匀存储访问模型

特点

  • 被共享的存储器在物理上是分布在所有的处理器中的,所有本地存储器的集合就组成的全局地址空间;
  • 处理器访问不同存储器的时间是不一样的,访问本地存储器 LM 或群内贡献存储器 CSM 较快,而访问外地的存储器或者全局共享存储器 GSM 较慢;
  • 每台处理器可带有私有高速缓存,外设也可以以某种形式共享。
  • 处理器数量相对于 UMA 来说可以扩展到更多,更常用;

问题:Cache 的同步协议复杂,会浪费带宽。

请添加图片描述

COMA 全高速缓存存储

Cache Only Memory Access

特点

  • 各处理器节点中没有存储器层次结构,而是由全部高速缓存组成了全局地址空间;

  • 利用分布的高速缓存目录 D 进行远程的高速缓存的访问

  • COMA 中的高速缓存容量一般都大于 2 级高速缓存容量;

  • 使用 COMA 时,数据开始时可以任意分布,因为在运行时它们最终会被迁移到要用到它们的地方

Tip:DIR 协议中就体现了 Cache

请添加图片描述

CC NUMA 高速缓存一致性非均匀存储访问

Coherent-Cache Nonuniform Memory

特点

  • 大多数使用基于目录的高速缓存一致性协议;
  • 保留 SMP 结构易于编程的特点,也改善了常规 SMP 对于处理器的可扩放性;
  • CC NUMA 实际上是一个分布共享存储的 DSM 多处理机系统
  • 最显著的优点是共享存储,程序员无需明确地在节点上分配数据,系统的 硬件和软件开始时自动在个节点分配数据。在运行期,高速缓存一致性硬件会自动地将数据迁移至要用到它的地方。

请添加图片描述

NORMA 非远程存储访问

特点:例如 MMP、COW

  • 所有存储器是私有的,仅能尤其处理器访问
  • 绝大多数 NORMA 都不支持远程存储器的访问
  • 最常用,对于计算特点明显的任务,可以对每个单独的处理器和存储器进行硬件选择和特殊优化,扩展性好

问题:编程难度高

请添加图片描述

总结

请添加图片描述

并行计算机存储组织

层次存储结构

跟之前计组学的差不多。

注意:一台机器内的存储一定要是同步的。

请添加图片描述请添加图片描述

高速缓存一致性

高速缓存策略有:

  • 写直达(WT):在某一层的存储器修改了一个字,下一层的存储器需要立即修改;尽最大可能保证一致性,但是慢;
  • 写回(WB):下一层存储器的修改延迟到上一层中修改的字被替换或者消除后才进行;节省带宽,速度快,但是容易发生共享可读写数据不一致的情况;

监听总线协议

监听协议:如果总线业务破坏了本地高速缓存中数据的一致性状态,那么高速缓存中的控制器就应采取相应的动作使本地的副本无效,采用此机制保证高速缓存一致性协议的协议称为监听协议。(想一下 SIS 里学的 MESI)

  • 写无效(WI):某一处高速缓存发生修改,通过总线是其他高速缓存无效;延迟高,总线不繁忙;
  • 写更新(WU):某一处高速缓存发生修改,通过总线广播新的数据给其他高速缓存;数据总是同步,总线繁忙;

请添加图片描述

基于目录的协议

使用一个目录来记录共享数据的所有高速缓存行的位置和状态,读取缓存就不需要经过 CPU 了,而是直接通过 DIR。

请添加图片描述

C 2 C_2 C2 读缺失时:

  • C 2 C_2 C2 产生一个请求给 D 1 D_1 D1
  • D 1 D_1 D1 指示在 C 1 C_1 C1 中有 C l e a n Clean Clean 副本;
  • 控制器将请求传递给 C 1 C_1 C1
  • C 1 C_1 C1 将内容传递给 M 1 M_1 M1 C 2 C_2 C2

C 1 C_1 C1 写命中时:

  • 控制器发送无效命令给 D 1 D_1 D1 中有标记的所有高速缓存。
并行计算是90年代计算技术的一个重要组成部分,它在未来20年的影响可能与微处理器在过去20年的影响一样大。 事实上,随着高度集成的微处理器和内存芯片的发展,使得多处理器系统越来越具有吸引力,这两种技术紧密相连。 从速度最快的超级计算机,到部门计算服务器,再到个人桌面,多处理器已经代表了计算市场几乎每个部分的高性能终端。 在过去,计算机供应商采用一系列技术来提高整个产品线的性能。 今天,同样最先进的微处理器被广泛使用。 要获得显著的性能范围,最简单的方法是增加处理器的数量,而规模经济使这一点极具吸引力。 很快,几个处理器就可以装在一个芯片上。 4 草稿:并行计算机架构8/29/97 虽然并行计算有着悠久而丰富的学术历史,但是与商品技术的紧密结合从根本上改变了这门学科。 对基本架构和外来技术的强调已经让位于定量分析和仔细的工程权衡。 我们写这本书的目的是使新兴的多处理器系统的设计者,从适度并行的个人计算机到大规模并行的超级计算机,了解基本的架构问题和处理设计权衡的可用技术。 同时,我们希望为这些机器的软件系统设计人员提供对体系结构发展的可能方向的理解,以及确定硬件设计将遵循的特定路径的力量。 并行计算机体系结构中最近最令人兴奋的开发是传统上完全不同的方法(即共享内存、消息传递、SIMD和数据流)在一个公共机器结构上的聚合。 这部分是由于共同的技术和经济力量,部分是由于更好地理解并行软件。 这种聚合使我们能够专注于最重要的体系结构问题,并开发一个通用框架,在其中理解和评估体系结构的权衡。 此外,并行软件已经成熟到流行的并行编程模型可以在广泛的机器上使用,并且存在有意义的基准测试。 这一领域的成熟使得对硬件/软件交互进行定量和定性研究成为可能。 事实上,它需要这样一种方法。 本书遵循了一系列对所有并行架构都至关重要的问题——通信延迟、通信带宽以及跨整个现代设计的协作工作的协调。 它描述了用于解决每个问题的硬件和软件中可用的一组技术,并探讨了各种技术如何交互。 案例研究提供了一般原则的具体说明,并说明了机制之间的具体相互作用。 我们的最终动机来自于目前我们在斯坦福、伯克利和普林斯顿的课程缺乏足够的课本。 现有的很多教材对材料的涉及面都比较粗略,只是对各种建筑和研究成果进行了总结,并没有对其进行深入的分析。 另一些人专注于特定的项目,但没有认识到可用于替代方法的原则。 该领域的研究报告提供了大量的经验数据,但还没有提炼成一个连贯的画面。 我们希望通过集中注意技术融合背景下的突出问题,而不是使我们走到这一点的丰富和多样的历史,对该领域提供更深刻和更连贯的了解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Air浩瀚

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

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

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

打赏作者

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

抵扣说明:

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

余额充值