精选题(体系结构)教程.pptx

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
精选题(体系结构)教程

例5.1 假设Cache的命中时间为1个时钟周期,失效 开销为50 个时钟周期,在混合Cache中一次load 或store操作访问Cache的命中时间都要增加一个 时钟周期(因为混合Cache只有一个端口,无法同 时满足两个请求。按照前一章中有关流水线的术 语,混合Cache会导致结构冲突),根据表5-4所 列的失效率,试问指令Cache和数据Cache容量均 为16KB的分离Cache和容量为32KB的混合Cache相 ;解: 如前所述,约75%的访存为取指令。因此, 分离Cache的总体失效率为: (75%×0.64%)+(25%×6.47%)=2.10% 根据表5-4,容量为32KB的混合Cache的失 效率略低一些,只有1.99%.;平均访存时间公式可以分为指令访问和数据 访问两部分: 平均访存时间=指令所占的百分比× (指令命中时间+指令失效率×失效开销)+ 数据所占的百分比× (数据命中时间+数据失效率×失效开销) 所以,两种结构的平均访存时间分别为: 平均访存时间分离=75%×(1+0.64%×50)+ 25%×(1+6.47%×50) =(75%×1.32)+(25%×4.325) =0.990+1.059=2.05;平均访存时间混合=75%×(1+1.99%×50)+ 25%×(1+1+1.99%×50) =(75%×1.995)+(25%×2.995) =1.496+0.749=2.24;例5.2 我们用一个和Alpha AXP类似的机器作为 第一个例子。假设Cache失效开销为50个时钟 周期,当不考虑存储器停顿时,所有指令的 执行时间都是2.0个时钟周期, Cache的失效 率为2%,平均每条指令访存1.33次。试分析 Cache对性能的影响。;考虑Cache的失效后,性能为: CPU 时间有cache=IC×(2.0+(1.33×2%×50)) ×时钟周期时间 =IC×3.33×时钟周期时间; CPU时间也增加为原来的1.67倍。但若不采用Cache,则: CPI=2.0+50×1.33=68.5; 考虑两种不同组织结构的Cache:直接映象 Cache和两路组相联Cache,试问它们对CPU的性 能有何影响?先求平均访存时间,然后再计算 CPU性能。分析时请用以下假设: ⑴ 理想Cache(命中率为100%)情况下的CPI 为2.0,时钟周期为2ns,平均每条指令 访存1.3次。 ⑵ 两种Cache容量均为64KB,块大小都是32 字节。; ⑶ 图5.10说明,在组相联Cache中,我们必须增 加一个多路选择器,用于根据标识匹配结果 从相应组的块中选择所需的数据。因为CPU 的速度直接与Cache命中的速度紧密相关,所 以对于组相联Cache,由于多路选择器的存 在而使CPU的时钟周期增加到原来的1.10倍。 ⑷ 这两种结构Cache的失效开销都是70ns。在 实际应用中,应取整为整数个时钟周期。 ⑸ 命中时间为1个时钟周期,64KB直接映象 Cache的失效率为1.4%,相同容量的两路组 相联Cache的失效率为1.0%。;由: 平均访存时间=命中时间+失效率×失效开销 得: 平均访存时间1路=2.0+(0.014×70)=2.98ns 平均访存时间2路=2.0×1.10+(0.010×70)=2.90ns;CPU时间1路=IC×(2.0×2+(1.3×0.014×70)) =5.27×IC CPU时间2路=IC×(2.0×2×1.10 +(1.3×0.010×70)) =5.31×IC;5.2.4 写策略;例3.5 假设某指令序列中20%的指令是Load指令,并且紧跟在Load指令之后的半数指令需要使用到载入的结果,如果这种数据相关将产生一个时钟周期的延迟。理想流水线(没有任何延迟,CPI为1)的指令执行速度要比这种真实流水线的快多少? 解:我们可以利用CPI作为衡量标准。对于真实的流水线而言,由于Load指令之后的半数指令需要暂停,所以这些被暂停指令的CPI是2。又知Load指令占全部指令的20%,所以真实流水线的实际CPI为

文档评论(0)

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

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

1亿VIP精品文档

相关文档