三级缓存是为读取二级缓存后未命中的数据设计的—种缓存,原理在于使用较快速的储存装置保留一份从慢速储存装置中所读取数据且进行拷贝,当有需要再从较慢的储存体中读写数据时,缓存(cache)能够使得读写的动作先在快速的装置上完成。
三级缓存是为读取二级缓存后未命中的数据设计的—种缓存,在拥有三级缓存的 CPU 中,只有约 5%的数据需要从内存中调用,这进一步提高了 CPU 的效率。其运作原理在于使用较快速的储存装置保留一份从慢速储存装置中所读取数据且进行拷贝,当有需要再从较慢的储存体中读写数据时,缓存(cache)能够使得读写的动作先在快速的装置上完成,如此会使系统的响应较为快速。
缓存介绍
电脑缓存是当 cpu 在读取数据的时候,先是从缓存文件中查找,然后找到之后会自动读取,再输入到 cpu 进行处理,当然如果没有在缓存中找到对应的缓存文件的话,那么就会从内存中读取并且传输给 cpu 来处理。当然这样的话需要一定的时间所以会很慢。等 cpu 处理之后,就很快把这个数据所在的数据块保存在缓存文件中,这样的话在以后读取这项数据的时候就直接在缓存中进行,不要重复在内存中调用并读取数据了。
缓存大小也是 CPU 的重要指标之一,而且缓存的结构和大小对 CPU 速度的影响非常大,CPU 内缓存的运行频率极高,一般是和处理器同频运作,工作效率远远大于系统内存和硬盘。实际工作时,CPU 往往需要重复读取同样的数据块,而缓存容量的增大,可以大幅度提升 CPU 内部读取数据的命中率,而不用再到内存或者硬盘上寻找,以此提高系统性能。但是出于 CPU 芯片面积和成本的因素来考虑,缓存都很小。
缓存分类
一级缓存都内置在 CPU 内部并与 CPU 同速运行,可以有效的提高 CPU 的运行效率。一级缓存越大,CPU 的运行效率越高,但受到 CPU 内部结构的限制,一级缓存的容量都很小。
二级缓存,它是为了协调一级缓存和内存之间的速度。cpu 调用缓存首先是一级缓存,当处理器的速度逐渐提升,会导致一级缓存就供不应求,这样就得提升到二级缓存了。二级缓存它比一级缓存的速度相对来说会慢,但是它比一级缓存的空间容量要大。主要就是做一级缓存和内存之间数据临时交换的地方用。
三级缓存是为读取二级缓存后未命中的数据设计的—种缓存,在拥有三级缓存的 CPU 中,只有约 5%的数据需要从内存中调用,这进一步提高了 CPU 的效率。其运作原理在于使用较快速的储存装置保留一份从慢速储存装置中所读取数据并进行拷贝,当有需要再从较慢的储存体中读写数据时,缓存(cache)能够使得读写的动作先在快速的装置上完成,如此会使系统的响应较为快速。
三级缓存分类
Cache(三级缓存),分为两种,早期的是外置,以后的升级产品都是内置的。而它的实际作用即是,L3 缓存的应用可以进一步降低内存延迟,同时提升大数据量计算时处理器的性能。降低内存延迟和提升大数据量计算能力对游戏软件都很有帮助。而在服务器领域增加 L3 缓存在性能方面仍然有显著的提升。如具有较大 L3 缓存的配置利用物理内存会更有效,故它比较慢的磁盘 I/O 子系统可以处理更多的数据请求。具有较大 L3 缓存的处理器提供更有效的文件系统缓存行为及较短消息和处理器队列长度。
其实最早的 L3 缓存被应用在 AMD 发布的 K6-III 处理器上,当时的 L3 缓存受限于制造工艺,并没有被集成进芯片内部,而是集成在主板上。在只能够和系统总线频率同步的 L3 缓存同主内存其实差不了多少。后来使用 L3 缓存的是英特尔为服务器市场所推出的 Itanium 处理器。接着就是 P4EE 和至强 MP。Intel 还打算推出一款 9MB L3 缓存的 Itanium2 处理器,和以后 24MB L3 缓存的双核心 Itanium2 处理器。
但基本上 L3 缓存对处理器的性能提高显得不是很重要,如配备 1MB L3 缓存的 Xeon MP 处理器却仍然不是 Opteron 的对手,由此可见前端总线的增加,要比缓存增加带来更有效的性能提升。
二级缓存价格
首先来算一笔小账(2009 年 02 月),关于 Intel 处理器的二级缓存:
二级缓存 512K 的赛扬双核 E1200 只要 270 元,二级缓存 1M 的奔腾双核 E2140 售价为 370 元,需要花费 100 元来购买这额外的 512K 缓存;二级缓存 2M 的酷睿 2 E4300 或者奔腾双核 E5200 的售价在 550 元以上,这就意味着得再出 200 元来购买这额外的 1M 二级缓存;二级缓存 3M 的酷睿 2E7200 售价 750 元,又得掏出 200 元来购买这额外的 1M 二级缓存;二级缓存 4M/6M 的酷睿 2 系列处理器依次类推……
不管酷睿 2、奔腾双核还是赛扬双核,它们的核心架构其实是完全相同的,频率可以随意更改,唯一不同的就是二级缓存。可以毫不夸张地说,Intel 就是在卖二级缓存,200 块钱 1M。
事实上历年来 Intel 都是通过二级缓存的大小来划分产品线,初期只有奔腾和赛扬两种规格,到了酷睿 2 时代 Intel 达到了登峰造极的境界:仅仅是双核产品就拥有 512K、1M、2M、3M、4M、6M 多达六个版本,四核产品也有 4M、6M、8M、12M 四个版本,令人眼花缭乱!Intel 细分产品线的策略在每个价位都提供了优秀的产品,但也给广大用户制造了前所未有的困惑:到底多大二级缓存才够用?
二级缓存发展
纵观英特尔处理器的发展,且不论核心架构如何改变,以级数增长的二级缓存是最直观的。奔腾 4 时代 0.18 微米工艺的 Willamette 拥有 256K 二级缓存,0.13 微米的 Northwood 核心拥有 512K,后期 0.09 微米的 Prescott 一度增大到 1M。到了酷睿时代,在架构发生了翻天覆地的变化的同时,65 纳米工艺让二级缓存再次翻倍,即便是刚推出时低端酷睿的代表 Allendale 核心,二级缓存也达到了 2M,高端酷睿更是拥有 4M 的二级缓存。进入 45nm 工艺后,二级缓存的容量进一步加大,高端 E8X00 系列二级缓存达到了惊人的 6M,低端 E7X00 也达到了 3M 之多,至此 Intel 从 512K 到 6M 甚至 12M 实现了二级缓存的“无缝衔接”。
市场中没有永远的落后者,当 AMD 进入 45nm 时代,Phenom II 的到来,AMD 也能通过核心数量和缓存的搭配,设计出定位不同市场的 CPU。
对性能的影响
而三级缓存对性能影响时高时低。在游戏方面,提升三级缓存的容量对游戏的性能影响很大,虽然对一般家用机没有什么用,但是如果是网吧机或者是发烧机提升三级缓存的容量还是会有显著的性能提升的。虽然三级缓存也能为 PC 带来显著的性能提升,但毕竟三级缓存是作用于服务器的,对 PC 来说,三级缓存还是只能做个辅助作用,在其他参数相同的情况下,三级缓存容量越大,则性能更好,如果其他参数不相同的话,这时三级缓存的作用就不明显了。
不管三级缓存的作用大不大,它毕竟也是为电脑发展作出贡献的参数之一。
发展历程
最早的 L3 缓存被应用在 AMD 发布的 K6-III 处理器上,当时的 L3 缓存受限于制造工艺,并没有被集成进芯片内部,而是集成在主板上。在只能够和系统总线频率同步的 L3 缓存同主内存其实差不了多少。后来使用 L3 缓存的是英特尔为服务器市场所推出的 Itanium 处理器。接着就是 P4EE 和至强 MP。Intel 还打算推出一款 9MBL3 缓存的 Itanium2 处理器,和以后 24MBL3 缓存的双核心 Itanium2 处理器。
但基本上 L3 缓存对处理器的性能提高显得不是很重要,比方配备 1MBL3 缓存的 XeonMP 处理器却仍然不是 Opteron 的对手,由此可见前端总线的增加,要比单纯增加缓存带来更有效的性能提升。
纵观 AMDPhenom 处理器的发展,核心架构的改进相对有限,而三级缓存的变化是最直观的。从早期 Phenom 的 2MB 三级缓存,猛增至 Phenom II 的 6MB 三级缓存,而为了市场的需要,又推出了采用 Phenom II 架构但没有三级缓存的 Athlon X4。而 AMD 处理器独有的双核、三核、四核架构,加上缓存的不同搭配,一时间,AMD 处理器呈现出门丁兴旺的景象。
对于 AMD 的用户来说,多是追求性价比的用户,而 AMD 处理器这样的现象,对用户既是好事也是坏事,好是用户的选择更多了,坏的是用户对 CPU 的选择无所适从。而细细观察,AMD 处理器百龙争宠的现象,无外乎是核心与缓存搭配的结果。
与 65nm Phenom 相比,新一代 45nmPhenom II 最大的变化就是升级到了 45nm SOI 沉浸式光刻生产工艺,好处就是主频更高、功耗更低、集成度更高,特别是三级缓存从 2MB 猛增到了 6MB!
三级缓存翻了三倍,自然需要付出一定的代价,通过 Phenom 和 Phenom II 芯片示意图的对比,就能略知一二了:
Brcelona/Agena 集成了 4.68 亿个晶体管,核心(Die)面积大约 285 平方毫米,Shanghai/Deneb 的晶体管增加了 62%,多达 7.58 亿个,但核心面积却减小了 9.5%,只有 258 平方毫米,新工艺的好处可见一斑。
晶体管数量增加如此之多主要就是因为三级缓存的大幅扩容,这部分在整个核心里的面积比例也从大约六分之一提高到了足有三分之一。