知道硬盘很慢,没想到比CPU Cache慢10000000倍( 四 )


我们面前的桌子就相当于内存 , 能放下更多的书(数据) , 但是找起来和看起来就要花费一些时间 , 相比 CPU Cache 慢不少 。 而图书馆的书架相当于硬盘 , 能放下比内存更多的数据 , 但找起来就更费时间了 , 可以说是最慢的存储器设备了 。
从 寄存器、CPU Cache , 到内存、硬盘 , 这样一层层下来的存储器 , 访问速度越来越慢 , 存储容量越来越大 , 价格也越来越便宜 , 而且每个存储器只和相邻的一层存储器设备打交道 , 于是这样就形成了存储器的层次结构 。
再来回答 , 开头的问题:那机械硬盘、固态硬盘、内存这三个存储器 , 到底和 CPU L1 Cache 相比速度差多少倍呢?
CPU L1 Cache 随机访问延时是 1 纳秒 , 内存则是 100 纳秒 , 所以 CPU L1 Cache 比内存快 100 倍左右 。
SSD 随机访问延时是 150 微妙 , 所以 CPU L1 Cache 比 SSD 快 150000 倍左右 。
最慢的机械硬盘随机访问延时已经高达 10 毫秒 , 我们来看看机械硬盘到底有多「龟速」:

  • SSD 比机械硬盘快 70 倍左右;
  • 内存比机械硬盘快 100000 倍左右 , 即 10W 倍;
  • CPU L1 Cache 比机械硬盘快 10000000 倍左右 , 即 1000W倍;
我们把上述的时间比例差异放大后 , 就能非常直观感受到它们的性能差异了 。 如果 CPU 访问 L1 Cache 的缓存时间是 1 秒 , 那访问内存则需要大约 2 分钟 , 随机访问 SSD 里的数据则需要 1.7 天 , 访问机械硬盘那更久 , 长达近 4 个月 。
【知道硬盘很慢,没想到比CPU Cache慢10000000倍】可以发现 , 不同的存储器之间性能差距很大 , 构造存储器分级很有意义 , 分级的目的是要构造缓存体系 。


推荐阅读