原文:http://blog.163.com/tyw_andy/blog/static/1167902120099128381221/

CPU缓存
缓存大小也是CPU的重要指标之一,而且缓存的结构和大小对CPU速度的影响非常大,CPU内缓存的运行频率极高,一般是和处理器同频 运作,工作效率远远大于系统内存和硬盘。实际工作时,CPU往往需要重复读取同样的数据块,而缓存容量的增大,可以大幅度提升CPU内部读取数据的命中 率,而不用再到内存或者硬盘上寻找,以此提高系统性能。但是由于CPU芯片面积和成本的因素来考虑,缓存都很小。
L1 Cache(一级缓存)是CPU第一层高速缓存,分为数据缓存和指令缓存。内置的L1高速缓存的容量和结构对CPU的性能影响较大,不过高速缓冲存储器均 由静态RAM组成,结构较复杂,在CPU管芯面积不能太大的情况下,L1级高速缓存的容量不可能做得太大。一般服务器CPU的L1缓存的容量通常在32— 256KB。
L2 Cache(二级缓存)是CPU的第二层高速缓存,分内部和外部两种芯片。内部的芯片二级缓存运行速度与主频相同,而外部的二级缓存则只有主频的一半。 L2高速缓存容量也会影响CPU的性能,原则是越大越好,现在家庭用CPU容量最大的是512KB,而服务器和工作站上用CPU的L2高速缓存更高达 256-1MB,有的高达2MB或者3MB。
L3 Cache(三级缓存),分为两种,早期的是外置,现在的都是内置的。而它的实际作用即是,L3缓存的应用可以进一步降低内存延迟,同时提升大数据量计算 时处理器的性能。降低内存延迟和提升大数据量计算能力对游戏都很有帮助。而在服务器领域增加L3缓存在性能方面仍然有显著的提升。比方具有较大L3缓存的 配置利用物理内存会更有效,故它比较慢的磁盘I/O子系统可以处理更多的数据请求。具有较大L3缓存的处理器提供更有效的文件系统缓存行为及较短消息和处 理器队列长度。
其实最早的L3缓存被应用在AMD发布的K6-III处理器上,当时的L3缓存受限于制造工艺,并没有被集成进芯片内部, 而是集成在主板上。在只能够和系统总线频率同步的L3缓存同主内存其实差不了多少。后来使用L3缓存的是英特尔为服务器市场所推出的Itanium处理 器。接着就是P4EE和至强MP。Intel还打算推出一款9MB L3缓存的Itanium2处理器,和以后24MB L3缓存的双核心Itanium2处理器。
但基本上L3缓存对处理器的性能提高显得不是很重要,比方配备1MB L3缓存的Xeon MP处理器却仍然不是Opteron的对手,由此可见前端总线的增加,要比缓存增加带来更有效的性能提升。

高速缓冲存储器Cache是位于CPU与内存之间的临时存储器,它的容量比内存小但交换速度快。
  在Cache中的数据是内存中的一小部分,但这一小部分是短时间内CPU即将访问的,当CPU调用大量数据时,就可避开内存直接从Cache中调用, 从而加快读取速度。由此可见,在CPU中加入Cache是一种高效的解决方案,这样整个内存储器(Cache+内存)就变成了既有Cache的高速度,又 有内存的大容量的存储系统了。
  Cache对CPU的性能影响很大,主要是因为CPU的数据交换顺序和CPU与Cache间的带宽引起的。
高速缓存的工作原理
1、读取顺序
  CPU要读取一个数据时,首先从Cache中查找,如果找到就立即读取并送给CPU处理;如果没有找到,就用相对慢的速度从内存中读取并送给CPU处 理,同时把这个数据所在的数据块调入Cache中,可以使得以后对整块数据的读取都从Cache中进行,不必再调用内存。
  正是这样的读取机制使CPU读取Cache的命中率非常高(大多数CPU可达90%左右),也就是说CPU下一次要读取的数据90%都在Cache 中,只有大约10%需要从内存读取。这大大节省了CPU直接读取内存的时间,也使CPU读取数据时基本无需等待。总的来说,CPU读取数据的顺序是先 Cache后内存。
2、缓存分类
  前面是把Cache作为一个整体来考虑的,现在要分类分析了。Intel从Pentium开始将Cache分开,通常分为一级高速缓存L1和二级高速缓存L2。
  在以往的观念中,L1Cache是集成在CPU中的,被称为片内Cache。在L1中还分数据Cache(I-Cache)和指令Cache(D- Cache)。它们分别用来存放数据和执行这些数据的指令,而且两个Cache可以同时被CPU访问,减少了争用Cache所造成的冲突,提高了处理器效 能。
  在P4处理器中使用了一种先进的一级指令Cache——动态跟踪缓存。它直接和执行单元及动态跟踪引擎相连,通过动态跟踪引擎可以很快地找到所执行的指令,并且将指令的顺序存储在追踪缓存里,这样就减少了主执行循环的解码周期,提高了处理器的运算效率。
  以前的L2Cache没集成在CPU中,而在主板上或与CPU集成在同一块电路板上,因此也被称为片外Cache。但从PⅢ开始,由于工艺的提高 L2Cache被集成在CPU内核中,以相同于主频的速度工作,结束了L2Cache与CPU大差距分频的历史,使L2Cache与 L1Cache在性能上平等,得到更高的传输速度。
  L2Cache只存储数据,因此不分数据Cache和指令Cache。在CPU核心不变化的情况下,增加L2Cache的容量能使性能提升,同一核 心的CPU高低端之分往往也是在L2Cache上做手脚,可见L2Cache的重要性。现在CPU的L1Cache与L2Cache惟一区别在于 读取顺序。

CPU之CPU一级\二级\三级缓存相关推荐

  1. 硬件 - CPU 为什么要分一级二级三级缓存

    文章目录 硬件 - CPU 为什么要分一级二级三级缓存 1.为什么要给 CPU 设置缓存 2.L1 Cache.L2 Cache.L3 Cache 3.三个级别的缓存与内存数据交互速度的大概对比 4. ...

  2. 【CPU缓存】一级二级三级缓存

    CPU缓存   CPU缓存(Cache Memory)是位于 CPU 与内存之间的临时存储器,它的容量比内存小的多,但是交换速度却快得多.   CPU运算速度要比内存读写速度快很多,这样会使CPU花费 ...

  3. 计算机一级二级三级缓存,挑选CPU主要看那几个功能,主频,一级,二级,三级缓存有是什么意思?...

    选择cpu主要是看CPU的主频.总线.一级缓存.二级缓存几个方面: 1.主频,也就是CPU的时钟频率,简单地说也就是CPU的工作频率.一般说来,一个时钟周期完成的指令数是固定的,所以主频越高,CPU的 ...

  4. 天津二级计算机考试地点,2016年9月天津计算机一级二级三级四级考点地址电话...

    2016年9月天津计算机等级考试考点    2016年9月天津计算机一级二级三级四级考点地址电话 代码 考点名称 报名地点 报名电话 1    120001 天津医学高等专科学校 河西区柳林路14号教 ...

  5. 2021CFA一级二级三级预测 结合十余年实践总结

    2021CFA一级二级三级预测是结合十余年实践总结,针对CFA考试重难点分析,预测CFA考试必考要点的习题资料,也是市面上很少有带详细答案解析以及视频解析的优质题目,每年考点准确度高达90%以上,考一 ...

  6. 2023CFA一级二级三级视频网课

    2023CFA一级二级三级视频网课已出,要的童鞋留邮箱!

  7. 2020年12月CFA一级二级三级百题预测

    2020年12月CFA一级二级三级百题预测下载链接:https://pan.baidu.com/s/1uZ6UvB-tYR81Kq6z1fiidQ 密码:l3w1 是结合十余年实践总结,针对CFA考试 ...

  8. 2020年12月最新CFA一级二级三级百题预测+答案解析下载pdf

    2020年12月最新CFA一级二级三级预测是结合十余年实践总结,针对CFA考试重难点分析,预测CFA考试必考要点的习题资料,也是市面上很少有带详细答案解析以及视频解析的优质题目,每年考点准确度高达90 ...

  9. CPU 与 内存之间的三级缓存的实现原理

    一. CPU 与 Memory 内存之间的三级缓存的实现原理 1.1 cache 存在的原理   引入 Cache 的理论基础是程序局部性原理,包括时间局部性和空间局部性.时间局部性原理即最近被CPU ...

最新文章

  1. excel文件无法打印提示内存不足_三星打印机无法扫描文件?来看看她的详细解决办法...
  2. 微信小程序开发框架从入门到放弃
  3. 下载并导出数据到execl中
  4. 交换机putty怎么调试_使用在300和500系列托管型交换机的一个控制台连接通过PuTTY访问CLI...
  5. vba下拉框实现记忆功能_VBA | 这个二级下拉菜单挺有趣!
  6. 在ie6下文字颜色不兼容的解决方法
  7. mysql 5.5.32备份数据库_十六、mysql的备份与恢复(二)--mysqldump
  8. JSP 页面实现一个计算器功能
  9. 啊哈 算法 啊哈磊 扫描版pdf
  10. linux -IOMMU
  11. 如何从任何Mac或Windows PC为iOS打印启用AirPrint
  12. 2022全球量子通信产业发展报告
  13. JS动态添加HTML元素
  14. 如何进行EMC Symmetrix (DMX或者VMAX)的系统健康检查
  15. oh my zsh详细安装教程
  16. 游戏一旦开始,结局就不是你能控制的!
  17. mysql 关闭一个实例_mysql 多实例关闭、启动、查看状态
  18. JDBC连接执行mysql存储过程报权限错误:User does not have access to metadata required to determine stored procedure
  19. guava之EventBus
  20. 签名证书keystore,jks,pk8,x509.pem

热门文章

  1. python参考手册文字版_python参考手册一书笔记之第一篇上
  2. 十年游戏老兵,如何开发出一款受索尼青睐的VR游戏?
  3. SqlServer中Sql语句的逻辑执行顺序
  4. python计算前n个自然数的阶乘之和_Python计算前n个自然数的阶乘和
  5. 计算机术语fsb是什么意思,fsb(电脑术语:前端总线)_百度百科
  6. 企业上云:“云咨询”先行,“强平台”筑底
  7. Boot failure on device
  8. 必看系列—SCI论文投稿之那些你疑惑的事(附参考模板)
  9. 什么输入法对计算机英语,电脑输入法不见了,只能打英文怎么处理
  10. JPA中No entity found for query