Cache(高速缓冲存储器)

Cache是为了解决CPU与主存速度不匹配以及I/O设备访问冲突问题而存在的。它通过预存CPU近期需要的指令和数据,提供高速访问,提升系统性能。当CPU访问的数据在Cache中时称为命中,否则发生Cache miss,需要从主存加载整个子块到Cache。局部性原理是Cache设计的基础,确保了有效利用Cache空间。
摘要由CSDN通过智能技术生成

Cache(高速缓冲存储器)

什么是Cache

在多行并行存储系统中,由于I/0设备像内存请求的级别高于CPU访存,出现CPU等待I/0设备访存的现象,致使CPU空等一段时间,降低了CPU工作效率。为了避免与I/0争抢方寸,在CPU与主存中加一级缓存。这样,主存可以将CPU要取的信息提前送至缓存,一旦主存与I/0设备进行访问时,CPU可以在直接从缓存中读取所需信息,不必空等而影响效率。

另一角度看,主存速度的提高跟不上CPU的发展,希望由高速缓存Cache解决主存与CPU之间速度不匹配问题。

CPU在从主存中取指令与数据时,在一定时间内,只访问主存局部地址区域。这是因为指令和数据在主存中都是连续存放的,并且有些指令和数据会被多次调用(子程序,循环,常数),也就是说指令和数据在内存的地址分布不是随机的,而是相对的簇聚,使得CPU在执行程序时,访存具有相对的局部性,这就被称为程序访问的局部性,

那么只要将CPU近期用到的程序与数据提前从主存中送到Cache,那么CPU就在一段时间内只访问Cache。

Cache miss
  • 当CPU想要读取某个字,有两种可能,第一所需要的字已在Cache中,可以直接访问Cache(CPU与Cache之间通常一次传送一个字),这种情况下叫做:CPU访问Cache命中
  • 第二种可能,当访问的而数据不在Cache内时,此时将字所在的主存整个子块一次调入Cache种(Cache与主存之间是子块传送),这种情况下叫做:CPU访问Cache不命中也就是 Cache miss。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值