缓存:为什么L1比L2快,L2比L3快
你的CPU运算速度极快,但有个"拖后腿"的——内存。CPU从内存读数据的速度,远远跟不上它的计算速度。
这就好比一个顶级厨师,切菜速度飞快,但食材每次都要跑去一公里外的超市取。再快的刀工也得等着。
为了解决这个问题,CPU内部加入了缓存(Cache)。今天咱们来搞明白L1、L2、L3缓存是怎么回事。
速度差距有多大?
先看一组数据,感受一下各层的访问速度:
| 存储层 | 访问时间 | 类比 |
|---|---|---|
| CPU寄存器 | ~0.3纳秒 | 手里的工具 |
| L1缓存 | ~1纳秒 | 手边的调料 |
| L2缓存 | ~3-5纳秒 | 厨房柜子里的食材 |
| L3缓存 | ~10-20纳秒 | 楼下便利店的存货 |
| 内存(DRAM) | ~50-100纳秒 | 开车去超市采购 |
| 固态硬盘 | ~ |