cpu缓存对什么有影响(为什么它对游戏如此重要)
cpu缓存对什么有影响(为什么它对游戏如此重要)L3缓存是一件大事:它在CPU中的部分或所有内核之间共享,而且它很大。例如,12900K 具有 30MB 的 L3 缓存,是 L2 缓存量的 24 倍。L3 缓存的延迟甚至比 L2 更糟糕,但拥有较大的 L3 缓存对于防止 CPU 需要向 RAM 请求所需数据非常重要。除了存储之外,RAM在内存层次结构中具有最差的速度和延迟,每当CPU需要访问RAM以获取所需数据时,事情就会停止。理想情况下,任何重要的东西都将至少存储在L3缓存中,以防止大规模减速。与 L1 缓存一样,L2 缓存通常专属于单个 CPU 内核,但在某些 CPU 中,它在多个内核之间共享。它也大得多。例如,core i9-12900K中的每个P-core都有80千字节的L1缓存,以及1.25兆字节的L2缓存,几乎是其16倍。但是,较大的缓存具有更高的延迟,这意味着在 CPU 内核和缓存之间进行通信需要更多时间。当CPU想要在微
随着像Ryzen 7 5800X3D这样的产品成为游戏的最佳CPU,你可能想知道CPU缓存是什么,以及为什么它首先如此重要。我们已经知道,AMD即将推出的Ryzen 7000 CPU和英特尔的第13代Raptor Lake处理器将专注于更多的缓存,这表明这将是未来CPU的关键规格。但是普通用户应该关心CPU缓存吗?我们将分解什么是CPU缓存,为什么它如此重要,以及如果你在玩游戏,它如何产生巨大的影响。
什么是 CPU 缓存?缓存是 CPU 本身内部的内存量,可以集成到单个内核中,也可以在部分或全部内核之间共享。它是一小段专用内存,直接位于处理器上,因此每次要在PC上执行某些操作时,你的CPU都不需要从系统RAM中获取信息。每个处理器都有少量的缓存,较小的CPU可能只有几千字节,而大型CPU可以有数兆字节的缓存。
但是你可能想知道为什么当我们有RAM时,缓存是必要的,特别是当一条RAM可以有几十GB的内存时,一切都与性能有关。在20世纪90年代,CPU和RAM之间性能改进的步伐开始变得明显。毕竟,CPU设计人员专注于提高速度,而RAM设计人员则希望增加容量并忽略速度。对于CPU设计人员来说,这是一个问题,因为RAM速度是许多应用程序CPU性能的关键因素,CPU-RAM差距越大,提高性能就越困难。
缓存是解决方案。尽管与RAM相比,缓存的容量很小,但在大多数情况下,其高速可以弥补这一点。但是,缓存并不完美。它的主要弱点是尺寸;缓存在物理上很大,因为它可以存储多少。缓存还可以灵活应对节点收缩,因此,虽然CPU中的核心和其他组件可以很容易地从一代收缩到另一代,但缓存的收缩要少得多。这使得缓存成为CPU中非常昂贵的组件,这是缓存通常具有如此少量存储空间的主要原因之一。
缓存如何工作?缓存的主流采用导致了缓存和RAM的更细微的实现,直到我们最终使用内存层次结构,缓存在顶部,RAM在中间,存储在底部。这种分层方法允许 CPU 的关键数据在物理上更接近处理器,从而减少延迟并帮助你的 电脑 感觉更敏捷。
缓存有自己的层次结构或缓存级别,这些层次结构或级别分为 L1、L2 和 L3 缓存。这些是所有类型的缓存,但它们执行的功能略有不同。
L1高速缓存是第一级高速缓存,也是最小的,通常分为L1指令或L1i和L1数据或L1d。CPU 中的每个内核都有其独有的 L1 缓存块,该块通常只有几千字节大。存储在 L1 缓存中的数据类型是 CPU 刚刚使用或预期即将使用的内容。如果 CPU 需要不在 L1 缓存中的数据,它将进入下一个级别:L2。
与 L1 缓存一样,L2 缓存通常专属于单个 CPU 内核,但在某些 CPU 中,它在多个内核之间共享。它也大得多。例如,core i9-12900K中的每个P-core都有80千字节的L1缓存,以及1.25兆字节的L2缓存,几乎是其16倍。但是,较大的缓存具有更高的延迟,这意味着在 CPU 内核和缓存之间进行通信需要更多时间。当CPU想要在微秒甚至纳秒内完成任务时,L2缓存略高的延迟确实很重要。如果 CPU 在 L2 缓存中找不到请求的数据,它会询问下一个级别:L3。
L3缓存是一件大事:它在CPU中的部分或所有内核之间共享,而且它很大。例如,12900K 具有 30MB 的 L3 缓存,是 L2 缓存量的 24 倍。L3 缓存的延迟甚至比 L2 更糟糕,但拥有较大的 L3 缓存对于防止 CPU 需要向 RAM 请求所需数据非常重要。除了存储之外,RAM在内存层次结构中具有最差的速度和延迟,每当CPU需要访问RAM以获取所需数据时,事情就会停止。理想情况下,任何重要的东西都将至少存储在L3缓存中,以防止大规模减速。
一些CPU甚至具有L4缓存,但它通常用作CPU软件包上的RAM。英特尔首批基于Broadwell架构的14nm CPU包括128MB的嵌入式DRAM,该公司即将推出的Sapphire Rapids服务器CPU可以配备HBM2,它有点像额外的缓存级别。
CPU 缓存对游戏重要吗?CPU缓存对游戏有很大的影响。虽然单线程性能,每时钟指令(IPC)和时钟速度传统上被认为是游戏性能中最重要的因素,但很明显,缓存可能是AMD和英特尔之间竞争中最重要的因素。
缓存对于游戏非常重要,因为当今游戏的设计方式。现在游戏具有很多随机性,这意味着CPU需要不断执行简单的指令。如果没有足够的缓存,你的图形显卡将被迫在CPU上等待,因为指令堆积起来并导致速度瓶颈。可以在下面的《孤岛惊魂6》中看到AMD的3D V-Cache技术有多大差异的示例。
近年来,我们看到了游戏缓存增加的趋势。AMD的Ryzen 3000 CPU的L3缓存是上一代的两倍,并且在游戏中速度更快,几乎赶上了英特尔。当Ryzen 5000推出时,AMD并没有添加更多的缓存,但它确实统一了CPU内的L3缓存的两个块,这大大降低了延迟,并使AMD在游戏性能方面处于领先地位。AMD在Ryzen 7 5800X3D上凭借其3D V-Cache技术翻了一番,该技术在CPU之上堆叠了64MB的L3缓存芯片,总计96MB,甚至超过了旗舰Ryzen 9 5950X。
英特尔一直在追赶AMD,其当前一代Alder Lake CPU具有高达30MB的L3缓存,这比大多数Ryzen CPU要少得多,但它们也具有更多的L1和L2缓存。但是,英特尔在L3容量方面的劣势并不意味着Ryzen 5000 CPU在游戏中的速度要快得多。在我们的Core i9-12900K测评中,我们发现12900K在游戏性能方面与Ryzen 9 5950X并列。
缓存的竞争几乎肯定会随着即将推出的Ryzen 7000和Raptor Lake CPU而继续。Ryzen 7000被确认具有Ryzen 5000两倍的L2缓存,我们可能会看到更多使用V-Cache的CPU。与此同时,英特尔没有自己的V-Cache版本,但有传言称Raptor Lake的L3缓存比Alder Lake多得多,只是在CPU本身。