云服务器中的“单核”通常指的是物理核心(Physical Core),而它是否支持超线程(Hyper-Threading),取决于云服务商的具体实例规格和底层硬件架构。
在云计算环境中,情况比传统 PC 更复杂,不能一概而论:
-
默认情况与命名规则
- 当你在云控制台看到"vCPU"或“核数”时,这通常指的是逻辑处理器的数量。
- 如果底层物理 CPU 开启了超线程技术(Intel 的 HT 或 AMD 的 SMT),那么1 个物理核心 = 2 个 vCPU。
- 如果底层物理 CPU 未开启超线程,或者该实例规格明确禁止超线程,那么1 个物理核心 = 1 个 vCPU。
-
不同厂商的策略
- 通用型实例(如阿里云 t5/t6, 腾讯云 c5/c6, AWS m5/m6):大多数现代通用型实例底层使用的是支持超线程的 CPU,因此你购买的"1 核”通常对应的是1 个物理核心 + 2 个逻辑线程(即 2 个 vCPU)。但在某些特定场景下,云厂商可能将"1 核”直接定义为 1 个 vCPU(即 0.5 个物理核心),具体需查看产品文档。
- 计算型/高性能实例:为了追求极致的性能稳定性,部分高端实例(如阿里云的计算型 c7、AWS 的 c6g 等)可能会关闭超线程,确保每个 vCPU 独占一个物理核心的完整资源,避免争抢。
- 突发性能实例(如阿里云 t5/t6 的旧版,AWS t3):这类实例通常基于共享 vCPU 模式,其"1 核”往往意味着 1 个物理核心被拆分给多个实例使用,且通常开启超线程以提供更高的并发能力,但单个实例无法独占全部性能。
-
如何确认?
由于云厂商的底层硬件会随时间更新,最准确的方法是:- 查阅官方文档:搜索该具体实例规格族(Instance Family)的说明,通常会标注“基于 Intel Xeon…"、“是否支持超线程”或"vCPU 与物理核心的比例”。
- 操作系统内查看:登录服务器后,可以通过命令查看实际硬件信息。
- Linux:
lscpu命令。观察Core(s) per socket和Thread(s) per core。如果Thread(s) per core为 2,则说明当前环境支持超线程;如果为 1,则不支持或未开启。 - Windows: 任务管理器 -> 性能 -> CPU,查看“内核”和“逻辑处理器”数量。若逻辑处理器是内核的 2 倍,则支持超线程。
- Linux:
结论
云服务器标称的“单核”并不直接等同于“单线程”。
- 如果该实例底层硬件开启了超线程技术,且云厂商按 vCPU 售卖,那么"1 核”(1 vCPU)通常代表半个物理核心(即 1 个物理核心被拆分出的 2 个线程之一),或者是1 个物理核心上的 1 个逻辑线程。
- 如果该实例是为了保证性能稳定性而关闭了超线程,那么"1 核”就是1 个物理核心 + 1 个线程。
简而言之: 绝大多数现代通用型云服务器的"1 核”是指1 个 vCPU(逻辑线程),它背后对应的物理资源可能是 0.5 个物理核心(开启超线程时)或 1 个物理核心(关闭超线程时)。要确定具体的物理映射关系,必须参考该实例规格族的官方技术文档或在系统内运行 lscpu 进行验证。
PHPWP博客