组关联缓存机制

本文深入探讨了2路组关联缓存作为内存管理的一种机制,它是直接映射和全连接缓存的折衷方案。在2路组关联缓存中,每个内存块有两个可能的缓存位置,当两个位置都被占用时,使用LRU等替换策略。该机制通过减少主存访问提高性能,其核心是取模与多分支选择的优化,类似于二分图匹配。不命中时则会查找下一级缓存或回溯到主存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文是对游戏引擎架构第三章第四节内容的补充性笔记。

本节讲述了一种内存/缓存管理机制,由于从主存中调用相关内容是一件开销非常高昂的行为,因此使用缓存线方式从主存中调用一块内存放入缓存,而相应的缓存对主存的一对多的取模映射关系称为直接映射。

本文补充2路组关联缓存部分内容(2-way set-associative cache)。

组关联缓存(set-associative cache)

组关联缓存是一种直接映射(direct-mapped)与全连接缓存(fully associative cache)的折衷解决方案。

他将内存表示为一个n*m的矩阵,也就是将每个内存块映射到m个缓冲路中的一条。

类似于二分图匹配。

给与每个内存两个缓存位置选择,如果两个位置都被占领,优先选择可能索引开销小的(通常采用LRU,具体参考操作系统的内存调度算法)。如下图所示:

 

 主干为取模与多分支选择,实质就是二分图匹配的加强版。不命中操作为检查下一级缓存,否则调取主存。

https://en.wikipedia.org/wiki/CPU_cache#Replacement_policiesicon-default.png?t=LA92https://en.wikipedia.org/wiki/CPU_cache#Replacement_policies参考CPU缓存。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值