存储器山
概念
存储器山(Memory Mountain)是 CSAPP 中用来可视化存储器层次结构性能的二维图形。
两个维度
- 空间局部性(x 轴:步长 stride) -小步长 良好的空间局部性 -大步长 差的空间局部性
- 时间局部性(y 轴:工作集大小) -小工作集 良好的时间局部性(能放入缓存) -大工作集 差的时间局部性(超出缓存容量)
读带宽
读带宽 = f(时间局部性, 空间局部性)
- 读带宽以 MB/s 度量
- 作为三维图中的 z 轴(高度)
山的形状
- 山峰:小步长 + 小工作集(L1 缓存命中)
- 山脊:小步长 + 中等工作集(L2/L3 缓存命中)
- 山谷:大步长 + 大工作集(主存访问 + 差局部性)
- 从山顶到山谷的悬崖标志着不同缓存级别之间的过渡
实际应用
- 通过存储器山可以直观了解:不同的缓存友好程度如何影响实际带宽
- 为等算法优化提供理论依据
相关笔记:
链接到
- 上一个知识点:6.17 缓存性能分析
- 下一个知识点:6.19 矩阵乘法优化