计组复习-cache

本文详细探讨了高速缓存器(Cache)的构成、地址映射方法(全相联、直接地址映射、组相联)、替换算法(FIFO、LRU、LFU)以及性能指标(命中率、平均访问时间、加速比)。通过理解这些概念,提升对现代计算机内存系统效率的关键认识。
摘要由CSDN通过智能技术生成

Cache的复习

  1. Cache,又名高速缓存器,是为了协调CPU和主存的速度而出现的一种高速的,小的存储器。

Cache主要由两部分组成,一部分是一个存储器,另一部分是一个地址变换与映射表,这个映射表完成了最重要的功能,将主存地址转换成Cache地址。

具体的实施过程是cpu拿到主存地址,去Cache里找有没有,有的话称为命中,转换地址,没有的话就从主存里读取。

  1. 根据这个寻找的过程对地址映射进行分类
    1. 全相联地址映射

对主存和Cache地址都进行分块,主存中一块存储可以装进Cache里任意一块地方

缺点:在Cache里查找起来比较麻烦,需要遍历

    1. 直接地址映射

对主存进行分区再分块,在不同的区里存在相同的块号,区的长度与Cache分块后的数目相同。主存中每个与Cache相同的块号都可以填装,是多对一的关系

缺点:如果有相同块号不同区的块需要频繁更替访问,即使Cache中有其他的空闲块也不能用

    1. 组相联地址映射

对主存分区再分块,对Cache分路再分组和块

采用组间直接地址映射,组内全相联的方式

优点:结合二者的一个的输入的方便和另一个的不浪费

  1. 替换算法

替换算法的核心是替换后对命中率的影响,理想状态是OPT,在假设已知未来的情况下,替换掉那个未来最不会使用的,其他的都是在过去的基础上进行修正

FIFO(先进先出),RAND(随机),OPT(最优选择)

LRU(最近最少使用):从现在往前看,以使用的时间为标准,越近越不会被替换

LFU(最不频繁使用):从现在往前看,使用频率最高的最不会替换,频率一样,参见LRU

  1. 更新策略

更新策略的前提是主存和Cache的一致性,但是CPU可以修改Cache的数据,所以我们提出的方法是写入主存

写回法:在修改块被替换时写回主存

写直达法:修改Cache时也修改主存

  1. 性能指标
    1. 命中率

h/hc

    1. 平均访问时间

T=h*Tc+(1-h)*(Tc+Tm)

    1. 加速比

S=Tm/T

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值