高速缓存cache

来自计算思维百科
跳转至: 导航搜索
高速缓存cache.png

在计算机中,CPU的计算速度很快,而从内存存取数据比较慢,这两个速度差值较大,如果不解决这个问题,CPU就要等存储器给它提供数据。为了解决这个问题,在计算内部设置一些容量小,速度快的存储器,这些存储器处于CPU和主存之间,把需要处理的数据临时放在这里,供CPU使用,这个就是高速缓存cache。

基本概念

一直以来,CPU的速度总是快于存储器。据统计从1980~2000年间,CPU与主存之间的性能差距以每年50%的速度增长。为了弥补性能上的较大差距,我们采取在CPU和主存间设置一个容量小,速度快的可以和CPU相匹配的存储器,正常情况下它总是保存CPU访问频率高的数据(主存的部分副本),这样CPU访问的效率就提高了,使得CPU与存储器的交流速度大体一致,从而提高性能。通俗的理解,也就是通过增加一个缓冲区来协调解决速度差过大的问题。

应用范围

可以广泛用于解决生活中需要协调交流的但双方差异过大的问题。

应用案例

应用1-把常用到的书的副本放在手边

案例:对于学生来说,最多的东西莫过于书了。大家都是怎么整理书的呢?有没有这样一种体验,如果我们把所有书都整理在一起,都我们要用到某本书时,就得找很长时间。我们采用这样一种方法,就是我们把经常用到的书复印一份,放在桌子上或者手边或者容易看到的地方,一般来说,手边的地方都不大,我们放的书也不多,这样我们找书时就很快,就减少了去找书的时间开销;在这个过程中,我们用来放常用到的书的副本就相当于计算机里面的cache。

应用2-找书和修改书本内容

案例:我们将书柜看作主存储器,桌子上的书架看作cache,桌子上的书是我们经常用到的,它们是书柜中的部分书的复印版。则找书对应cache的读,修改书本内容对应cache的写方法,解释如下为:

  1. 先找桌子上的书架里有没有,若有就找到结束吗没有再到书柜里找;
  2. 同时查找桌子上的书架和书柜,若在书架上找到则停止查找,若没有则继续在书柜里找;
  3. 当我们拿出书架上的书并对它做了一些笔记和修改时,同样地要把书柜里对应的书做相应的修改;
  4. 只修改书架上的书,当我们要把这本书换出桌子上的书架的时候,再把把修改后的内容更新到书柜里的书里面。

可以体现的计算思维

高速缓存cache 是一种缓冲的概念,可以协调速度不匹配的两个动作,体现了计算思维的调度特点。