缓存核心概念速查表
更新时间:2026-10-01。这是 README 之外的“一页复习卡”,把全专题关键概念、公式和对策浓缩。
一、术语速查
- hit/miss:请求在/不在缓存;line:最小传输块(常 64B)。
- set/way:组与每组行;直接/组相联/全相联(见 映射)。
- MSHR:在途缺失记录,决定 MLP。
- inclusive/exclusive/NINE:多级包含关系。
- write-back/through:写策略;MESI:一致性状态。
二、公式
- AMAT = 命中时间 + 缺失率 × 缺失代价。
- 命中率 = 1 − misses/references。
- reach(TLB)= 条目数 × 页大小。
三、问题 → 对策
| 现象 | 首选对策 |
|---|---|
| capacity miss 高 | 分块 tiling、冷热分离 |
| conflict miss | 提高相联/改数据布局 |
| false sharing | 行对齐 + 填充 |
| 锁慢 | 分片/队列锁、锁独占行 |
| 扫描污染 | RRIP/non-temporal 访问 |
| 首次慢 | 预热(稳态)/接受冷启动(真实体验) |
四、诊断
perf stat -e cache-misses,cache-references,LLC-load-misses ...,算命中率并结合 top-down 归因(见 计数器)。
小结
缓存优化主线:先量化(命中率/AMAT/缺失分类)→ 归因(容量/冲突/一致性)→ 对症(布局/分块/隔离/预取)。本专题 50 篇至此完整覆盖从硬件机制到工程实战。
总结
缓存优化先分清 miss 类型:capacity 用分块 tiling/冷热分离,conflict 改相联/布局,false sharing 行对齐填充;用性能计数器确认后再改,别盲目填充或预取。