2024年5月5日发(作者:)

CPU的主频是什么意思?

主频也叫时钟频率,单位是MHz,用来表示CPU的运算速度。CPU的主频=外频×

倍频系数。很多人以为认为CPU的主频指的是CPU运行的速度,实际上这个认识是很片

面的。CPU的主频表示在CPU内数字脉冲信号震荡的速度,与CPU实际的运算能力是没

有直接关系的。当然,主频和实际的运算速度是有关的,但是目前还没有一个确定的公式

能够实现两者之间的数值关系,而且CPU的运算速度还要看CPU的流水线的各方面的性

能指标。由于主频并不直接代表运算速度,所以在一定情况下,很可能会出现主频较高的

CPU实际运算速度较低的现象。因此主

频仅仅是CPU性能表现的一个方面,而不代表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%,剩