CPU的缓存设计是为了更快的数据处理速度,因为电脑的硬盘尤其是机械硬盘速度非常慢,比起CPU动辄几Ghz的频率差太多了,这样如果CPU直接从硬盘调取数据就需要大量的时间等待,从而导致降低性能,无法充分发挥CPU的性能优势,在这种情况下就为CPU设计了专用缓存,过去缓存是和CPU本体分离的,随着半导体工艺的进步,CPU缓存就完全融为一体了,速度也比以前更快 。
【CPU的一二三级缓存有什么用处?】
文章插图
CPU为什么要设计一二三级缓存?因为一级缓存的速度是最快的,同时也是最复杂的,限于CPU核心面积,一级缓存不可能设计的很大,所以到现在的CPU的一级缓存也不过以KB来计算 。
二级缓存主要就是用来弥补一级缓存容量的不足,因为缓存再快要是存储不了多少数据也会降低性能,这样二级缓存就使用了不同的结构以增大容量为主,目前主流CPU的二级缓存容量都是一级缓存的好几倍,但是在多核CPU中,每个核心的二级缓存都是独立的 。
文章插图
三级缓存出现的最晚,它是为了进一步增大CPU缓存容量以提高命中率来设计的,和二级缓存不同的是,三级缓存一般都是CPU所有核心共享的缓存,这样设计可以大大提高CPU利用缓存的效率和灵活度,也是目前CPU缓存最大的一类 。
文章插图
CPU缓存的结构设计和内存是不同的,内存DRAM芯片结构更适合做大容量,所以能轻易做到以G为单位的容量,但是速度比起CPU内部缓存就慢很多,内存是作为CPU与硬盘之间的数据存储功能,在速度上从快到慢是一级缓存>二级缓存>三级缓存>内存>硬盘,电脑正是通过这样的设计一方面尽可能提高了CPU的速度,另一方面把整体成本降低到合理区间 。
推荐阅读
- js实现继承的方法以及优缺点
- 内存运行频率是由谁决定的?
- 一个西葫芦包子的热量 西葫芦的热量
- 凉拌丝瓜尖的做法 丝瓜可以凉拌吗
- JavaScript函数的6个基本术语
- go语言网络编程之session的实现
- 如何正确安装使用路由器?
- MySQL核心:索引结构原理
- 淘宝违规是什么原因造成的 淘宝违规了怎么解决啊
- MySQL全局锁表锁&行锁