End-to-End Memory Data Path(端到端存储数据路径)
arch-study 第三阶段(Day 17–22) 收官:把 DRAM、一致性、同步、SSD、NoC 从「分章知识点」拼成一条 load 指令的真实路径,并用 AMAT 量化各级贡献。
Source: arch-study-30d-day-22.md(Day 22 阶段总结)
传统 CPU 全路径
Core → L1 → L2 → LLC → NoC → Memory Controller → DRAM
↑ ↓ (写回/DMA)
└──────── coherence / atomic ← NoC ← 远端 Core/LLC
↓ (冷数据)
SSD / NVMe
| 层级 | 典型延迟 |
|---|---|
| L1 | ~1 cycle |
| L2 | ~10 cycles |
| LLC | ~40 cycles |
| NoC(跨 die) | ~10–50 ns |
| DRAM | ~100 ns(tRCD+tCAS+burst) |
| SSD/NVMe | 50 μs–10 ms(GC 尖峰) |
详见 Memory Hierarchy and Cache、DRAM and Memory System、SSD and NVMe Storage System、NoC Fundamentals (H&P Appendix F)。
AMAT 层级展开
AMAT = HT_L1 + MR_L1 × (HT_L2 + MR_L2 × (HT_LLC + MR_LLC × Penalty_DRAM))
必须用条件概率逐层嵌套——不能用 AMAT 算 AMAT。
教科书例题(L1: 1c/5% miss;L2: 10c/3%|L1 miss;LLC: 40c/30%|L2 miss;DRAM: 200c):
AMAT = 1 + 0.05 × (10 + 0.03 × (40 + 0.30 × 200))
= 1.65 cycles → @3 GHz ≈ 0.55 ns
贡献分解:
| 来源 | cycles | 占比 |
|---|---|---|
| L1 hit(必付) | 1.0 | 60.6% |
| L1 miss → L2 hit | 0.5 | 30.3% |
| → LLC hit | 0.06 | 3.6% |
| → DRAM | 0.09 | 5.5% |
敏感性结论(Day 22 练习):
- 降 L1 hit time 1→0.5 cycle:AMAT −30%(最大)——每次访问都付 hit time
- LLC miss rate 30→15% 或 DRAM 200→100 cycle:各仅 −2.7%——因 MR 小,深层优化乘积有限
- 启示:HBM「延迟减半」对 AMAT 收益小,除非 LLC miss 已很高
内存墙(Memory Wall)时间线
Wulf & McKee:内存访问时间改善远慢于 CPU 频率 → Memory_Wall_Gap = CPU_Clock / Memory_Access 单调增。
| 世代解药 | 机制 |
|---|---|
| Cache 层次 | L1/L2/L3 |
| Huge Pages | 减 TLB miss |
| Prefetch | 隐藏延迟 |
| HBM / 3D DRAM | 带宽解药,非延迟 |
| PIM | 重构数据移动方向 |
| WSE 式 | 消除 off-chip,全 on-chip SRAM |
见 Quantitative Architecture Fundamentals、DRAM and Memory System。
一致性协议决策树
需要 MESI/目录?
├── 共享地址空间? → 否 → 不需要(WSE 走此分支)
│ ├── 多核共享数据 + 同时读写? → 是 → 需要
WSE:每 PE 私有 SRAM + NoC 消息传递 → 无 MESI/Directory。见 Cache Coherence、Memory Consistency Model。
同步原语成本(量级)
| 原语 | 典型延迟 |
|---|---|
| Memory Fence (x86 MFENCE) | ~50–200 ns |
| Atomic CAS(L1 命中) | ~20–100 ns |
| Lock acquire | ~50–500 ns |
| Barrier(多核) | ~1–10 μs |
| WSE 硬件 barrier | ~1–10 ns(单时钟域 + 短链路) |
WSE 简化路径
传统: Core → L1 → L2 → LLC → NoC → MC → DRAM (~100+ ns 到 DRAM)
WSE: Core → on-chip SRAM(NoC 搬运,~10 ns 量级)
冷数据 热数据
│ │
▼ ▼
SSD/NVMe ── DMA ── DRAM ── Cache ── Core
(10-100μs) (1μs) (100ns) (1-40c) (1c)
│
│ NoC → 远端 LLC (50-100ns)
WSE 简化(无 off-chip):
on-chip SRAM (distributed, ~43 GB)
│
│ 2D Mesh (~632 hop avg, 21 PB/s)
▼
~900K SLA PE
- 无 L1/L2/L3/DRAM miss 概念——SRAM 即存储
- 无 coherence 协议——显式消息 + placement(SpaDA)
- 容量瓶颈:~43 GB SRAM vs 大模型权重 → streaming / 模型并行 / memoryX NVMe tier
LLM 100 GB×10 次访问量级(Day 22 练习):
- H100 + HBM3:1 TB / 3 TB/s ≈ 333 ms(纯传输)
- WSE SRAM:1 TB / 21 PB/s ≈ 48 μs → 传输加速 ~7000×(未计 overlap/布局)
第三阶段知识地图(Day 17–22)
| Day | 主题 | 概念页 |
|---|---|---|
| 17 | DRAM / 内存墙 | DRAM and Memory System |
| 18 | Cache 一致性 | Cache Coherence |
| 19 | 同步 / Memory Ordering | Memory Consistency Model |
| 20 | SSD / NVMe / RAID | SSD and NVMe Storage System |
| 21 | NoC / 互连 | NoC Fundamentals (H&P Appendix F) |
| 22 | 本页 | 端到端综合 |
相关页面
- Memory Hierarchy and Cache — AMAT 与层次
- Prefill-Decode Resource Divergence — LLM 内存 bound
- Inference Capacity Trap — HBM→NVMe KV
- Cerebras WSE — 消除存储墙实例
- Multicore SMT and NUCA — 第四阶段入口(Day 23)
推理侧压缩与 KV 流量(2026-09)
Vortex 同时量化静态权重与运行时 KV,把压缩从权重延伸到动态路径。RoofLang 用仿真说明紧凑 KV(如 V4 FP8+FP4 index)如何抬高峰值 decode batch、拉开相对大 KV 模型的 3.5–39.5× 吞吐差距。
Full-HBF KV 与 Host 扫索引(2026-09-18)
HBFlex 去掉混合栈中的 HBM 槽位,用平面均衡读 + 窗口写回 + 寿命回收把动态 KV 放进全 HBF(吞吐 vs FlashAccel 最高 1.58×、vs H3 3.30×)。Fathom 在 host 卸荷 regime 用 per-query bit-plane 读深压 top-k 前的 key scan(Qwen3-8B@1M GPU time 1.67× vs 136-bit 扫)。
Host/HBF/近存调度(2026-09-16)
BOOST 把 host DRAM 与 HBM 当对等带宽源(CAP),Grace Hopper 上高吞吐 +31%。Trillion MoE in a Box 在权重驻 HBF 后给出状态层 1.4–4.0 s⁻¹ 膝点。UNISON 用近存核做 agent 会话 KV 驻留(AMAT −22–51%)。
片上 NoC KV 流量(2026-09-21)
MeshKV 不先压缩字节,而把瓦片加速器上的 KV 块做成 NoC 分组流(TaKV 条带 + Mare 多播 + Pad 重叠)。FPGA 8×8:互连流量最高 −58%,二分 KV 利用率约 2.1×,多流吞吐最高 1.9×——瓶颈从 off-chip 挪到片上 bisection 背压。
HBM+HBF 虚拟化 KV × 稀疏读(2026-09-23)
SPLASH 保留 HBM 热层、HBF 容量层,并把稀疏注意力做成 page/plane 友好;100 ms TPOT 下每 GPU decode 吞吐相对基线 3.5–11.4×(vs LongSight-HBF 3.5×、vs HBM-only 11.4× geomean)。与 HBFlex「去掉 HBM」路线形成对照。
2026-09-24 增量
- HBF:agentic 热集驻 HBM、冷池共封装 HBF;14 ms TBT、resume +≈0.1 ms、会话 24×;相对全闪读 −7.6 kW/8-GPU。
- EMA:机内 peer-HBM 弹性地址空间;吞吐最高 +52%,达 2× 容量静态的 96%。
2026-09-28 增量
- HBF-Sim:公共 Accel-Sim 集成 GPU–HBF 全路径仿真;媒体吞吐最高 15.94×,contiguous 放置 page-service 放大 −41.9%,活跃页条带化 kernel 最高 3.94×——给 SPLASH/HBFlex/HotCold 类系统设计一个可复现底座。
- Fancy Eviction:生产 prefix-cache 轨迹显示花哨淘汰打不过 LRU;partial-node compute-aware vs LRU 平均 TTFT −19.9%、prefill +18.8%。
Decode KV 主导与多 die 带宽(2026-09-29)
KV Cache Memory Wall SoK:Llama-3-70B@128k 再加 ≈42 GB KV;H100 ridge ≈295 FLOP/B,长上下文 decode 深陷带宽区。B200/MI300X 上 条带 vs 钉死 页放置可把有效带宽从聚合打到 per-die(MI300X 钉死惩罚可达 8×)。PCIe Gen5 x16 ≈50× 慢于 H100 HBM,解释分层卸荷的适用窗。
SpecStream:A800 上 PCIe Gen4×16 ≈31.5 GB/s 远低于 HBM 1935 GB/s,故卸荷必须与计算重叠——分块 H2D + commit 边界约束。SPIMOE 把 Attention 放到 SRAM-PIM、Expert-FFN 放到 HBM-PIM(4×8 NoC),端到端相对 A100 最高 8.35×。RR-Evict 不改物理层级,而改 前缀树淘汰分布,压低 agent 冷预填尾延迟。
SSD 稀疏 KV 与布局侧容量(2026-10-01)
Janus:稀疏注意力下 SSD 读易进关键路径;预测重叠 + I/O 整形后 TTFT 最高 1.57–3.69×,关键路径 SSD <6.5%。SPLASH-layouts 通过 DOP 在不复制 KV 的前提下提高每卡 KV 容量(+27–60%),与 HBF/SSD 介质扩容正交。
HBF 放置×调度共设计(2026-10-02)
Characterizing HBF for LLM Serving:HBM–HBF–host 分层 + buffered cache-aware 准入;最快配置相对 HBM-only 完成时间 −36.1–87.0%,建模能耗最高 −55.8%;预留 10% 余量使 HBF KV 写 −69%、估计寿命 4.77→14.82 年——把写寿命从「介质硬约束」变成可调度量。
HBF 写寿命:按 KV 寿命放置(2026-10-08)
Lachesis 把 HBM/HBF 放置依据从读写比换成段寿命:agent harness 已知推理段在回合末丢弃、子 agent 段在返回后丢弃,短命段进 HBM 让 HBM 块快速周转、替 HBF 吸收写入。trace 模拟下 HBF 寿命 vs HBM-first 1.19–3.13×(3.3–12.2 device-years),HBM 承接的 KV 写入量 8.2–19.5×。含义:HBF 能否承载生成型 KV,取决于 harness 与 engine 之间是否传递生命周期信息。
Citations
[1] arch-study-30d-day-22.md — 存储篇阶段总结(Day 22) [2] arch-study-30d-day-17.md — DRAM(Day 17) [3] arch-study-30d-day-20.md — SSD/NVMe(Day 20) [4] arch-study-30d-day-21.md — NoC(Day 21) [5] arXiv:2609.13592 — BOOST host+HBM CAP [6] arXiv:2609.15636 — HBF 供给膝点 [7] arXiv:2609.09643 — UNISON [8] arXiv:2609.18675 — HBFlex [9] arXiv:2609.17652 — Fathom [10] arXiv:2609.19207 — MeshKV [11] arXiv:2609.23816 — SPLASH [12] arXiv:2609.29246 — HBF-Sim [13] arXiv:2609.28870 — Fancy Eviction [14] arXiv:2609.30854 — KV Cache Memory Wall SoK [15] arXiv:2609.33184 — SpecStream [16] arXiv:2609.34612 — SPIMOE [17] arXiv:2609.32278 — RR-Evict [18] arXiv:2609.36938 — Janus [19] arXiv:2609.37626 — SPLASH-layouts [20] arXiv:2609.39131 — Characterizing HBF LLM Serving [21] arXiv:2610.08378 — Lachesis