CPU缓存L1/L2/L3工做原理

img

1、前言缓存

在过去的几年中,计算机处理器取得了至关大的进步,晶体管的尺寸每一年都在变小,并且这种进步达到了摩尔定律迅速变得多余的地步。服务器

当涉及处处理器时,不只晶体管和频率很重要,高速缓存也很重要。操作系统

在讨论CPU(Central Processing Units)时,您可能据说太高速缓存。可是,咱们并无过多地关注这些数字,它们也不是这些CPU广告的主要亮点。设计

img

那么,CPU缓存到底有多重要,它又是如何工做的?blog

2、什么是CPU缓存?内存

首先,缓存只是一种很是快速的内存类型。您可能知道,计算机内部有多种内存类型。有一个主存储(如硬盘或SSD),用于存储大量数据(操做系统和全部程序)。get

接下来,咱们有随机存取存储器,一般称为RAM。这比主存储要快得多。it

img

最后,CPU自身具备更快的存储单元,咱们称之为缓存。bug

计算机的内存具备基于速度的层次结构,而缓存位于该层次结构的顶部,是最快的。它也是最靠近中央处理的地方,它是CPU自己的一部分。程序

高速缓存是静态RAM(SRAM),而系统RAM是动态RAM(DRAM)。静态RAM是一种能够保存数据可是不要用一直刷新的存储器,与DRAM不一样,SRAM更加适合用于高速缓存。

img

3、CPU缓存如何工做?

咱们已经知道,程序被设计为一组指令,最终由CPU运行。

当咱们运行程序的时候,这些指令必须从主存储器取指令到CPU。这是内存层次结构起做用的地方。

数据首先被加载到RAM中,而后被发送到CPU。由于CPU每秒都可以执行大量指令。为了充分利用其功能,CPU须要访问超高速内存,这是缓存的来源。

内存控制器执行从RAM中获取数据并将其发送到缓存的工做。根据系统中使用的CPU,此控制器能够位于主板的北桥芯片组上,也能够位于CPU自己内部。

https://www.cxybug.com/

而后,高速缓存在CPU内执行数据的来回传输。内存的层次结构也存在于缓存中。

4、缓存级别:L1,L2和L3

CPU缓存分为三个主要的级别,即L1,L2和L3。这里的层次结构是根据缓存速度来划分的。

img

L1(1级)高速缓存是计算机系统中存在的最快的内存。就访问优先级而言,L1缓存具备CPU在完成特定任务时最可能须要的数据。

就其大小而言,L1高速缓存一般最多可达256KB。可是,一些真正功能强大的CPU如今将其占用近1MB。如今,某些服务器芯片组(如Intel的高端Xeon CPU)具备1-2MB的一级缓存。

L1缓存一般也分为两种方式,分为指令缓存和数据缓存。指令高速缓存处理有关CPU必须执行的操做的信息,而数据高速缓存则保留要在其上执行操做的数据。

img

L2(2级)缓存比L1缓存慢,但大小更大。它的大小一般在256KB到8MB之间,尽管更新,功能强大的CPU每每会超过此大小。L2高速缓存保存下一步可能由CPU访问的数据。在大多数现代CPU中,L1和L2高速缓存位于CPU内核自己,每一个内核都有本身的高速缓存。

L3(3级)高速缓存是最大的高速缓存存储单元,也是最慢的一个。它的范围从4MB到50MB以上。现代CPU在CPU裸片上具备用于L3高速缓存的专用空间,而且占用了很大一部分空间。

5、缓存命中或未命中以及延迟

数据会从RAM依次流到L3高速缓存,而后是L2,最后是L1。

当处理器正在寻找要执行操做的数据时,它首先尝试在L1高速缓存中找到它。若是CPU可以找到它,则该状况称为高速缓存命中。而后,它继续在L2和L3中找到它。

若是找不到数据,它将尝试从主内存访问数据。这称为高速缓存未命中。

如今,众所周知,高速缓存旨在加快主内存和CPU之间的数据传输。

从内存访问数据所需的时间称为延迟,L1具备最低的延迟,是最快的,而且最接近核心,而L3具备最高的延迟。缓存未命中时,延迟会增长不少。这是由于CPU必须从主存储器中获取数据。

随着计算机变得愈来愈快和愈来愈好,咱们看到延迟减小了。如今,咱们拥有低延迟的DDR4 RAM,以及具备低访问时间的超高速SSD做为主要存储,这两项都大大下降了总体延迟。

之前,缓存设计曾经使L2和L3缓存位于CPU外部,这对延迟产生了负面影响。

然而,CPU制造工艺的进步使得在比之前更小的空间中安装数十亿个晶体管。所以,为缓存留出了更多空间,这使缓存尽量地靠近核心,从而大大减小了延迟。

6、缓存的将来

缓存设计一直在发展,尤为是随着内存变得更便宜,更快和更密集。英特尔和AMD在缓存设计方面进行了至关多的试验,英特尔甚至还在试验L4缓存。CPU市场正在之前所未有的速度向前发展。

这样,咱们一定会看到缓存设计跟上CPU不断增加的能力。

缓存设计方面进行了至关多的试验,英特尔甚至还在试验L4缓存。CPU市场正在之前所未有的速度向前发展。

这样,咱们一定会看到缓存设计跟上CPU不断增加的能力。

此外,还有不少工做能够减小现代计算机的瓶颈。减小内存延迟多是其中最大的一部分。业界正在为相同的解决方案而努力,而且将来看起来确实充满但愿。

相关文章
相关标签/搜索