第6章分布式共享存储课件.ppt

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章分布式共享存储课件

第6章 分布式共享存储 中国科技大学软件学院 丁箐 主要内容 6.1 共享内存 6.2 一致性模型 6.3 基于页面的DSM 6.4 其它的分布式共享内存 主要内容 6.1 共享内存 6.2 一致性模型 6.3 基于页面的DSM 6.4 其它的分布式共享内存 多处理机和多计算机回顾 对硬件的影响 设计一种使多个处理机同时使用同一存储器的机器是非常困难的 大的多计算机系统更易于建立 对软件的影响 用于多处理机编程的技术很多,可以使用临界区(critical region),信号量或管程(monitor) 提供必要的互斥。 对多计算机系统,通信一般使用消息传递,这使输入/输出更为抽象。消息传递带来了许多复杂的问题, 分布式共享存储器(DSM) Li 和Hudak提出让一组由局域网互连的工作站共享一个分页的虚拟地址空间。 不共享整个地址空间,而只共享其中所选择的一部分,即那些由多个进程引用的变量和数据结构。 在多台计算机上复制共享变量,通过共享复制的变量而不是整个页,模拟处理机的问题可简化为保证一组数据结构的多个拷贝一致性的问题。 DSM的很多研究工作都受到了多处理机结构发展的启发! 首先比较几种共享存储器(内存)的多处理机 芯片存储器 CPU与存储器连接模型 单片机 理想的共享存储器多处理机 Pentium D with 975X Chipset 基于总线的多处理机 多处理器结构 带缓存的多处理器结构 总线仲裁机制:集中式和非集中式 通写缓冲(write-though)一致性协议 缓存拥有权(ownership)协议 Cache分成若干个cache块 每个Cache块处于三种状态: Invalid-数据无效 Clean-与存储器数据一致 Dirty-数据被更新,与存储器数据不一致 各CPU监听(snoopy)其它CPU在总线的操作 缓存拥有权(ownership)协议 多个CPU可有读拥有权 只有一个CPU有写拥有权 当一个CPU写一个数据 取得对该数据的拥有权 其它CPU将该数据的缓存块置为“invalid” 在本地缓存块中,写数据,并置为“dirty” 适当时候,刷新存储区,或提供给其它CPU 缓存拥有权(ownership)协议 特点 通过各CPU对总线的监听保持缓存一致性 该协议实现在存储器管理单元中 整个算法在一个存储器周期中完成 召回(callback)协议 如果用软件实现 缓存拥有权协议操作过程 缓存拥有权协议操作过程 重要属性 缓存对总线的监听保证了一致性。 协议建立在存储器管理单元中。 整个算法在一个存储器周期中完成。 基于环的多处理机 没有集中式全局存储器 耦合得较松一些 交换式多处理机 (a) 三个簇由簇间总线连接组成一个超级簇 (b) 由超级簇总线相连的两个超级簇 DASH示例 目录 每一簇都以目录来记录哪些簇现在拥有哪些块的拷贝 缓存(caching) 缓存分为两级:第一级缓存和更大的第二级缓存 协议(protocul) DASH协议是基于拥有权和置无效的 NUMA多处理机 NUMA示例 NUMA多处理机的属性 可以访问远程存储器。 访问远程存储器比访问本地存储器慢。 没有缓冲机制隐藏访问远程存储器的时间。 分布式共享系统的比较 六种共享处理器系统的比较 主要内容 6.1 共享内存 6.2 一致性模型 6.3 基于页面的DSM 6.4 其它的分布式共享内存 6.2 一致性模型 只允许有一个拷贝可能会带来严重的性能瓶颈。允许多重拷贝可以就简化性能问题。但这又引起了新的问题:即如何保证所有拷贝的一致性。 缓存一致性(coherency) 数据在各个缓存中的值保持一致 一致性模型 软件与存储器间的约定(contract) 如果软件遵守约定的规则,存储器就能工作正常。 如果软件违反了这些规定,存储器就不再保证操作的正确性 严格一致性 从存储器地址X处读出的值为最近写入X的值 非严格一致性 顺序一致性 如果所有进程以一定的顺序执行操作,每一进程的操作都以程序规定的顺序出现,则任何操作的结果都是一样的。 每一进程的操作都按程序规定的顺序执行。 所有进程看到相同的内存访问操作次序 运行同一个程序得到的两个可能的结果 顺序一致性举例 3个并行执行的进程 4种正确的执行顺序 因果一致性 按有无可能的因果联系区分各事件,对于因果相关的写操作,所有进程看到的执行顺序应相同。 可能因果相关的写操作应对所有进程可见,且顺序一致。并发写操作在不同机器看来顺序可能是不同的 因果一致性举例 (1)违反因果一致性 (2)符合因果一致性 管道内存(PRAM )一致性 同一个进程的写操作的执行次序,其它进程看到的都相同

文档评论(0)

叮当文档 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档