如今,游戏机和游戏 PC 的 CPU 都有几十个内核,但你仍然会听到 “单核性能” 对游戏运行的影响。如果你想知道这是什么,或者它为什么重要,我们将为你分析它的基本原理。
什么是单核性能?
现代 CPU 拥有多个 “内核”。一个内核本质上就是一个完整、独立的处理器。因此,现代 CPU 内部实际上有多个 CPU。当我们谈论单核性能时,我们指的是 CPU 中的一个内核以其最大潜力运行时所能获得的最佳性能。
软件会生成 “线程”,每个线程由一个单独的内核处理。有些处理器甚至可以利用超线程等技术同时处理多个线程。
例如,如果您正在用 Adobe Premiere 等软件渲染一个视频项目,那么渲染工作负载可以分成多个线程。如果 CPU 可以处理 12 个线程,那么它就可以处理这么多线程。如果 CPU 可以处理 100 个线程,它也可以处理 100 个线程。这样可以确保 CPU 得到充分利用,并获得尽可能高的性能。
不过,如果 CPU 的所有内核都参与运行,它们的单个性能并没有单独运行时那么快。这是因为在负载情况下运行所有内核会增加热量和功耗。这意味着内核需要以较低的时钟速度运行来补偿。尽管如此,你仍然能获得比单核心以更高的时钟速度运行更高的性能,因此这种折衷是值得的。
大多数游戏不会使用太多内核
问题是,并不是所有软件都能被整齐地分割成多个线程。对于离线图形渲染或视频转换等工作,可以直接将工作分配给每个 CPU 内核。然而,游戏的工作量却不是这样。一款游戏可能有一个线程负责物理,另一个线程负责人工智能,一个线程负责在开放世界中运行特定的模拟,另一个线程负责帮助 GPU 进行 光线追踪等等。
众所周知,游戏很难通过 “线程” 的方式利用大量内核。这也是为什么游戏 PC 在内核竞赛中一直处于落后的原因。如果你只想玩视频游戏,其实并不需要很多内核。如今,6 到 8 个内核似乎是最佳选择,这也是有道理的,因为主流游戏机都有 8 个内核的 CPU,而这正是开发人员编码所需要的。
主线程是分母
那么,单核性能的问题出在哪里?在大多数游戏中,有一个中心线程基本上是游戏的支柱。它运行游戏的主要逻辑和流程,并负责将工作分配给其他下属线程。换句话说,游戏中的其他线程必须等待一个线程才能完成工作。
因此,游戏中最快的运行速度不能超过这个主线程的运行速度。当我们说一款游戏 “CPU 受限” 或存在 “CPU 瓶颈” 时,通常是因为这个软件主线程受到了特定 CPU 单线程最高性能的限制。
某些 CPU 专为线程而生
这就是为什么在玩游戏时,不能只购买预算允许的最贵 CPU 就了事。与同类产品中的廉价 CPU 相比,高核数 CPU 的单核性能往往更差。它们是为软件设计的,软件可以在所有内核之间平均分配工作,在这种情况下,它们的性能会优于其他一切,但代价是单核无法达到相同的性能高度。
现在,情况并非总是如此。如果两款 CPU 的内核数不同,但单核提升时钟规格相同,那么单核性能应该是相似的。不过,这确实意味着主要用于游戏的电脑不需要 24 核 CPU,而高性能、高频率的 8 核或 12 核 CPU 就能满足要求。
游戏正在发生变化
虽然单核性能仍然是视频游戏性能和构建的主要考虑因素,但这种情况正在发生变化。3A 游戏引擎越来越善于利用更多的内核,开发人员也在想出巧妙的办法,将游戏的工作量分散到可用的 CPU 内核上。例如,贝塞斯达公司(Bethesda)的《毁灭战士:永恒》(Doom Eternal)显然没有一个中央工作线程能阻挡一切。对于游戏 CPU 而言,拥有大量 CPU 缓存也是另一个重要因素,AMD 非常成功的 3D V-cache 游戏 CPU 就证明了这一点。
总结
但是到目前为止,如果你的主要目的是玩游戏,我不建议你购买 8 核以上的 CPU,但在未来,我们一定会看到有更多的游戏可以利用更多的核心,并将主线程分割成更多的线程,这样就不会让单核达到极限。