Cache —— 局部性原理和工作原理
创作时间:
作者:
@小白创作中心
Cache —— 局部性原理和工作原理
引用
CSDN
1.
https://blog.csdn.net/starter_____/article/details/97389110
Cache是计算机系统中非常重要的一部分,它利用程序访问的局部性原理,通过将正在使用的数据存储在高速缓存中,从而提高程序的执行效率。本文将详细介绍Cache的工作原理、性能指标以及相关的技术细节。
一、程序访问的局部性原理
程序访问的局部性原理包括时间局部性和空间局部性。
- 空间局部性:在最近的未来要用到的信息(指令和数据),很可能与现在正在使用的信息在存储空间上是邻近的。
- 时间局部性:在最近的未来要用到的信息,很可能是现在正在使用的信息。
高速缓冲技术是利用程序访问的局部性原理,把程序中正在使用的部分存放在一个高速的、容量较小的Cache中,使CPU的访存操作大多数针对Cache进行,从而大大提高程序的执行速度。
二、Cache的基本工作原理
Cache位于存储器层次结构的顶层,通常由SRAM构成。
Cache和主存都被分成若干大小相等的块(Cache块又称为Cache行),每块由若干字节组成,块的长度称为块长(Cache行长)。所以Cache中的块数要远少于主存中的块数,它仅保存主存中最活跃的若干块的副本。
CPU与Cache之间的数据交换以字为单位,而Cache与主存之间的数据交换则以Cahce块为单位。
- 当CPU发出读请求时,若访存地址在Cache中命中,就将此地址转换成Cache地址,直接对Cahce进行读操作,与主存无关;若访存地址在Cache中未命中,则需访问主存,并把此字所在的块一次性地从主存调入Cache,若此时Cache已满,则需根据某种替换算法,用这个块替换Cache中原来的某块信息。
- 当CPU发出写请求时,若Cache命中,有可能会遇到Cache与主存中的内容不一致的问题,此时需要根据某种写策略解决这个问题。
三、Cahce的性能指标
与Cahce有关的性能指标主要有:命中率,缺失率和平均访问时间。
1. 命中率H:
- CPU欲访问的信息已在Cache中的比率
设一个程序执行期间,Cache的总命中次数为N c N_cNc ,访问主存的总次N m N_mN
热门推荐
速度最快的大型猫科动物是哪一种
基于Gitlab Runner 快速实现 Gitlab 自动部署
浪涌保护器的放电电流如何选择,最大放电电流怎么选?
国际金价超3100美元创新高,“上门回收黄金”标价套路多
网络弄潮“说书人”
儿童注意力训练10个方法
再审诉讼请求如何写
市政道路excel怎么算纵断面
19张图带你看1987版语文教材,网友:原来那时候的教材如此精美
高铁可以携带白酒吗?先看这篇攻略,避免踩坑又省心!
茅台酒运输的要求有哪些?这些要求如何保证产品质量?
八大贵金属的种类及投资价值是什么?这些种类和投资价值在贵金属市场中有怎样的表现?
“诗书画印”:中国画综合艺术之美的深度探索
合肥、芜湖、蚌埠、铜陵……安徽省各城市名字是怎么来的?
老街区里潮流新 | 安庆:“街”续文脉,焕新活力
马超召唤师技能选择深度解析,实战应用策略与效果评估
老年人轻度脑梗要注意什么
清朝的杰出将领:军事才能与治国智慧
一文了解多层瓷介电容器(MLCC)
宠物小精灵xymega图鉴-《超进化精灵》图鉴
关汉卿:元杂剧奠基人,通过描写女性的遭遇和命运,为她们发声
工业传感器选型:PNP和NPN两种类型应该如何选?
高铁速度那么快,动力来源到底是什么?
手术后的饮食怎么搭配,才能快速恢复
超焦距摄影技巧:让照片从近到远都清晰锐利
宁夏石嘴山 非遗葫芦画里的情谊
AI公司排名标准分析:评估行业领导者的关键指标
梦见胎儿的深层含义与心理解读
超越千兆的“百元计划”:手把手教你部署2.5G家庭内网
如何成功注册与运营香港跨境电商公司:全方位指南