最新cpu缓存的工作原理精选
每个人都曾试图在平淡的学习、工作和生活中写一篇文章。写作是培养人的观察、联想、想象、思维和记忆的重要手段。那么我们该如何写一篇较为完美的范文呢?下面我给大家整理了一些优秀范文,希望能够帮助到大家,我们一起来看一看吧。
cpu缓存的工作原理篇一
- 对偶的作用 推荐度:
- 沟通的作用及技巧 推荐度:
- 读书的作用优美句子 推荐度:
- 老年教育的作用与意义 推荐度:
- 虎年的由来的故事 推荐度:
- 相关推荐
高速缓冲存储器cache是位于cpu与内存之间的临时存储器,它的容量比内存小但交换速度快。 那cpu缓存的作用有哪些?下面是小编整理的,欢迎大家阅读!更多相关信息请关注相关栏目!
在cache中的数据是内存中的一小部分,但这一小部分是短时间内cpu即将访问的,当cpu调用大量数据时,就可避开内存直接从cache中调用,从而加快读取速度。由此可见,在cpu中加入cache是一种高效的解决方案,这样整个内存储器(cache 内存)就变成了既有cache的高速度,又有内存的大容量的存储系统了。
cache对cpu的性能影响很大,主要是因为cpu的数据交换顺序和cpu与cache间的带宽引起的。
cpu要读取一个数据时,首先从cache中查找,如果找到就立即读取并送给cpu处理;如果没有找到,就用相对慢的速度从内存中读取并送给cpu处理,同时把这个数据所在的数据块调入cache中,可以使得以后对整块数据的读取都从cache中进行,不必再调用内存。
正是这样的读取机制使cpu读取cache的命中率非常高(大多数cpu可达90%左右),也就是说cpu下一次要读取的数据90%都在cache中,只有大约10%需要从内存读取。这大大节省了cpu直接读取内存的时间,也使cpu读取数据时基本无需等待。总的来说,cpu读取数据的顺序是先cache后内存。
前面是把cache作为一个整体来考虑的,现在要分类分析了。intel从pentium开始将cache分开,通常分为一级高速缓存l1和二级高速缓存l2。
在以往的观念中,l1 cache是集成在cpu中的,被称为片内cache。在l1中还分数据cache(i-cache)和指令cache(d-cache)。它们分别用来存放数据和执行这些数据的指令,而且两个cache可以同时被cpu访问,减少了争用cache所造成的冲突,提高了处理器效能。
在p4处理器中使用了一种先进的一级指令cache——动态跟踪缓存。它直接和执行单元及动态跟踪引擎相连,通过动态跟踪引擎可以很快地找到所执行的指令,并且将指令的顺序存储在追踪缓存里,这样就减少了主执行循环的解码周期,提高了处理器的运算效率。
以前的l2 cache没集成在cpu中,而在主板上或与cpu集成在同一块电路板上,因此也被称为片外cache。但从pⅲ开始,由于工艺的提高l2 cache被集成在cpu内核中,以相同于主频的速度工作,结束了l2 cache与cpu大差距分频的历史,使l2 cache与l1 cache在性能上平等,得到更高的传输速度。 l2cache只存储数据,因此不分数据cache和指令cache。在cpu核心不变化的情况下,增加l2 cache的容量能使性能提升,同一核心的cpu高低端之分往往也是在l2 cache上做手脚,可见l2 cache的重要性。现在cpu的l1 cache与l2 cache惟一区别在于读取顺序。
cpu在cache中找到有用的数据被称为命中,当cache中没有cpu所需的数据时(这时称为未命中),cpu才访问内存。从理论上讲,在一颗拥有2级cache的cpu中,读取l1 cache的命中率为80%。也就是说cpu从l1 cache中找到的有用数据占数据总量的'80%,剩下的20%从l2 cache读取。由于不能准确预测将要执行的数据,读取l2的命中率也在80%左右(从l2读到有用的数据占总数据的16%)。那么还有的数据就不得不从内存调用,但这已经是一个相当小的比例了。在一些高端领域的cpu(像intel的itanium)中,我们常听到l3 cache,它是为读取l2 cache后未命中的数据设计的—种cache,在拥有l3 cache的cpu中,只有约5%的数据需要从内存中调用,这进一步提高了cpu的效率。
为了保证cpu访问时有较高的命中率,cache中的内容应该按一定的算法替换。一种较常用的算法是“最近最少使用算法”(lru算法),它是将最近一段时间内最少被访问过的行淘汰出局。因此需要为每行设置一个计数器,lru算法是把命中行的计数器清零,其他各行计数器加1。当需要替换时淘汰行计数器计数值最大的数据行出局。这是一种高效、科学的算法,其计数器清零过程可以把一些频繁调用后再不需要的数据淘汰出cache,提高cache的利用率。 缓存技术的发展
总之,在传输速度有较大差异的设备间都可以利用cache作为匹配来调节差距,或者说是这些设备的传输通道。在显示系统、硬盘和光驱,以及网络通讯中,都需要使用cache技术。但cache均由静态ram组成,结构复杂,成本不菲,使用现有工艺在有限的面积内不可能做得很大,不过,这也正是技术前进的源动力,有需要才有进步!
s("content_relate");【cpu缓存的作用】相关文章:
java的缓存机制简介12-08散装cpu和盒装cpu的区别10-09散装cpu与盒装cpu的区别10-08php文件缓存的性能测试09-10关于php缓存技术的总结09-05php页面缓存实现方法09-12cpu的保养方法10-08cpu的工作原理10-07php语言中缓存技术总结09-02