文章目录
- 线索栏
- 笔记栏
-
- 1.核心观点
- 2.详细分析
-
- 1)层次结构的构成与趋势(见图1-9)
-
- 组织方式
- 变化趋势(从上到下):
- 具体层级示例:
- 2)层次结构的核心工作原则
-
- 缓存思想
- 数据流动
- 具体缓存链:
- 3)对程序员的意义
- 总结栏
线索栏
笔记栏
1.核心观点
计算机系统中不同速度、容量和成本的存储设备被组织成一个存储器层次结构,其核心思想是用更小、更快、更贵的存储设备作为更大、更慢、更便宜的存储设备的高速缓存,从而在成本和速度之间取得最佳平衡。
2.详细分析
1)层次结构的构成与趋势(见图1-9)

组织方式
所有存储设备被组织成一个金字塔形的层次结构。
变化趋势(从上到下):
(1)速度:越来越慢 (2)容量:越来越大 (3)每字节成本:越来越便宜
具体层级示例:
(1)L0:寄存器 在CPU内部,速度最快,容量最小(KB级)。 (2)L1-L3:高速缓存(SRAM) 在CPU芯片上或附近,速度极快,容量较小(KB-MB级)。 (3)L4:主存(DRAM) 速度较慢,容量较大(GB级)。 (4)L5:本地二级存储(磁盘) 速度慢,容量大(TB级),持久化。 (5)L6:远程二级存储(分布式文件系统、云存储) 速度最慢(受网络限制),容量近乎无限。
2)层次结构的核心工作原则
缓存思想
上一层的存储设备作为下一层设备的高速缓存。
数据流动
常用数据被向上复制到更快、更小的存储层;不常用的数据则被向下驱逐到更大、更慢的存储层。
具体缓存链:
(1)寄存器 → 是 → L1高速缓存的缓存 (2)L1高速缓存 → 是 → L2高速缓存的缓存 (3)L2高速缓存 → 是 → L3高速缓存的缓存 (4)L3高速缓存 → 是 → 主存的缓存 (5)主存 → 是 → 本地磁盘的缓存 (6)(在网络系统中)本地磁盘 → 是 → 远程存储的缓存
3)对程序员的意义
(1)性能优化的关键 正如了解高速缓存(L1-L3)能提升程序性能一样,理解整个存储器层次结构,能让程序员编写出能高效利用所有层级(特别是主存和磁盘)的程序。 (2)数据局部性 程序具有良好的时间局部性(重复访问相同数据)和空间局部性(访问邻近数据),就能让数据更多地停留在高层级的快速存储中,从而极大提升运行效率。 (3)后续深入 第6章将详细探讨如何基于此层次结构编写高性能代码。
网硕互联帮助中心






评论前必须登录!
注册