ChMemoryConsistency解说.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
高等计算机系统结构 高等计算机系统结构 第一章 高等计算机的核心技术——并行处理 第二章 加速比性能模型与可扩展性分析 第三章 互连与通信 第四章 划分与调度 第五章 并行存储器系统 第六章 Cache Coherence 第七章 Memory Consistency 第八章 指令级并行处理 第七章 Memory Consistency 7.1 问题的提出 7.1.1 存储器一致性问题 7.1.2 存储器访问的原子性问题 7.1.3 存储器访问操作的三个阶段 7.1.4 一个例子 7.1.5 多处理机存储器的行为 7.2 四种存储器一致性模型 7.1 问题的提出 7.1.1 存储器一致性问题 1.定义 存储器一致性是指一个系统正确执行存储器操作的能力。各处理机看到存储器的值是一致的。 Lamport定义(1979):如果任意一次执行的结果都象所有处理机的(memory)操作是以某种顺序执行所得到的一样,而且就在这个序列中,多台处理机的(memory)操作都按照它的程序所指定的次序出现,那么这样的多处理机是顺序一致性系统。 A multiprocessor system is sequentially consistent if the result of any execution is the same as if the operation of all the processors were executed in some sequential order, and the operations of each individual processor appear in this sequence in the order specified by its program. 在顺序一致性系统中:并行程序的执行情况好象是单机系统的多进程在执行一样,并且每台处理机的memory操作都按其程序所指定的顺序执行。说明: (1)每台处理机发出的指令执行的次序均与其它各台观察到的次序相同。 +,写,-…… +,-,写? (2)每台处理机的所有存储器访问都自动的进行并形成全局次序。统一 (3)每台处理机的所有存储器访问均按其程序规定的次序执行。读写读读- 读读写读? Lamport给出了保证顺序一致性所必须满足的两个条件: (1)每台处理机按其程序所指定的顺序发出存储器请求。 (2)所有处理机对同一存储模块的存储器请求必须按先来先服务的方式进行处理,发出一个存储器请求就是将这个请求插入该先进先服务队列。 Scheurich和Dubois给出顺序一致性的充分条件: (1)所有处理机按程序所指定的顺序发出存储器请求。 (2)一个处理机发出一写操作,直到所写的值可被其它所有处理机存取时,该处理机才允许发出下一个存储器请求。全局完成 (3)一个处理机发出一读操作,直到该操作已全局完成,该处理机才可发出另一个存储器请求。 顺序一致性模型要求并行程序的执行看起来象在一个顺序机器上执行一样,它对处理机的所发出的存取操作加了许多限制,导致了许多提高性能的硬件优化措施不能实现。 2. 实现 单端口存储器一次提供一个存储器操作服务,在每个存储器操作期间,开关将存储器接至一台处理机。开关切换次序确定了所有处理机的所有存储器访问的全局次序。 如下图: P1 P2 P3 共享存储器 所有处理机的全局存储器访问次序 按程序次序 按程序次序 按程序次序 开关 上面的图中: 一致性由H/W保证,存储器访问 是原子访问强排序。 一台处理机发出的访问能被全局完成前,不能发另一次访问,即推迟访问。 顺序一致性模型对H/W的限制较大,因而也限制了许多提高性能的技术的应用,尤其在并行度比较高时。 这种模型的可扩展性差。 7.2.2 弱一致性模型 弱一致性存储模型(Weak Consistency,WC)由Dubois等人提出:当一个处理机在临界区内对共享变量作修改时,由于在临界区内,其它处理机都不能对此变量作访问,因此,在临界区内对共享变量的修改可以不立即被其它处理机见到,也就是不用保证顺序一致性,只需要退出临界区时,存储器一致就可以了,也就是保证在同步点上是顺序一致的,就可以保证存储器的一致性。 临界区里面的不必全局完成,外面的必须顺序一致。 弱一致性允许对多个存储器存取操作以流水线方式进行。 弱一致性模型定义: (1)同步指令之间的关系具有顺序一致性,且有一个全局次序,与所有处理机观察到的一样。 (2)在以前所有的全局访问完成之后才能允许一台处理机发出对同步变量访问的命令。 (3)在对以前的同步变量完成全局访问之后,才能允许一台处

文档评论(0)

a336661148 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档