cpu缓存越大越好吗?
发布网友
发布时间:2022-04-23 03:48
我来回答
共5个回答
热心网友
时间:2023-10-23 12:16
居然这样问 那是当然重要了 CPU缓存大
直接影响一个数据的运算速度
但是在游戏中不是很明显
如果是作图的话 缓存大效率就很高的
你看看下面::
呵呵 网上找的
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面积上集成更大的缓存,对制造工艺的要求也就越高。
热心网友
时间:2023-10-23 12:17
1、不是的,除了主频,还要看一级、二级、*缓存。例如,台式机赛扬单核处理器,主频高达3.06GHZ,可他的二级缓存只有256KB,性能甚至不如主频只有1.8GHZ的奔腾M单核处理器。当然如果二级缓存和一级缓存差不多,都不算太少,那就主频越高越好。酷睿2-T9900无疑高于T9600和T8100,酷睿2代只能拼主频,T9900甚至高于i5一代系列的诸多型号,一旦达到CPU的绝对能力,多线程技术就是摆设,主频越高越好。所以酷睿i5-480M性能不如T9900.
2、现代CPU运行需要的数据和指令都是预取后存放在缓存中的,,
缓存的容量越大,能够缓冲的指令和数据量就越大,
CPU访问命中的概率越高。
由于缓存的速度比内存要高很多,特别是1级缓存,可以提高CPU的执行效率(减少了取数据指令的等待时间)
但是由于指令和数据流的特性,当缓存大至一定程度后,(CPU命中94-98%)以上,再提高缓存的容量对CPU效率影响不大
热心网友
时间:2023-10-23 12:17
CPU缓存并不是越大越好,因为缓存采用的是速度快、价格昂贵的静态RAM(SRAM),由于每个SRAM内存单元都是由4~6个晶体管构成,增加缓存会带来CPU集成晶体管个数大增,发热量也随之增大,给设计制造带来很大的难度。所以就算缓存容量做得很大,但如果设计不合理会造成缓存的延时,CPU的性能也未必得到提高。
CPU执行指令时,会将执行结果放在一个叫“寄存器”的元件中,由于“寄存器”集成在CPU内部,与ALU等构成CPU的重要元件,因此寄存器中的指令很快被CPU所访问,但毕竟寄存器的容量太小,CPU所需的大量指令和数据还在内存(RAM)当中,所以CPU为了完成指令操作,需要频繁地向内存发送接收指令、数据。
由于内存的处理速度远远低于CPU,所以传统的系统瓶颈在这里就产生了,CPU在处理指令时往往花费很多时间在等待内存做准备工作。
热心网友
时间:2023-10-23 12:18
CPU 缓存级别以及容量不是越多越好,CPU中缓存所占的成本比例很高,加一定容量的缓存可提高cpu的运行速度,但加到一定容量后,对运行速度的提高却是十分有限,就好象双曲线在一定象限内到最后只能以几乎与轴线平行而永不能与相交一样,缓存容量可无限的增加,但性能提高的越来越慢,也没有见底的时候。
热心网友
时间:2023-10-23 12:18
同样的核心架构,肯定越大越好
这个cpu还算不错,多线程能力强大
不过由于目前软件普遍多多线程的优化不足,实际表现反而不如4核心的i5
而且发热功耗都比较大,所以amd目前阶段就是个悲剧