第八章 多处理机

上传人:suij****uang 文档编号:162620458 上传时间:2022-10-19 格式:DOCX 页数:3 大小:14.75KB
收藏 版权申诉 举报 下载
第八章 多处理机_第1页
第1页 / 共3页
第八章 多处理机_第2页
第2页 / 共3页
第八章 多处理机_第3页
第3页 / 共3页
资源描述:

《第八章 多处理机》由会员分享,可在线阅读,更多相关《第八章 多处理机(3页珍藏版)》请在装配图网上搜索。

1、第 8 章 多处理机8.1 解释以下术语 集中式共享多处理机:也称为对称式共享存储器多处理SMP。它一般由几十个处理器构成, 各处理器共享一个集中式的物理存储器,这个主存相对于各处理器的关系是对称的,分布式共享多处理机:它的共享存储器分布在各台处理机中,每台处理机都带有自己的本地 存储器,组成一个“处理机-存储器”单元。但是这些分布在各台处理机中的实际存储器又 合在一起统一编址, 在逻辑上组成一个共享存储器。这些处理机存储器单元通过互连网络 连接在一起 ,每台处理机除了能访问本地存储器外,还能通过互连网络直接访问在其他处 理机存储器单元中的 “远程存储器”。通信延迟:通信延迟=发送开销+跨越时

2、间+传输时间+接收开销。计算/通信比:反映并行程序性能的一个重要的度量。在并行计算中,每次数据通信要进行 的计算与通信开销的比值。多Cache 一致性:多处理机中,当共享数据进入Cache,就可能出现多个处理器的Cache中 都有同一存储器块的副本,要保证多个副本数据是一致的。监听协议:每个 Cache 除了包含物理存储器中块的数据拷贝之外,也保存着各个块的共享状 态信息。Cache通常连在共享存储器的总线上,各个Cache控制器通过监听总线来判断它们 是否有总线上请求的数据块。目录协议:用一种专用的存储器所记录的数据结构。它记录着可以进入Cache的每个数据块 的访问状态、该块在各个处理器的

3、共享状态以及是否修改过等信息。写作废协议:在处理器对某个数据项进行写入之前,它拥有对该数据项的唯一的访问权。写更新协议:当一个处理器对某数据项进行写入时,它把该新数据广播给所有其它Cache。 这些Cache用该新数据对其中的副本进行更新。栅栏同步:栅栏强制所有到达该栅栏的进程进行等待。直到全部的进程到达栅栏,然后释放 全部进程,从而形成同步。旋转锁:处理机环绕一个锁不停地旋转而请求获得该锁。同时多线程:是一种在多流出、动态调度的处理器上同时开发线程级并行和指令级并行的技 术,它是多线程技术的一种改进。细粒度多线程技术:是一种实现多线程的技术。它在每条指令之间都能进行线程的切换,从 而使得多个

4、线程可以交替执行。通常以时间片轮转的方法实现这样的交替执行,在轮转的过 程中跳过处于停顿的线程。粗粒度多线程技术:是一种实现多线程的技术。只有线程发生较长时间的停顿时才切换到其 他线程。SMP :对称式共享存储器多处理MPP :即大规模并行处理,按照当前的标准,具有几百台几千台处理机的任何机器都是 大规模并行处理系统。8.2 一个具有32台处理机的系统,对远程存储器访问时间是2000ns。除了通信以外, 假设计算中的访问均命中局部存储器。当发出一个远程请求时,本地处理机挂起。处理机的 时钟周期时间是10ns,假设指令基本的CPI为1.0 (设所有访存均命中Cache)。对于下述两 种情况:(

5、1) 没有远程访问;(2)0.5%的指令需要远程访问。试问前者比后者快多少?解:已知远程访问率p = 0.5%,远程访问时间t = 2000ns,时钟周期T = 10ns 远程访问开销 C = t/T = 2000ns/10ns = 200(时钟周期数) 有 0.5%远程访问的机器的实际 CPI2 为:CPI2 = CPI1 + pXC = 1.0 + 0.5% x 200 = 2.0只有局部访问的机器的基本 CPI1= 1.0CPI2/ CPI1 = 2.0/1.0 = 2(倍) 因此,没有远程访问状态下的机器速度是有0.5% 远程访问的机器速度的2 倍。8.3 什么是多处理机的一致性?给出

6、解决一致性的监听协议和目录协议的工作原理。 答:(1)对多个处理器维护一致性的协议称为Cache 一致性协议。(2)目录协议的工作原理:采用一个集中的数据结构目录。对于存储器中的每一 个可以调入Cache的数据块,在目录中设置一条目录项,用于记录该块的状态以及哪些Cache 中有副本等相关信息。目录协议根据该项目中的信息以及当前要进行的访问操作,依次对相 应的 Cache 发送控制消息,并完成对目录项信息的修改。此外,还要向请求处理器发送响应 信息。(3)监听协议的工作原理:每个Cache除了包含物理存储器中块的数据拷贝之外,也 保存着各个块的共享状态信息。Cache通常连在共享存储器的总线上

7、,当某个Cache需要访 问存储器时,它会把请求放到总线上广播出去,其他各个Cache控制器通过监听总线来判断 它们是否有总线上请求的数据块。如果有,就进行相应的操作。8.4在标准的栅栏同步中,设单个处理器的通过时间(包括更新计数和释放锁)为C, 求 N 个处理器一起进行一次同步所需要的时间。解:我们忽略读写锁的时间。N个处理器中的每一个都需要C个时钟周期来锁住与栅 栏相关的计数器,修改它的值,然后释放锁。考虑最坏情况,所有N个处理器都要对计数 器加锁并修改它的值,由于锁只能顺序访问计数器,在同一时间,只能有一个处理器修改计 数器的数据。所以,总共要花NC个时钟周期使得所有的处理器都到达数据栅

8、栏。8.6 采用排队锁和 fetch-and-increment 重新实现栅栏同步,并将它们分别与采用旋转锁 实现的栅栏同步进行性能比较。解:fetch-and-increment(count);/进程全部到达/重置计数器/释放进程/还有进程未到达/等待信号if (count=total)count=0;release=1;elsespin(release=1) ;当有N个处理器时,上述代码执行fetch-and-increment操作N次,当访问释放操作的时 候,有 N 个 Cache 未命中。当最后一个处理器到达栅栏条件后, release 被置为“1”,此时 有N-1个Cache未命中(

9、对于最后一个到达栅栏的处理器,当它读release的时候,将在主 存中命中)。所以,共有3N-1次总线传输操作。如果有10个处理器,则共有29次总线传 输操作,总共需要2900个时钟周期。8.7 有些机器实现了专门的锁广播一致性协议,实现上可能使用不同的总线。假设使用 写广播协议,重新给出例8.3旋转锁的时间计算。解:当实现了专门的锁广播一致性协议后,每当一把锁被释放的时候,和锁相关的值将 被广播到所有处理器,这意味着在处理器对锁变量进行读操作的时候,未命中的情况永远不 会发生。假定每个Cache都有一个数据块保留锁变量的初值。通过下表可以知道,10次上锁/释 放锁的平均时间是550个时钟周期,总时间是5500个时钟周期。事件持续时间所有处理器都读(命中)锁0释放锁的处理器进行写(不命中)广播100读(命中)锁(处理器认为锁是空闲的)0一个处理器进行写交换广播,同时还有9个写广播1000一个处理器得到并释放锁的总时间1100

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!