第5章多指令流多数据流计算机-精选文档
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
高速缓存一致性
多级高速缓存支持数据局部性,而且用硬件自动实现 高速缓存一致性 处理器之间的通信采取对共享存储单元使用简单的读/ 写指令来完成
低通信延迟
直接支持共享地址空间编程模型 在大多数SMP机器上实现了消息传递编程模型, 将共享地址空间的一部分空间指派给每个进程, 同时显式地给每个进程指定消息缓冲区,通过在 消息缓冲区之间复制数据来实现数据的发送与接 收
…
I/O SM1 SMm
物理存储器被所有处理器均匀共享 每个处理器可带有私有高速缓存 外围设备以一定的形式被共享 由于高度共享资源而称为紧耦合系统
非均匀存储访问模型(NUMA)
LM1
P1 P2 …
LM2
互 连 网 络
…
LMn
Pn
被共享的存储器在物理上分布在所有的处理器中, 所有本地存储器的集合组成全局地址空间 处理器访问存储器所需的时间不相等 每个处理器可带有私有高速缓存,外设也可以以 某种形式共享
写通过
P1
P2 X
X’
X
写回
进程迁移引起的不一致
处理机 高速缓冲 存储器 共享 存储器
P1 X
P2
P1 X’
P2 X
X
更新之前
X
写回
处理机 高速缓冲 存储器 共享 存储器
P1 X
P2 X
P1 X
P2 X’
X
更新之前
X’
写通过
I/O传输引起的不一致
处理机
P1 X
P2
P1
P2 X
高速缓冲 存储器
侦听协议的策略
写直达策略与写回策略 是用于维护本地Cache中的块与相应内存块 拷贝一致性的两种策略
写直达 无论对本地Cache是否写命中,都要同时对内存 中的相应块进行改写 使内存块与Cache的内容随时保持一致 增大了写操作的平均延时
写回策略 当处理器执行写操作时,若对本地Cache写命中, 则无需对内存中的相应块进行改写,直至Cache 的块被替换时,才用该块去更新内存中的相应块 在第一次写命中后至被替换前的这一段时间内, Cache中的块与内存中的相应块的内容不一致 更新内存的次数较少,写操作平均时延较小
SMP的扩展存储层次结构
共享Cache的SMP结构
P1
…
互连网络
Pn
一级高速缓存(交叉编址)
主存(交叉编址)
高速缓存和主存系统都可以采用交叉编址的并行 访问方式工作 当多个对称处理器同时存取共享Cache时,对 Cache的带宽要求很高 对Cache存取数据必须通过处理器与Cache之间 的互连网络,从而增大了对Cache的存取时间 可扩放性差
在侦听一致性协议的实现中,需要保证实 现:
与内存操作有关的所有的必要事务都应出现在总 线上 高速缓存控制器能采取适当的措施来处理有关的 事务
在侦听高速缓存一致性协议中,每个高速 缓存控制器都接收来自两方面的输入:
处理器发出的访存要求 总线侦听器侦听到的总线上的事务
侦听协议由以下三部分组成:
COW的结点的网络接口NIC是松耦合到结点的I/O 总线上,而MPP的结点的NIC时紧耦合到结点的存 储总线(MB)上
COW的每个结点驻留有一个完整的操作系统,而 MPP的每个结点中通常只驻留操作系统的微核
MIMD计算机访存模型
均匀存储访问模型(UMA)
P1 P2
…
Pn
系统互连 (总线,交叉开关,多级网络)
X
X
X
存储器 I/O
X’
存储器
X’
I/O
写通过
处理机
P1 X
P2
P1
P2 X
高速缓冲 存储器
X
X’
X
存储器 I/O
X
存储器
X
I/O
写回
侦听高速缓存一致性协议
侦听一致性协议利用总线的以下特点实现 一致性:
总线上的所有事务对所有的高速缓存控制器都是 可见的 总线上的所有事务以相同的次序被所有的高速缓 存控制器可见
多指令流多数据流计算机
MIMD计算机结构模型
并行向量处理机
VP VP
…
VP
交叉开关网络
SM
SM
…
SM
Cray C-90、Cray T-90、NEC SX4和我国的银河1号
对称多处理机系统
P/C P/C
…
P/C
总线或交叉开关 SM SM
…
I/O
IBM R50、SGI Power Challenge、DEC Alpha服务器 8400和我国的曙光1号
GSM
GSM
…
GSM
全局互连网络(GIN)
P P … P 群1 CIN
CSM CSM
…
P
CSM
CIN
…
P … P
CSM
…
CSM
CSM
群N
全高速缓存存储访问模型 (COMA Cache-Only Memory Access)
互连网络
D
C P
D
C P
D
…
C P
各处理器结点中没有存储层次结构,全部 高速缓存组成全局地址空间 利用分布的高速缓存目录D对远程高速缓 存进行访问 COMA中的高速缓存容量一般都大于二级 高速缓存容量 开始使用COMA时,数据可以任意分配到 高速缓存C中,在运行过程中,数据将被 迁移到使用该数据的处理器结点的高速缓 存中
对称性,即每个处理器可以等同地访问共享存储器、 I/O设备和操作系统服务 由于对称,才能开拓较高的并行度
由于共享存储,限制了系统中的处理器不能太多 用于互连的总线或交叉开关也难以扩展
大规模并行处理机系统
MB
P/C LM
MB
P/C
…
LM
NIC
NIC
定制网络
Intel Paragon、IBM SP2、Intel TFLOPS和我国的曙光-1000等
…
DIR
NIC
DIR
NIC
定制网络
Stanford DASH、Cray T3D和SGI Origin 2000
高速缓存目录DIR用于支持分布式高速缓存的一
致性
DSM的共享存储器是由物理的分布在各处理结点
中的本地存储器LM组成 通过系统硬件和软件为用户提供一个单地址的编 程空间
工作站机群
BusRdX/ Flush
E
PrRd/—
PrRd/BusRd(S)
I
BusRdX/Flush
PrRd/—
PrWr/—
M
BusRd/ Flush
PrWr/ BusRdX
PrWr/ BusRdX
S
PrRd/— BusRd/— PrRd/BusRd BusRdX /—
BusRdX/ Flush
I
四态写回无效协议
协议状态集
互斥干净状态(E) 表示只在一个Cache中有这个内存拷贝,而且该块 内容没有被修改过,内存中的相应块也是最新的
处理结点采用商品微处理器
系统中有物理分布的存储器
采用高通信带宽和低延迟的互连网络
系统的处理结点可以扩放到成百上千个处理器 它是一种异步的MIMD机器,程序由多个进程组成, 每个进程都有其私有地址空间,进程之间采用消息 传递相互作用。
分布式共享存储系统
MB P/C LM MB P/C LM
写无效策略与写更新策略
用于维护本地Cache中的块与其他Cache中 的块拷贝一致性的两种策略 写无效策略
当本地Cache中的块被改写后,使其他Cache中 与该块内容相同的块拷贝都无效
当本地Cache中的块被改写后,通过总线把改写 后的块广播到含有该块的其他Cache来更新相应 的块拷贝
对称多处理机系统
对称多处理机的结构
P/C P/C … P/C
总线或交叉开关 SM SM … I/O
SMP结构的特点
对称性
系统中任何处理器都可以访问共享存储器的任何存储 单元和I/O设备,且具有相同的访存时间 共享存储器的所有存储单元都按单一地址空间编址
单一物理地址空间
只需要一个OS副本驻留在共享存储器中,OS可以按工 作负载情况在多个处理器上调度进程,从而易于达到 动态负载平衡和有效利用系统资源
非远程存储访问模型(NORMA NO-Remote Memory Access )
M P M M P M P
…
M P P P M
P
消息传递互连网络 (网络、环网、超立方、 立方环等) P M P M
…
…
M
…
P M
所有存储器都是私有的,仅能由本地存储 器访问 每个结点都是由处理器P、本地存储器M和 (或)I/O设备组成的自治计算机,多个结 点由基于消息传递的互连网络相连 所有的存储器都是私有的 绝大多数NORMA都不支持远程存储器的 访问
分布式内存结构
P1
高速缓存 内存 互连网络
Pn
…
高速缓存 内存
所有本地内存组成共享内存 处理器对本地内存的存取时间比对远程内存的存 取时间小得多
高速缓存一致性问题
出现不一致的原因
共享可写数据引起的不一致性
处理机
高速缓冲 存储器 共享 存储器
P1
X
P2
X
P1
X’
P2
X
X
更新之前
X’
MB P/C M B LD IOB NIC MB P/C M
…
LD
B IOB NIC
商品网络(以太网、ATM等)
Berkeley NOW、Alpha Farm、Digital TruCluster 都属于工作站机群 COW的每个结点都是一个完整的工作站 各结点通过一种低成本的商品网络互连,例如,以 太网、FDDI和ATM开关等 COW的每个结点内都有本地磁盘(LD),而MPP 的结点内没有LD
高速缓存一致性非均匀存储访问模型 (CC-NUMA Cache-Coherent NonUniform Memory Access)
结点1
结点N
P/C
… P/C
M
P/C
… P/C
M
总线或交叉开关
总线或交叉开关 I/O NIC, DIR, RC
I/O
NIC, DIR, RC
系统互连网络
绝大多数商用CC-NUMA多处理机系统都使用基 于目录的高速缓存一致性协议来维护Cache的一 致性 保留了SMP结构的易于编程的优点,同时也改善 了常规SMP结构的可扩放性问题 该模型实际上是一个DSM多处理机系统模型 该模型最显著的优点是程序员无需明确地在结点 上分配数据。由系统的硬件和软件自动对各结点 分配数据,在程序运行期间,由高速缓存一致性 硬件自动地将数据迁移到要使用它的地方
状态集合
高速缓存中块的状态的集合 A/B,A表示引发该转换的条件,B表示转换产生的动 作 是总线、高速缓存和处理器与一致性有关的动作集合
状态转换图
动作集合
侦听协议的策略
写直达策略与写回策略 是用于维护本地Cache中的块与相应内存块 拷贝一致性的两种策略
写直达 无论对本地Cache是否写命中,都要同时对内存 中的相应块进行改写 使内存块与Cache的内容随时保持一致 增大了写操作的平均延时
总线事务
需要总线提供额外的共享信号线(S),告诉高 速缓存控制器在其他的Cache中是否存在该块拷 贝
PrRd/—
PrWr/—
M
PrWr/—
PrWr/ BusRdX BusRd/ Flush BusRd/Flush
PrWr/ BusRdX
S
PrRd/— BusRd/Flush’ BusRdX PrRd/BusRd(S) /Flush’
基于总线的共享内存的SMP结构
P1
高速缓存
Pn
…
总线
高速缓存
内存
I/O设备
受共享总线和内存系统的带宽限制,基于总线的 共享内存的SMP结构的可扩放性也不是很好。
基于互连网络的共享内存的SMP结构(舞厅结构)
P1
高速缓存
Pn
…
高速缓存
互连网络
内存
内存
采用可扩放的点到点的互连网络 内存被划分为若干逻辑模块,分别连接到互连网 络的不同端点上 所有处理器访问内存的任何模块所需时间相等 由于所有处理器访问内存都要经过互连网络,当 互连网络规模较大时,访问内存的存取时间也增 大
写更新策略
三态写回无效协议
ห้องสมุดไป่ตู้
协议状态集
无效状态(I) 在Cache中是无效的,或者该块还没有进入Cache。 在其他Cache中可能有也可能没有该块的有效拷 贝 共享状态(S) 该块在Cache中未被修改过,主存中的相应块是 最新的。在其他Cache中可能有也可能没有该块 的有效拷贝
修改过状态(M) 表示只有该Cache中有该块的最新拷贝,主存中 的相应块是过时的。在其他Cache中没有该块的 有效拷贝
处理器请求
处理器读(PrRd) 处理器写(PrWr) 总线读 高速缓存控制器把访存地址放到总线上,请求 一个不准备修改的块,这个块由内存或另一个高 速缓存提供
总线事务
总线互斥读 Cache把访存地址放到总线上,请求一个准备修 改的块,这个块由内存或另一个Cache提供。 互斥块是指所有其他Cache中的块拷贝都必须被 置为无效状态 总线写 高速缓存控制器把Cache中一个块的内容和写回 内存块的内存地址放到总线上,完成对内存块的 更新