当前位置:首页 > > 21ic电子网
[导读]由于CPU是核心硬件,相信我们在选择CPU的时候都会去关心CPU参数方面,而在CPU核心参数中,我们经常会看到缓存(Cache)这个参数,那么CPU缓存有什么用?下面科普一下关于CPU缓存的作用。 CPU没有存储功能,那么缓存到底是干什么的?CPU缓存是用于减少处理器访


由于CPU是核心硬件,相信我们在选择CPU的时候都会去关心CPU参数方面,而在CPU核心参数中,我们经常会看到缓存(Cache)这个参数,那么CPU缓存有什么用?下面科普一下关于CPU缓存的作用。



CPU没有存储功能,那么缓存到底是干什么的?CPU缓存是用于减少处理器访问内存所需平均时间的部件,作用类似于CPU内部的内存。


CPU缓存有什么用?来,科普一下!

更详细来讲,在计算机系统中,CPU高速缓存在金字塔式存储体系中它位于自顶向下的第二层,仅次于CPU寄存器。其容量远小于内存,但速度却可以接近处理器的频率,比内存快得多。

缓存的出现主要是为了解决CPU运算速度与内存读写速度不匹配的矛盾,因为CPU运算速度要比内存读写速度快很多,这样会使CPU花费很长时间等待数据到来或把数据写入内存。

按照数据读取顺序和与CPU结合的紧密程度,CPU缓存可以分为一级缓存,二级缓存,部分高端CPU还具有三级缓存。


之所以CPU需要采用这种层级结构,主要就是是从成本、性能、容量还有面积上来平衡的。


  1. 提升命中率:所谓的命中率是在高速缓存中找到内存引用的速率,我们希望能够首先通过缓存中获得信息,以得到速度优势,所以缓存需要最大限度地实现这一目标。对于单个高速缓存,大小、关联性和块大小决定命中率。


  2. 降低更低级别内存下的开销:高速缓存是内存层次结构的一部分,其性能会影响其它性能,处理其它内存花费的时间越长,意味着系统性能越低,也就是说尽可能让处理在缓存中完成。


  3. 减少错失惩罚:缓存中不能命中是无法避免的事情,但是我们可以减少处理未命中所需的时间以获得更好的处理器性能,通过提升命中率并通过应用不同的优化,能够降低错失惩罚。


高速缓存是CPU中十分重要的部分,占据了大量的资源开销和成本,如果您看过CPU架构图的话,您就会发现缓存占据了至少50%的面积,绝对至关重要。


免责声明:本文系网络转载,版权归原作者所有。如有问题,请联系我们,谢谢!

免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

21ic电子网

扫描二维码,关注更多精彩内容

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读

不少团队把应用切成容器后,以为节点上线会更灵活。边缘计算真到现场时,最先暴露的往往不是编排能力,而是冷启动被镜像拉取和层展开拖得过长。

关键字: 边缘计算 冷启动 CPU

在现代多核CPU的高并发编程领域,Cache伪共享是最隐蔽也最容易被忽略的性能杀手,结合我们之前深入探讨过的C++内存模型、无锁队列实现、Mutex互斥锁优化等工程实践经验,很多开发者在编写高并发多线程代码时,明明逻辑上...

关键字: CPU 伪共享

在电力电子系统全面转向数字化的当下,很多工程师都会遇到一个看似矛盾的现象:明明选用了主频足够高的数字信号控制器,算法逻辑也经过反复验证没有问题,但最终整机的稳态精度和动态性能,始终达不到理论仿真的预期。反复排查软件逻辑后...

关键字: 数字控制 CPU

机器人产业的真正分水岭,可能既不在算力大小,也不在模型参数的多寡。在各类人形机器人、自主移动机器人与智能工业系统密集亮相的当下,一个更本质的问题正在被反复追问:一台已经掌握多项技能的机器人,为什么换一个场景、换一个任务,...

关键字: ARM 物理 AI 机器人 泛化能力 CPU 运动控制

微软和亚马逊云科技最新财报传递出同一个信号:基于 Arm 架构的 CPU 已成为智能体 AI 的核心基础设施。

关键字: 云计算 CPU AI

很多现场节点一遇到吞吐瓶颈,就想把内存复制次数砍掉。边缘计算若把零拷贝只当成省一次 memcpy,很容易把新的时延和一致性问题带进主链路。

关键字: 边缘计算 零拷贝 CPU

我们已经过了仅凭演示效果来评判人工智能 (AI) 基础设施的阶段。如今,更关键的问题在于,这些能力能否以可靠、可扩展且具备成本效益的方式交付。这正是我们在设计下一代 AI 基础设施过程中,与云服务提供商、芯片合作伙伴及系...

关键字: 人工智能 CPU 自研芯片

如果我们用Arduino核心在ESP8266上写任何代码,很可能已经遇到了这个瓶颈。你写的每一行代码都运行在loop()函数内部,而loop()是协作式的——它从上到下依次执行,只有在完成所有操作后,SDK才会有机会进行...

关键字: Arduino CPU LED ESP8266

本项目记录了将一块基于STM32F407的空开发板,通过将其内部12位数模转换器(DAC)连接至PA4引脚,成功改造为功能完整的模拟信号发生器的过程。从完全零基础构建的裸机模板出发,在调试固件配置方面积累了极为丰富的学习...

关键字: CPU 信号发生器 定时器 STM32F407

核心数量提升33%、PCIe带宽提升至2倍、内存带宽提升至2.6倍,大幅强化高性能工作负载的运行。 搭载第六代AMD EPYC CPU和AMD Instinct™...

关键字: AMD CPU MICRO SUPER
关闭