cache与计算机cpu是什么关系,小知识:理解Cpu中的Cache存在的必要性,和主板上内存的联系...

对于Cpu来说,我们经常最关心的是频率以及缓存。缓存就是Cpu中的Cache,现在的主流Cpu都会有三级cache(下图一颗i5三代Cpu的数据),比如intel的i5 8400第三级cache有9MB,AMD的R5 2600第三级cache有16MB。那么,为什么Cpu需要cache的存在?cache和主板上内存有什么联系?cache的容量大小是否是越大越好?

1b05bf190025610f1f93fde1959acbb5.pngCPU-Z查看某Cpu参数

Cache存在的必要性

Cache是一种高速缓冲存储器。主机中,CPU的频率是最快的并且越来越快,而受限于制造工艺和成本的内存,在访问速度上没有质的突破,这就导致了CPU的处理速度和内存的访问速度差距越来越大,快到内存严重跟不上其处理数据的速度。

df3fd97a35f151ee20f3772ce061f3ff.pngBIOS下调节C内存频率

而且,Cpu的指令运行都是按照时钟周期的,内存太慢,就会导致CPU一直要等待内存,浪费资源。cache的出现就是为了缓解CPU和内存之间速度的不匹配问题(速度比较:cpu > cache > memory)。

78b154faddc0337b5e9ad8f245a75c36.pngCpu和内存

而随着半导体技术的进步,Cache就被整合到了Cpu。在工作速度上,Cache可以接近Cpu。

CPU第一条指令的运行

要说CPU中为什么有Cache,那我们就不得不从计算机开机原理开始说起。当我们电脑刚开机的时候,Cpu就要开始运行第一条位于0xFFFFFFF0的指令,这条指令是存在主板的Flash上,也就是我们常说的BIOS芯片。既然CPU要运行指令,就需要一个环境。

ee738be583c23114a62377a143272ddb.png

可是刚开机的时候,内存才刚开始上电,作为一个硬件,内存也需要进行一系列的初始化才能正常工作,显然指令不能在内存上运行。因此,Cache就发挥出作用了,替代内存给指令提供运行环境,直到内存初始化之后,才将主要的运行环境转移到主板上的内存。

Cache缓存的分级和容量

随着cache的引入,cache和内存之间的工作频率差别又会被慢慢拉大。为了照顾内存的访问速度,又引入了下一级的cache,其容量比第一级大,速度比第一级慢。对于现在主流的三级Cache来说,也是同理。

需要提出的是,目前Cpu的第一级Cache略显特殊,就像我们的硬盘会分区一样,各个分区存贮的数据性质不一样。第一级Cache分为数据缓存和代码缓存,这样的区分除了更好的管理数据之外,效率也会得到很大提升。

f808a0c348cff77f140bdc0c1b07eeea.png多核Cpu的三级Cache结构

据此,我们就不难理解Cache的工作原理:当Cpu需要取数据的时候,先去Cache中看是否存在,如果Cache中存在,便直接拿来使用;如果Cache中不存在,才会去内存中寻找,找到之后,便会存在Cache中以备后用。所以,Cache的容量越大,可存储的数据就会越多。如果计算机需要的大部分都会第一时间在Cache中被找到,电脑运行速度也就更快了。

ef12e7e6dbff26fc4e1a3bfbc0b42c2d.png数据交互

所以,当你需要处理一些数据交互很频繁的任务时候,也需要一款优秀的CPU。数据的吞吐性能会影响主机的整体性能,这也是为什么在推荐装机的时候,先问你的需求来选取合适的CPU,毕竟其作为灵魂的存在。

作为一名数码科技爱好者,旨在为小伙伴们科普更多小知识,喜欢内容的话,关注一下呗。

举报/反馈

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值