Cache采用不同地址有效命中率率

虎扑6月5日讯 NBA著名数据分析师Justin Kubatko今天茬推特上公布了NBA历史上总决赛单场有效投篮有效命中率率最高的前三支球队(查看术语“有效有效命中率率”>>):

2014年6月6日的马刺(有效投籃有效命中率率 | 更多体育新闻请访问 虎扑新闻

点击文档标签更多精品内容等伱发现~

  文档均来自网络,如有侵权请联系我删除文档


VIP专享文档是百度文库认证用户/机构上传的专业性文档,文库VIP用户或购买VIP专享文档下载特權礼包的其他会员用户可用VIP专享文档下载特权免费下载VIP专享文档只要带有以下“VIP专享文档”标识的文档便是该类文档。

VIP免费文档是特定嘚一类共享文档会员用户可以免费随意获取,非会员用户需要消耗下载券/积分获取只要带有以下“VIP免费文档”标识的文档便是该类文檔。

VIP专享8折文档是特定的一类付费文档会员用户可以通过设定价的8折获取,非会员用户需要原价获取只要带有以下“VIP专享8折优惠”标識的文档便是该类文档。

付费文档是百度文库认证用户/机构上传的专业性文档需要文库用户支付人民币获取,具体价格由上传人自由设萣只要带有以下“付费文档”标识的文档便是该类文档。

共享文档是百度文库用户免费上传的可与其他用户免费共享的文档具体共享方式由上传人自由设定。只要带有以下“共享文档”标识的文档便是该类文档

还剩11页未读, 继续阅读

Cache的工作原理是基于程序访问的局蔀性

    对大量典型程序运行情况的分析结果表明,在一个较短的时间间隔内由程序产生的地址往往集中在存储器逻辑地址空间的很小范圍内。指令地址的分布本来就是连续的再加上循环程序段和子程序段要重复执行多次。因此对这些地址的访问就自然地具有时间上集Φ分布的倾向。

数据分布的这种集中倾向不如指令明显但对数组的存储和访问以及工作单元的选择都可以使存储器地址相对集中。这种對局部范围的存储器地址频繁访问而对此范围以外的地址则访问甚少的现象,就称为程序访问的局部性

    根据程序的局部性原理,可以茬主存和CPU通用寄存器之间设置一个高速的容量相对较小的存储器把正在执行的指令地址附近的一部分指令或数据主存调入这个存储器,供CPU在一段时间内使用这对提高程序的运行速度有很大的作用。这个介于主存和CPU之间的高速小容量存储器称作高速缓冲存储器 (Cache)

    系统正昰依据此原理,不断地将与当前指令集相关联的一个不太大的后继指令集从内存读到Cache然后再与CPU高速传送,从而达到速度匹配

CPU对存储器進行数据请求时,通常先访问Cache由于局部性原理不能保证所请求的数据百分之百地在Cache中,这里便存在一个有效命中率率即CPU在任一时刻从CacheΦ可靠获取数据的几率。

    有效命中率率越高正确获取数据的可靠性就越大。一般来说Cache的存储容量比主存的容量小得多,但不能太小呔小会使有效命中率率太低;也没有必要过大,过大不仅会增加成本而且当容量超过一定值后,有效命中率率随容量的增加将不会有明顯地增长

    只要Cache的空间与主存空间在一定范围内保持适当比例的映射关系,Cache的有效命中率率还是相当高的

    一般规定Cache与内存的空间比为4:1000,即128kB Cache可映射32MB内存;256kB Cache可映射64MB内存在这种情况下,有效命中率率都在90%以上至于没有有效命中率的数据,CPU只好直接从内存获取获取的同時,也把它拷进 Cache以备下次访问

    我 们知道电脑的内存是以系统总线的时钟频率工作的,这个频率通常也就是CPU的外频(对于雷鸟、毒龙系列的处理器由于在设计采用了DDR技术,CPU工 作的外频为系统总线频率的两倍)但是,CPU的工作频率(主频)是外频与倍频因子的乘积这样一来,內存的工作频率就远低于CPU的工作频率了这样造 成的直接结果是:CPU在执行完一条指令后,常常需要“等待”一些时间才能再次访问内存極大降了CPU工作效率。在这样一种情况下 Cache就应运 而生了!

    Cache是一种特殊的存储器,它由Cache 存储部件和Cache控制部件组成Cache 存储部件一般采用与CPU同类型的半导体存储器件,存取 速度比内存快几倍甚至十几倍而Cache控制器部件包括主存地址寄存器、Cache 地址寄存器,主存—Cache地址变换部件及替换控制部件等至于 它们各自又是怎样工作的、有何作用等等,就没有必要做进一步的研究知道一般 Cache分为L1 Cache(其中又分为数据Cache、代码Cache)、L2 Cache就行。

    峩 们知道CPU运行程序是一条指令一条指令地执行的,而且指令地址往往是连续的意思就是说CPU在访问内存时,在较短的一段时间内往往集Φ于某个局部 这时候可能会碰到一些需要反复调用的子程序。电脑在工作时把这些活跃的子程序存入比内存快得多的Cache 中。CPU在访问内存時首先判断所要访问 的内容是否在Cache中,如果在就称为“有效命中率”,此时CPU直接从Cache中调用该内容;否则就称为 “不有效命中率”,CPU呮好去内存中调用所需的子程序或指令了CPU不但可以直接从Cache中读出内容,也可以直接往其中写入内容由于Cache的存取速率相当快,使得CPU的利鼡率大大提高进而使整个系统的性能得以提升。

    早 在486时代主板上就设计了Cache插槽,用户可以根据需要自己配置Cache;586级的CPU芯片中已集成了部汾Cache同时还保留了 Cache插槽供用户扩充,而到了Pentium Ⅱ时代后Cache已全部集成到了CPU芯片中,主板上再也没有Cache插槽现在比较流行的

有的朋友可能会问,既然Cache的作用如此重要那为么不把电脑的全部内存都变为Cache,那样不是更好吗其实对于这个问题,撇开价格因素单就其实用性而言也昰没有必要的,毕竟电脑在执任务时,那种使用频率非常高的子程序或指令不是很多的因此那些使用频率不太高的内容只须保存在速喥相对较低的内存中就可以了!

    在实际应用中,Cache尤其是L2Cache对系统的性能,特别是对浮点运算能力有较大的影响而我们知道,大部分游戏嘚流畅运行需要频繁的浮点运算因此,CPU运行游戏的性能的好坏L2Cache的容量与速度有很大关系

    CACHE中文名称是高速缓冲存储器,是法文一个单詞具体什么意思我忘了,大概是隐蔽的意思吧

    它是一个相对于内存来说容量很小速度贼快,用静态存储器实现的存储系统解决内存哏不上CPU运算速度的问题

    工作原理是把CPU最近可能用到的少量信息可能是数据,也可能是指令从内存复制到CACHE中,是CPU能够更高速的访问这些数据提高工作效率

评 价CACHE性能关键的指标是CACHE的有效命中率率。因为CACHE的容量远远小于内存它只可能存放内存的一部分数据。CPU自然是先访問CACHE再 访问主存,如果数据在CACHE中为有效命中率在不在内存中为不有效命中率,这就有个比例问题这个比例就是有效命中率率,影响有效命中率率的因素有一下几个

我要回帖

更多关于 命中率 的文章

 

随机推荐