Memory Hierarchy and Cache(存储层次与 Cache)
内存墙 (Memory Wall):CPU 算力增速 >> DRAM 延迟改善(~7%/年)→ Cache 层次是过去 30 年 CPU 设计的核心。DRAM 物理层时序、HBM 带宽与 Roofline 见 DRAM and Memory System。
完整访存路径(含 TLB)
虚拟地址 → TLB → 物理地址 → L1 → L2 → L3 → DRAM
TLB 在 Cache 之前;详见 Virtual Memory and TLB。AI 大工作集需巨页,否则 TLB Miss 代价可超过 L3 Miss。
存储层次(典型延迟量级)
| 层级 | 延迟 | 容量 |
|---|---|---|
| Register | < 1 ns | ~KB |
| L1 | ~1–2 ns | 32–64 KB |
| L2 | ~3–10 ns | 256 KB–1 MB |
| L3/LLC | ~10–20 ns | 8–64 MB |
| DRAM | ~80–100 ns | GB 级 |
| NVMe | 50 μs–10 ms(GC) | TB 级 |
理论基础:Quantitative Architecture Fundamentals 中的局部性原理。
Cache 基础
- 映射:直接映射 / 组相联 / 全相联
- 写策略:Write-through vs Write-back
- 替换:LRU 近似
- Cache Line:通常 64 B,利用空间局部性
3C Miss 模型
Miss Rate = Compulsory + Capacity + Conflict
| 类型 | 原因 | 对策 |
|---|---|---|
| Compulsory | 首次访问 | 预取 |
| Capacity | 工作集 > Cache | 增大容量 |
| Conflict | 映射冲突 | 提高相联度 |
AMAT 优化总框架
AMAT = Hit Time + Miss Rate × Miss Penalty
多层递归:L1 miss → L2 → L3 → DRAM。
三类优化方向:
- 降低 Hit Time — 小而简单 L1、流水线访问
- 降低 Miss Rate — 容量、相联度、预取、编译器布局
- 降低 Miss Penalty — 多级 Cache、非阻塞 Cache、读优先
WSE「无传统 Cache」对比
| 传统 CPU | Cerebras WSE | |
|---|---|---|
| 层次 | Register → L1/L2/L3 → DRAM | PE + 片上 SRAM,无 L1/L2/L3 |
| 动机 | 隐藏 DRAM 延迟 | 44 GB SRAM + 编译器 placement |
| 代价 | Cache Coherence、AMAT 调优复杂 | SRAM 容量上限、编程模型约束 |
理解 CPU Cache 优化「工具箱」,才能评估 SRAM-first(LPU、WSE)放弃 Cache 的权衡。
相关页面
- Cache Coherence — MESI、Snooping/Directory、False Sharing
- DRAM and Memory System — Row Buffer、HBM、内存墙
- Virtual Memory and TLB — 地址转换层
- DSA Processor Design Tradeoffs — CPU vs WSE 能力矩阵
- 3D-Stacked AI Chip — DRAM 带宽与 NoC
- Prefill-Decode Resource Divergence — memory-bound decode
- Reasoning Cliff — KV/HBM 饱和
- SSD and NVMe Storage System — 片外 SSD/NVMe tier
- End-to-End Memory Data Path — load 全路径与 AMAT 层级(Day 22)
Citations
[1] arch-study-30d-day-13.md — H&P Ch.2 存储层次(Day 13) [2] arch-study-30d-day-14.md — AMAT 与 Cache 优化(Day 14) [3] arch-study-30d-day-15.md — TLB 与访存路径(Day 15) [4] arch-study-30d-day-17.md — DRAM/HBM(Day 17) [5] arch-study-30d-day-20.md — SSD/NVMe(Day 20)