CPU的运算速度远远超过主存的访问速度,导致CPU在等待数据时会浪费大量的时间,主存的访问速度又远远超过磁盘的速度,系统的性能会进一步受到限制。
存储层次结构:寄存器>高速缓存cache>主存RAM>外存SSD
容量越大访问速度越快,容量越小访问速度越慢。
为了缩小CPU和主存之间的速度差距,引入了一种中间存储器——高速缓存cache,现在计算机采用多级cache结构,L1,L2,L3,容量随等级递增,速度递减,但都比主存更快。cache的管理是硬件自动完成的,无需手动干预,但是如果cache未命中,CPU需要从主存中读入数据,会增加额外的开销,多核处理器中,多个和=核心共享主存,可能导致cache不一致,需要更复杂的同步程序。
- Cache 是一种速度接近 CPU 寄存器、容量介于寄存器和主存之间的存储器。
- 它位于 CPU 和主存之间,用于保存常用的数据和指令。
- 时间局部性 :最近访问过的数据会被保留在 Cache 中,以便后续快速访问。
- 空间局部性 :当访问某个内存地址时,其周围的地址也会被加载到 Cache 中。
DRAM主存
SRAM高速缓存
SSD外存