CPUInfo中 L2 与 L3 缓存的核心差异
差异总览
| 维度 | L2 缓存 | L3 缓存 |
|---|---|---|
| 位置与归属 | 通常位于每个核心附近/内部,倾向为核心私有 | 位于芯片内,通常为多个核心共享(同一插槽/一片硅片) |
| 容量级别 | 一般为几百 KB 到数 MB | 一般为数 MB 到数十 MB |
| 访问延迟 | 约10–20 个时钟周期 | 约30–50 个时钟周期 |
| 查找顺序 | 在 L1 未命中后查找 | 在 L2 未命中后查找 |
| 主要作用 | 作为 L1 的后备,服务单核的局部性数据 | 作为最后一级缓存,服务多核共享与跨核数据,减少访存 |
| 一致性 | 由缓存一致性协议在各级生效(如 MESI) | 同上,但因共享范围更大,跨核一致性流量更显著 |
| 上述为主流 x86 处理器的典型设计,具体数值会随架构与型号不同而变化。 |
工作原理与命中路径
对性能的影响与适用场景
在 CPUInfo 中的查看与解读要点
cat /proc/cpuinfo(关注 cache size、flags 等字段)lscpucat /sys/devices/system/cpu/cpu0/cache/index*/{level,type,size}index0/1/2/3),其中 level 字段区分 L1/L2/L3,type 区分 Data/Instruction/Unified。