- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
体系结构第7章 第5讲
16处理器系统 128处理器构成的Origin 2000系统由4个立方体组成,在立方体之间传送数据多经过了一级路由器。 在结点内部实现的是SMP(对称多处理器)结构,由于只有两个处理器,所以不存在SMP结构的总线瓶颈问题。在结点之间实现的是大规模并行处理结构。 谢谢! 计算机体系结构 * 国家精品资源共享课程:计算机体系结构 第七章:多处理机 国防科技大学计算机学院 主讲人: 第七章 多处理机 7.5.3.同步性能问题 例7.3 设总线上有10个处理器同时准备对同一变量加锁。假设每个总线事务处理(读失效或写失效)是100个时钟周期,忽略实际的Cache块锁的读写时间以及加锁的时间,求10个处理器请求加锁所需的总线事务数目。设时间为0时锁已释放并且所有处理器在旋转,求处理这10个请求时间为多长?假设总线在新的请求到达之前已服务完挂起的所有请求,并且处理器速度相同。 解:当i个处理器竞争锁的时候,他们完成下列操作序列,每一个操作产生一个总线事务: 访问该锁的i个LL指令操作; 试图锁住该锁的i个SC指令操作; 1个释放锁的存操作指令。 因此对n个处理器,总线事务的总和为: ∑(2i+1)=n(n+1)+n=n2+2n 对于10个处理器有120个总线事务,需要12000个时钟周期。 本例中问题的根源是锁的竞争、存储器中锁访问的串行性以及总线访问的延迟,总线的公平性使得这些情况更为突出。因为总线的公平性,一个处理器释放锁后,其余的处理器都来竞争取锁。 栅栏(barrier)同步 栅栏强制所有到达该栅栏的进程进行等待,直到全部的进程到达栅栏,然后释放全部的进程,从而形成同步。 栅栏的典型实现是要用两个旋转锁:一个用来记录到达栅栏的进程数,另一个用来封锁进程直至最后一个进程到达栅栏。栅栏的实现中要不停地探测指定的变量,直到它满足规定的条件。 Lock(counterlock); /*确保更新的原子性*/ if(count=0) release=0; /*第一个进程则重置release*/ /*到达进程记数*/ unlock(counterlock); /*释放锁*/ if(count==total){ /*进程全部到达*/ count=0; /*重置计数器*/ release=1; /*释放进程*/ } else { /*还有进程未到达*/ spin(release=1); /*等待别的进程到达*/ } 针对反复使用一个栅栏的改进: local_sense=! local_sense; /*local-sense取反*/ lock(counterlock); /*确保更新的原子性*/ count++; /*记算到达进程数*/ unlock(counterlock); /*解锁*/ if(count==total) { /*进程全部到达*/ count=0; /*重置计数器*/ release=local_sense; /*释放进程*/ } else { /*还有进程未到达*/ spin(release=local_sense); /*等待信号*/ } 当多进程之间竞争激烈时,同步会成为瓶颈。当竞争不激烈且同步操作较少时,我们主要关心的是一个同步原语操作的延迟,即单个进程要花多长时间才完成一个同步操作。 同步操作最严重的问题的是进程的串行性。当出现竞争时,就会出现串行性问题。它极大地增加了同步操作的时间。比如,在无竞争的条件下,10个处理器加解锁的同步操作仅需20个总线事务。总线的使用是这个问题关键所在。在基于目录的Cache一致性机器中,串行性问题也同样严重 7.5.2.大规模机器的同步 1.软件实现 1)延迟进程的等待时间
有哪些信誉好的足球投注网站
文档评论(0)