欢迎来到天天文库
浏览记录
ID:48658084
大小:2.97 MB
页数:169页
时间:2020-01-18
《体系结构ch7.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、7.2Cache基本知识7.3降低Cache不命中率7.4减少Cache不命中开销7.1存储系统的基本知识7.5减少命中时间7.6并行主存系统7.7虚拟存储器7.8进程保护和虚存实例7.9AMDOpteron的存储层次结构7.1.1从单级存储器到多级存储器1.从用户的角度来看,存储器的三个主要指标是:容量,速度,价格(每位价格)2.人们对这三个指标的期望3.这三个指标相互矛盾4.解决方法采用多种存储器技术,构成存储层次。演示Ⅰ演示Ⅱ(局部性原理)7.1存储系统的基本知识7.1.2存储层次的性能参数C,H,TA假设:S──容量TA──访问时间C──每位价格下面仅考虑由M1和M2构成的两级存储
2、层次:M1的参数:S1,TA1,C1M2的参数:S2,TA2,C21.每位价格CC=─────C1S1+C2S2S1+S2若存储器结构如下:提问:请问:设访问M1时间TA1,访问M2时间TA2,传送一个数据块的时间TB,则当不命中M1时的访问时间是多少?为什么?若存储器结构如下:提问:请问:设访问M1时间TA1,访问M2时间TA2,传送一个数据块的时间TB,则当不命中M1时的访问时间是多少?为什么?TA1+TA2+TB3.平均访问时间TATA=TA1+(1-H)TM或TA=TA1+FTMTA1──命中时间TM──失效开销2.命中率H和失效率FH=N1/(N1+N2)N1──访问M1的次数N
3、2──访问M2的次数失效率F=1-H例题:CPU执行一段程序时,Cache完成存取的次数为5000次,主存完成存取的次数为200次。已知Cache存取周期Tc为40ns,主存存取周期Tm为160ns。分别求(当Cache不命中时才启动主存):(1)Cache的命中率H;(2)平均访问时间Ta;(3)Cache—贮存系统的访问效率E。解答:(1)H=Nc/(Nc+Nm)=5000/5200≈0.96;(2)Ta=Tc+(1-H)Tm=40+0.04*160=46.4ns;(3)E=Tc/Ta=40ns/46.4ns=86.2%注意:如果Cache访问和主存访问是同时启动,则公式改为:Ta=H
4、Tc+(1-H)Tm7.1.3“Cache-主存”和“主存-辅存”层次1.从主存的角度来看“Cache-主存”层次:弥补主存速度的不足“主存-辅存”层次:弥补主存容量的不足2.“Cache-主存”层次◆主存与CPU的速度差距◆“Cache-主存”层次3.“主存-辅存”层次两者的比较7.1.4存储层次的四个问题1.当把一个块调入高一层(靠近CPU)存储器时,可以放在哪些位置上?(映象规则)2.当所要访问的块在高一层存储器中时,如何找到该块?(查找算法)3.当发生失效时,应替换哪一块?(替换算法)4.当进行写访问时,应进行哪些操作?(写策略)7.2.1映象规则1.全相联映象全相联:主存中的任
5、一块可以被放置到Cache中的任意一个位置。举例对比:阅览室位置──随便坐特点:空间利用率最高,冲突概率最低,实现最复杂。7.2Cache基本知识1.存储空间分割与地址计算2.Cache和主存分块2.直接映象:◆直接映象:主存中的每一块只能被放置到Cache中唯一的一个位置。举例(循环分配)◆对比:阅览室位置──只有一个位置可以坐◆特点:空间利用率最低,冲突概率最高,实现最简单。◆对于主存的第i块,若它映象到Cache的第j块,则:j=imod(M)(M为Cache的块数)◆组相联:主存中的每一块可以被放置到Cache中唯一的一个组中的任何一个位置。举例◆组相联是直接映象和全相联的一种折
6、衷◆设M=2m,则当表示为二进制数时,j实际上就是i的低m位:3.组相联映象:m位ji:◆上述的j和k通常称为索引◆组的选择常采用位选择算法若主存第i块映象到第k组,则:k=imod(G)(G为Cache的组数)设G=2g,则当表示为二进制数时,k实际上就是i的低g位:g位ki:◆绝大多数计算机的Cache:n≤4想一想:相联度一定是越大越好?◆n路组相联:每组中有n个块(n=M/G)n称为相联度。相联度越高,Cache空间的利用率就越高,块冲突概率就越低,失效率也就越低。全相联直接映象组相联n(路数)G(组数)MM111<n<M1<G<M7.2.2查找方法1.如何确定Cache中是否有所
7、要访问的块?若有的话如何确定其位置?◆目录表的结构◆只需查找候选位置所对应的目录表项◆并行查找与顺序查找◆提高性能的重要思想:主候选位置(MRU块)◆并行查找的实现方法:▲单体多字存储器+比较器举例:4路组相联并行标识比较(比较器的个数及位数)◆直接映象Cache的查找过程◆4路相联Cache的查找过程7.2.3替换算法所要解决的问题:当新调入一块,而Cache又已被占满时,替换哪一块?2.FIFO3.LRU优点:失效率
此文档下载收益归作者所有