高速缓存工作原理

高速缓存工作原理

ID:15272981

大小:75.50 KB

页数:6页

时间:2018-08-02

高速缓存工作原理_第1页
高速缓存工作原理_第2页
高速缓存工作原理_第3页
高速缓存工作原理_第4页
高速缓存工作原理_第5页
资源描述:

《高速缓存工作原理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、高速缓存工作原理如果您买过计算机,那么您肯定听说过“缓存”这个词。现代计算机都有L1和L2缓存,许多计算机现在还有L3缓存。可能还有热心朋友在缓存方面给您出过主意,像“别买赛扬的芯片,它里面没有任何缓存!”。事实表明,高速缓存是计算机科学所采用的一种重要方法,它以各种不同的形式存在于每台计算机上。缓存分为内存缓存、硬件和软件磁盘缓存、页缓存等等。甚至虚拟内存也是一种高速缓存形式。在本文中,我们将探究高速缓存的原理,以让您明白它为何如此重要。高速缓存是一项基于计算机存储器子系统的技术。使用缓存的主要目的是在提高计算机速度的同时,保持计算机的较

2、低价格。采用高速缓存,您可以在计算机上更快地完成各种任务。为了了解缓存系统的基本概念,让我们先通过一个超级简单的图书管理员的例子来说明高速缓存的概念。想像一下,有一位图书管理员坐在桌子的后面。他的工作就是为您找出您要借阅的书。为简单起见,我们假定您自己不能取书,而必须让图书管理员帮您取来所要借阅的书。于是他会从库房的藏书架上为您取出这本书(华盛顿特区的国会图书馆就采用这种方式)。我们首先从不带缓存的图书管理员开始。第一位顾客来了。他要借阅《白鲸》。图书管理员到库房找到这本书,然后回到柜台将这本书交给顾客。一段时间后,客户回来了并将这本书还给

3、图书管理员。图书管理员收下这本书然后将它放回库房。接着,他返回柜台等待下一位顾客。我们假定下一位顾客也要借阅《白鲸》(您看到这本书已经送还回来了)。图书管理员不得不返回库房去找他刚放回去的这本书,然后将其交给客户。如果以这种方式工作,图书管理员取每本书都得返回库房一次,即使那些极受欢迎、借阅率很高的书也要如此。有没有办法来提高图书管理员的工作效率?当然有,我们可以给图书管理员一个缓存来解决这个问题。在下一节,我们仍将使用此示例,不同的是图书管理员将使用高速缓存系统。我们给图书管理员一个背包,他可以用这个背包装十本书(用计算机术语表达,就是图

4、书管理员现在有一个能装十本书的缓存)。他可以用这个背包来装客户还给他的书,最多可装十本。下面我们使用前面的示例,不过现在的图书管理员可以采用改进的高速缓存新方法。新的一天开始。图书管理员的背包是空的。我们的第一位客户来了并要借阅《白鲸》。没有取巧的办法,图书管理员必须到库房去拿这本书。他把这本书交给客户。一段时间后,客户回来了并将这本书还给了图书管理员。图书管理员不是把这本书放回库房,而是把它放到背包中,继续接待阅览者(他会先看看背包满没满,随后将更频繁地进行查看)。另一名客户到来借阅《白鲸》。在去库房之前,图书管理员要查看背包中是否有这本

5、书。于是他找到了这本书!他所要做的一切就是从背包中拿出来并把它交给客户。因为无需去库房取书,所以能够更快地为客户提供服务。如果客户要借阅的书不在缓存(背包)中又会怎样?在这种情况下,图书管理员在有缓存时的效率比在没有缓存时的效率要低,因为图书管理员要先花时间看看背包中是否有这本书。缓存设计面临的一项重大挑战就是需要将搜索缓存造成的影响降至最低,而现代的硬件几乎已将这种时间延迟缩短为零。即使在我们这个图书管理员的简单示例中,与走回库房的时间相比起来,搜索缓存的延迟时间(等待时间)是如此之小,以至于显得无关紧要。由于缓存比较小(十本书),因此发

6、现包中没有要借的书所花费的时间只是往返库房所需时间中极其微小的一部分。通过这个示例,您可以了解到关于高速缓存的几个重要方面:·缓存技术就是采用速度较快但容量较小的存储器来提高速度较慢但容量较大的存储器的速度。·使用缓存时,必须先查看缓存中是否有需要的项目。如果有,则称之为缓存命中。如果没有,则称之为缓存失误,这时计算机就必须等待往返一次读取庞大而又缓慢的存储器。·最大的缓存也远远小于庞大的存储区。·可以存在多级缓存。在我们这个图书管理员示例中,背包是容量较小但速度较快的存储器,库房则代表容量较大且速度较慢的存储器。这是一级缓存。也可以在它们

7、之间再加一级缓存,就是在柜台后面放一个能容纳一百本书的书架。图书管理员可以先查看背包,然后查看书架,最后查看库房。这就构成了一个两级缓存。计算机是一种以非常小的增量来度量时间的机器。微处理器对主存储器(RAM)的访问在大约60纳秒(一秒的六百亿分之一)内完成。这已经相当快了,但与典型的微处理器相比还是慢得多。微处理器的周期可以只有2纳秒那么短,因此对它而言,60纳秒就显得无比漫长。如果我们在主板上增设容量小但速度非常快(大约30纳秒)的特殊存储器组,结果会怎样?这已比访问主存储器的速度快了两倍。这就被称为2级缓存或L2缓存。如果我们直接在微

8、处理器芯片上构造容量更小但速度更快的存储器系统,结果会怎样?如果这样,系统将以微处理器的速度而非内存总线的速度访问该存储器。这就是L1缓存,在233兆赫兹(MHz)奔腾处理器上,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。