- 1、本文档共105页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机系统结构(第二版)尹朝庆主编-第6章_多处理机精选
第6章 多处理机 6.1 多处理机的结构与特点 6.2 多处理机的Cache一致性 6.3 多处理机的软件 6.4 多处理机的性能 6.5 MIMD并行机结构模型 多处理机具有两台以上处理机,每台处理机可以带有本地Cache、本地存储器、甚至I/O设备,它们都能独立执行各自的程序。多台处理机之间通过总线、纵横交叉开关、多级互连网络或高速的商品化网络实现互连。多处理机可以通过共享存储器,也可以通过消息传送系统来实现处理机间的通信。多台处理机在操作系统的控制下,实现资源的统一分配与调度。 6.1多处理机的结构与特点 6.1.1 多处理机的结构 多处理机在系统结构上可分为两类: 紧耦合多处理机 松耦合多处理机 紧耦合多处理机 紧耦合多处理机是通过共享主存来实现处理机间的通信的。各处理机与主存之间通过一个互连网络连接。它的典型结构如图6.1所示。 在紧耦合多处理机系统中,为了减少处理机访问主存的冲突而采取的措施有: 多处理机的主存采用多模块交叉存取。模块数越多,发生访主存冲突的概率将越低,但必须解决好数据在各存储器模块中的定位和分配。 让每台处理机拥有一个小容量的本地存储器,用来存放频繁使用的核心代码等,以减少对主存的访问。 让每台处理机都有一个Cache,以减少对主存的访问。但要解决好Cache与主存之间以及各个Cache之间的数据一致性问题。 紧耦合多处理机按所用处理机类型是否相同可分为同构型和异构型两种。而按其对称性又可分为对称式多处理机和非对称式多处理机。 如果紧耦合多处理机中的每台处理机在访问任意一个存储器模块或I/O用设备时,都具有同等的能力,那么这个系统就具有对称性。反之,表示多处理机是非对称的。一个多处理机要成为对称式多处理机必须满足两个条件:首先存储器必须是集中共享的,其次系统所用的互连网络也必须是对称的。 具有非对称I/O子系统的多处理机如图6.2所示。 采用冗余连接非对称I/O子系统的多处理机如图6.3所示 在紧耦合多处理机中,常见的组合是同构对称式多处理机及异构非对称式多处理机。 1)同构对称式多处理机 Sequent公司生产的Balance多处理机就是同构对称式的,它的结构如图6.4所示。 2)异构非对称式多处理机 异构非对称式多处理机的一般结构如图6.5所示。 2. 松耦合多处理机 松耦合多处理机是通过消息传送方式来实现处理机间的相互通信的。每台处理机是由一个独立性较强的计算机模块组成,该模块由处理器、较大容量的本地存储器(在运算时所需的绝大部分的指令和数据均取自本地存储器)、I/O设备以及网络接口电路组成。各模块之间通过消息传送系统(MTS)相连接。当不同模块上运行的进程间需要通信时,通过网络接口电路及消息传送系统进行信息交换。由于这种相互间的耦合程度是很松散的,因此称之为松耦合多处理机。 松耦合多处理机可分为层次式和非层次式两种结构。 1)松耦合非层次式多处理机 图6.6所示是一个典型的通过消息传送系统进行互连的松耦合非层次式多处理机。 2)松耦合层次式多处理机 松耦合层次式多处理机采用多级总线实现层次连接。图6.7所示为卡内基梅隆大学研制的Cm* 松耦合层次式多处理机。 6.1.2 多处理机的特点 灵活性和通用性强 高层次的并行性等级 并行任务派生 进程同步 资源分配和任务调度 6.2 多处理机的Cache一致性 Cache作为提高系统性能的一种技术手段在计算机系统中得到普遍的使用。在共享存储器的多处理机中,每台处理机都有自己的局部Cache。这类多处理机在运行一个具有多个进程的程序时,各处理机可能会使用到共享存储器中的同一数据块,为维持多处理机的高速运行,这些共享数据块将被调入各处理机的局部Cache中。由于多个处理机是异步地独立操作,可能使共享存储器中同一数据块的不同Cache拷贝出现不一致,就可能危及系统的正常运行,这就是Cache的一致性问题。 6.2.1 出现Cache一致性问题的原因 出现Cache一致性问题的原因主要有3个: 共享可写的数据 进程迁移 I/O传输 6.2.2 监听一致性协议 在基于总线互连结构的系统中,各处理机的Cache都连接到公共总线。一般都采用监听协议,通过总线监听机制实现高速缓存和共享存储器之间的数据一致性。监听协议有两种策略来保持Cache一致性: 写无效策略 写更新策略 6.2.3 基于目录的协议 在监听协议中,每当Cache被修改时,要与所有的Cache进行通信,包括对于可能共享的数据的写操作,这可能导致总线的流量大大增加。 基于目录的协议的基本思想是:使用Cache目录来记录可以进入Cache的每个数据块的访问状态、该块在各个处理机的共享状态以及是否修改过等信息。把
文档评论(0)