永发信息网

二级缓存有什么作用?

答案:3  悬赏:0  手机版
解决时间 2021-06-09 05:02
二级缓存有什么作用?
最佳答案
 CPU缓存(Cache
Memory)位于CPU与内存之间的临时存储器,它的容量比内存小但交换速度快。在缓存中的数据是内存中的一小部分,但这一小部分是短时间内CPU即将
访问的,当CPU调用大量数据时,就可避开内存直接从缓存中调用,从而加快读取速度。由此可见,在CPU中加入缓存是一种高效的解决方案,这样整个内存储
器(缓存+内存)就变成了既有缓存的高速度,又有内存的大容量的存储系统了。缓存对CPU的性能影响很大,主要是因为CPU的数据交换顺序和CPU与缓存
间的带宽引起的。

  缓存的工作原理是当CPU要读取一个数据时,首先从缓存中查找,如果找到就立即读取并送给
CPU处理;如果没有找到,就用相对慢的速度从内存中读取并送给CPU处理,同时把这个数据所在的数据块调入缓存中,可以使得以后对整块数据的读取都从缓
存中进行,不必再调用内存。

  正是这样的读取机制使CPU读取缓存的命中率非常高(大多数CPU可达90%左右),也就是说
CPU下一次要读取的数据90%都在缓存中,只有大约10%需要从内存读取。这大大节省了CPU直接读取内存的时间,也使CPU读取数据时基本无需等待。
总的来说,CPU读取数据的顺序是先缓存后内存。

  最早先的CPU缓存是个整体的,而且容量很低,英特尔公司从Pentium时代开始把缓存进行
了分类。当时集成在CPU内核中的缓存已不足以满足CPU的需求,而制造工艺上的限制又不能大幅度提高缓存的容量。因此出现了集成在与CPU同一块电路板
上或主板上的缓存,此时就把 CPU内核集成的缓存称为一级缓存,而外部的称为二级缓存。一级缓存中还分数据缓存(Data
Cache,D-Cache)和指令缓存(Instruction
Cache,I-Cache)。二者分别用来存放数据和执行这些数据的指令,而且两者可以同时被CPU访问,减少了争用Cache所造成的冲突,提高了处
理器效能。英特尔公司在推出Pentium 4处理器时,用新增的一种一级追踪缓存替代指令缓存,容量为12KμOps,表示能存储12K条微指令。

  随着CPU制造工艺的发展,二级缓存也能轻易的集成在CPU内核中,容量也在逐年提升。现在再
用集成在CPU内部与否来定义一、二级缓存,已不确切。而且随着二级缓存被集成入CPU内核中,以往二级缓存与CPU大差距分频的情况也被改变,此时其以
相同于主频的速度工作,可以为CPU提供更高的传输速度。

  二级缓存是CPU性能表现的关键之一,在CPU核心不变化的情况下,增加二级缓存容量能使性能大幅度提高。而同一核心的CPU高低端之分往往也是在二级缓存上有差异,由此可见二级缓存对于CPU的重要性。

  CPU在缓存中找到有用的数据被称为命中,当缓存中没有CPU所需的数据时(这时称为未命
中),CPU才访问内存。从理论上讲,在一颗拥有二级缓存的CPU中,读取一级缓存的命中率为80%。也就是说CPU一级缓存中找到的有用数据占数据总量
的80%,剩下的20%从二级缓存中读取。由于不能准确预测将要执行的数据,读取二级缓存的命中率也在80%左右(从二级缓存读到有用的数据占总数据的
16%)。那么还有的数据就不得不从内存调用,但这已经是一个相当小的比例了。目前的较高端的CPU中,还会带有三级缓存,它是为读取二级缓存后未命中的
数据设计的—种缓存,在拥有三级缓存的CPU中,只有约5%的数据需要从内存中调用,这进一步提高了CPU的效率。

  为了保证CPU访问时有较高的命中率,缓存中的内容应该按一定的算法替换。一种较常用的算法是
“最近最少使用算法”(LRU算法),它是将最近一段时间内最少被访问过的行淘汰出局。因此需要为每行设置一个计数器,LRU算法是把命中行的计数器清
零,其他各行计数器加1。当需要替换时淘汰行计数器计数值最大的数据行出局。这是一种高效、科学的算法,其计数器清零过程可以把一些频繁调用后再不需要的
数据淘汰出缓存,提高缓存的利用率。

  CPU产品中,一级缓存的容量基本在4KB到64KB之间,二级缓存的容量则分为128KB、
256KB、512KB、1MB、2MB等。一级缓存容量各产品之间相差不大,而二级缓存容量则是提高CPU性能的关键。二级缓存容量的提升是由CPU制
造工艺所决定的,容量增大必然导致CPU内部晶体管数的增加,要在有限的CPU面积上集成更大的缓存,对制造工艺的要求也就越高

  CPU的二级缓存一般情况下你感觉不是很明显。但是它的作用却不可忽视。它是暂存CPU运算时的数据的。硬盘的缓存主要在读/写的时候很突出。是CPU的二级缓存是在运行时候突出出来的,两者相比不是很明显。

  你认为如果大于521K的和1M的都一样的话。英特尔恭喜为什么还推出1M的呢?他为什么不把
1M的缓存分成两个512K的放在两个CPU上从而降低成本呢?你用两台同样配置的电脑放上两个不同的CPU。一个放P42.8E(1M二级缓存)。另一
个放P42.8C(521K)的。然后同时运行1G左右视频转换!你会发现2.8E的要比2.8C的快1/5左右。
全部回答
二级缓存和一级缓存的作用是不同的,一级缓存主要是CPU用来储存和发布指令命令符的,它的大小一般都比较小。而二级缓存是CPU用来储存已调运数据的地方,CPU将数据调运出来,在由内存条过渡到计算的过程中,要经过二级缓存的储存和筛选,以区分出顺序运算和逻辑运算,之后分配给不同的运算器进行运算,二级缓存的作用不仅仅是储存,还是一个筛选器

和一级缓存一样,用来存储cpu调用的临时数据用的,传输速度比一级缓存慢一点,但能存储的临时数据量更多。

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
请问这个卡通是什么
玩具猫是什么颜色,给猫咪买什么玩具好
赫山区益阳市第五人民医院心理门诊地址有谁知
甲流感预防知识
初怀孕有什么症状
哪个版本的港币有珍藏价值 ?
网络兼职,轻松在家赚钱!2009年做什么最赚钱
我想烫个类似这样的发型,那是什么烫呢,女生
关于排列组合的问题如何区别C和A 比如C下4上3
老公婚前与婚后的变化,这样的老公我该怎么和
难道夏普扛不住了??? 听说夏普也推白光LED
a^x+1 b与1/2a^2 b的和是单项式,求X的值
山东人好吗? 山东为什么又称“齐鲁大地”?
普通打印机多少钱一台,打印机一般多少钱?
DNF封号。
推荐资讯
春节那个外国人表演的那舞蹈是什么舞
为什么自己会出现在自己的陌生人中?
CF11月1日活动我够10000经验了3个奖励都给我
英语翻译1.有人辱你,骂你,刁难你,诬陷你;你
天门冬氨酸氨基转移酶增高到67
女人是衣服,兄弟是什么?
在火车上怎么打发时间?
DNF 称号问题 知道的说下
手机输入法可以同时装两个吗?
加内特身高和臂展各是多少?
請教一下喜歡汽車的朋友,那個標誌樣個三叉戟
为什么我的空间相册没了?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?