计算机由多个部件组成。其中最关键的内部部件可以说是 CPU。CPU 是中央处理器的缩写,是计算机的大脑。它由数十亿个微小晶体管组成,这些晶体管作为电子开关,控制电流流经复杂电路。
除了执行程序任务外,CPU 还协调计算机中的其他部件,包括 RAM(随机存取内存)、HDD(硬盘驱动器)和 SSD(固态硬盘)。
决定处理器性能和效率的因素很多,其中最常讨论的话题之一是 cores vs. threads。一般来说,人们认为核心数越多性能就越好。但情况往往没有那么简单。
了解核心和线程的作用很重要,这样你在购买或配置计算机时才能做出正确决策。理想情况下,你希望在不过度花费的前提下尽可能优化性能。根据你需要执行的任务,合适的核心数和线程数差异很大。
此外,如果你选择便携设备(比如笔记本电脑),功耗效率是不能忽视的。带着计算机外出时最糟糕的情况就是在完成任务途中电池耗尽。选择功耗合理的 CPU 可以降低遇到此类问题的风险。
在这篇文章中,我将解释你需要了解的有关计算机处理器核心和线程的所有内容、它们之间的区别,以及影响处理器性能的其他因素。
什么是 CPU 核心?
简单说,核心是 CPU 内部的一个物理处理单元,负责独立执行任务。你可以把 CPU 想象成一个工厂,每个核心是一个「工人」,能处理任务。一般来说,工人越多,在相同时间内执行的任务就越多。
传统上,CPU 核心被设计为一次执行一个任务。这意味着早期计算机缺乏多任务处理能力。然而,随着多线程技术的发展,CPU 核心的工作方式发生了显著变化。我会在本文后面详细介绍这一点。
单核与多核处理器
早期的计算机采用单核 CPU,一次只能运行一个任务。为了同时执行多个程序,计算机工程师尝试扩展主板并添加多个 CPU 单元。然而,多个独立运行的 CPU 会引入大量延迟,实际效果不理想。
为了解决这个问题,工程师设计了多核处理器。由于每个核心独立工作,每个核心可以处理自己的指令集,不会影响其他核心。这意味着处理器的核心数越多,计算机能同时执行的任务就越多。
单核 CPU 功耗明显较低,足以应对日常网页浏览等任务。但由于性能能力有限,它们的使用已日益减少。虽然在某些老旧系统中仍能找到单核 CPU,但在当今市场上基本已被淘汰。
日常使用的普通电脑通常配备2个、4个、8个或16个CPU核心。面向消费者的CPU处理器中,核心数最多达到64个。而针对数据中心和企业服务器设计的处理器核心数更多。比如AMD EPYC 9654处理器就拥有96个核心。
什么是处理线程?
在计算机处理中,线程(或执行线程)是指 CPU 处理的单个任务或工作流。每个线程是操作系统可以独立管理的最小编程指令序列。线程可以是任何东西,从启动程序到保存文件。
您的 CPU 核心负责处理这些线程。在任何 CPU 中,每个核心每次至少可以执行一个线程。如前所述,拥有更多核心可以提升多任务处理能力,而处理更多线程同样能达到这一效果。
了解线程和核心的能力差异,以及它们在 CPU 中的作用,能帮助你为自己的需求做出最佳选择。
什么是多线程?
可想而知,一次只向处理器发送一个线程,等待任务完成后再发送下一个,这样做会很耗时。正因为如此,计算机工程师开发了各种方法和策略,在更短的时间内处理更多线程。
最直接的办法是把一个线程拆成更小的几个,让 CPU 并行运行它们。这叫做「多线程」。不要与同步多线程或时间多线程混淆。程序的线程化程度取决于它的开发方式——可以是轻度线程化,也可以是重度线程化。
多线程集成策略的概念可以追溯到 20 世纪 50 年代。直到 20 世纪 90 年代末,Intel 才采用同步多线程 (SMT) 技术为桌面计算机开发了基于硬件的多线程技术。Intel 将这项功能命名为 超线程技术 并在2002年的Intel奔腾4桌面处理器芯片中推出。
Intel 的超线程技术让单个 CPU 核心最多可以同时处理两个线程。这意味着你能调用两倍数量的处理能力来完成任务。但需要注意的是,这两个线程会共享同一核心的资源。
超线程:优缺点
超线程的主要优势是能够充分利用处理器资源,显著提升系统性能。不过在某些场景下,单线程的表现可能更好。
在大多数情况下,尤其是日常多任务处理时,你的计算机的 CPU 核心通常不会满负荷运行。这意味着还有更多处理能力可以利用。超线程技术能够激活 CPU 核心中未被使用的处理能力来运行其他线程,让你能更高效地发挥 CPU 的最大潜能。
超线程技术虽然有优势,但也有明显的缺点。主要缺点是功耗增加。与基于ARM的芯片相比,Intel处理器以耗电量大而闻名,超线程是其中一个原因。
处理器功耗增加导致超线程产生高温和热降速。CPU 会自动降频以防止过热。此外,采用 Intel CPU 的便携设备需要更笨重的散热系统,这会显著增加设备的重量和体积。
最后,由于性能提升主要取决于具体应用,利用超线程技术的应用设计最终还是要靠开发者来实现。这增加了开发高效程序的难度。另外,不支持超线程的软件在处理器密集型场景下可能运行不稳定。
更多核心还是线程:哪个更好?
这取决于你计划运行的程序。很难说哪个在所有情况下都更重要。更多核心通常意味着更多可用资源。另一方面,更多线程可能提升多任务处理能力,但也不总是如此。
对于高度多线程的程序,每个 CPU 核心分配更多线程通常会加快执行速度。相反,为单线程 CPU 核心架构优化的程序在启用超线程时可能会出现性能下降。
不过,有些人注意到,关闭超线程后,许多游戏(无论新旧)的运行性能会明显提升。例如,Reddit 上有用户声称他看到了大约 他禁用超线程后,大多数游戏的帧率提升了 30% 在他的 Intel Core i9 CPU 上。
多年来,Intel 凭借超线程技术在笔记本电脑和台式机芯片市场中占据主导地位,其芯片提供的线程数是核心数的两倍。然而,一些竞争对手最近开始开发不同的 CPU 架构,这些架构效率更高,同时提供单线程 CPU 核心。
以苹果芯片为例,这是一系列基于ARM架构的芯片,在苹果最新电脑中的能效明显优于基于Intel的型号。同样,包括微软Surface Pro 11在内的多款新型Windows笔记本电脑也已转向ARM处理器,以获得更好的电池续航和日常使用性能。这些ARM芯片都配备了单线程核心。
综合来看,线程数更多不一定能提升 CPU 性能。但核心数更多则直接影响处理器处理复杂、资源密集型命令的能力。
还有哪些因素影响 CPU 的性能?
我们已经讲解了计算机中处理器核心和线程的区别。不过,这些并非决定你的 CPU 最终性能的唯一因素。
时钟频率(也叫「时钟速率」或简称「频率」)是计算机处理器的主要指标之一。简单说,它衡量 CPU 每秒能完成多少个时钟周期。比如,一个 3.2 GHz 的处理器每秒能执行 32 亿个周期。
另一个需要考虑的参数是 CPU 的缓存内存。CPU 缓存是高速内存,用于存储频繁访问的数据。更大更快的缓存能加快 CPU 执行需要频繁数据访问的任务的速度。
计算机处理器采用纳米(nm)制造工艺制造(如 7nm 或 5nm)。工艺节点越小,芯片上能集成的晶体管就越多,信号传输距离更短,耗时更少,能耗更低,从而提升功率效率和性能。
IPC(每周期指令数)、总线速度和热设计功耗等因素也会影响 CPU 的性能表现。
在结束之前,让我为你介绍一下我们的高性能 Cloud VPS 在 Cloudzy。我们提供高端 3.2 和 4.2 GHz 的 CPU,NVMe 存储,高带宽,以及高达 10Gbps 的连接。如果你在寻找稳定可靠的虚拟机,一定要看看我们的 VPS 方案,性能和速度都无可挑剔。
需要高性能的云服务器?立即购买 VPS,按使用付费,省去不必要的开支。
开始使用总结:线程 vs. 核心
在计算机性能方面,CPU 是负责执行程序的主要部件。CPU 核心是 CPU 中用于处理任务的物理单元。通常,CPU 配备多个核心,每个核心至少执行一个线程。
线程通常指的是发送给 CPU 核心处理的最小指令序列。每个 CPU 核心至少可以同时处理一个线程。在支持超线程的处理器中,这个数字提升到两个,意味着两个线程可以同时使用一个核心的资源来执行不同的任务。
虽然支持 SMT 技术的核心在理论上可以同时处理多个线程,提供更好的多任务处理能力,但这并不总是意味着处理输出会直接增加。
FAQ
拥有更多核心还是线程更好?
这取决于你计划运行的程序。多线程应用通常在更多线程下表现更好,而某些程序可能在单线程核心上运行得更优。但总的来说,核心数越多,CPU 的性能提升越明显。
一个核心有多少个线程?
在当今大多数 Intel CPU 中,每个核心可以同时处理两个线程,这得益于一项名为超线程的技术。但并非所有处理器芯片都是如此。例如,基于 ARM 的 CPU 每个核心只有一个线程。
核心和处理器有什么区别?
核心是计算机处理器(CPU)内的物理处理单元。一个处理器中可以有多个核心,每个核心都是独立的处理单元,能够独立执行指令。