- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
补充章节:多处机与多计算机
访问存储器的延迟时间: 系统CPU数 最小延迟时间 最大延迟时间 平均延迟时间 2 318ns 343ns 343ns 4 318ns 554ns 441ns 8 318ns 759ns 623ns 16 318ns 759ns 691ns 32 318ns 836ns 764ns 64 318ns 1067ns 851ns 128 318ns 1169ns 959ns 系统频带宽度: 处理器数 频宽(无快速连线)* 频宽(有快速连线)* 8 1.56Gb/s 3.12Gb/s 16 3.12Gb/s 6.24Gb/s 32 6.24Gb/s 12.5Gb/s 64 12.5Gb/s -- 128 25Gb/s -- *相当于虚线情况 Origin系统的存储器层次结构可分为寄存器、 L1 Cache、 L2 Cache和主存储器,其中寄存器和L1 Cache在R10000微处理器中。 寄存器的存取时间最短,L1 Cache又分成指令Cache和数据Cache两部分,这是为了避免取指令和存/取数据发生冲突。 L2 Cache安装在结点卡中,统一存放指令和数据,由SRAM组成。 Origin的主存储器地址是统一编址的,每个处理器通过互连网络可访问系统中任一存储单元。 当一个处理器初次读取某一存储单元数据时,该数据在提供给CPU的同时也拷贝到本结点的Cache中。 同一数据在各个Cache中将保持一致。Origin系统的Cache采用写作废协议。 Origin采用基于目录的协议。在Origin的结点中,有一个存储器和一个目录存储器。存储器被划分为存储器块(每个存储器块对应于一个Cache行)。 每块对应一个目录项,每个目录项包含其对应存储器块的状态信息和系统中各Cache共享存储情况的位向量,根据位向量可以知道本存储器块在哪些Cache中有拷贝。 当执行写存储器操作时,根据目录项的位向量可将有关结点中的Cache数据作废,从而实现了Cache的一致性。 同步性能问题 简单旋转锁不能很好地适应可伸缩性。大规模机器 中所有的处理器会产生出大量的竞争问题。 例:设总线上有10个处理器同时准备对同一变量加锁。假设每个总线事务处理(读失效或写失效)是100个时钟周期,忽略实际的Cache块锁的读写时间以及加锁的时间,求10个处理器请求加锁所需的总线事务数目。设时间为0时锁已释放并且所有处理器在旋转,求处理这10个请求时间为多长?假设总线在新的请求到达之前已服务完挂起的所有请求,并且处理器速度相同。 解 当i个处理器竞争锁的时候,他们完成下列操作序列,每一个操作产生一个总线事务: 访问该锁的i个LL指令操作; 试图锁住该锁的i个SC指令操作; 1个释放锁的存操作指令。 因此对n个处理器,总线事务的总和为: n ∑(2i+1)=n(n+1)+n=n2+2n i=1 对于10个处理器有120个总线事务,需要12000个时钟周期。 大规模机器的同步 所希望的同步机制:在无竞争的条件下延迟较小 在竞争激烈时串行性小 1. 软件实现 旋转锁 (1) 旋转锁实现的主要问题 当多个进程检测并竞争锁时引起的延迟 (2) 一种解决办法: 当加锁失败时就人为地推延 这些进程的等待时间。 (3) 具有指数延迟的旋转锁代码 2. 硬件原语支持 硬件同步原语:针对锁 (1) 排队锁 可以排队记录等待的进程,当锁释放时送 出一个已确定的等待进程。 硬件实现 在基于目录的机器上,通过硬件向量等方式 来进行排队和同步控制。 在基于总线的机器中要将锁从一个进程显式 地传给另一个进程,软件实现会更好一些。 在第一次取锁变量失效时,失效被送入同步控 制器。同步控制器可集成在存储控制器中(基 于总线的系统)或集成在目录控制器中。 排队锁
文档评论(0)