物理核心、逻辑核心和虚拟核心

物理核心、逻辑核心和虚拟核心

我的处理器有 4 个物理核心。每个核心最多有 8 个虚拟核心。以下情况适用吗:

  • 如果启用超线程,则 4x 2 = 8 个逻辑核心。这意味着 8 x 8 = 64 个最大虚拟核心

  • 如果未启用超线程,则最大虚拟核心数为 4 x 8 = 32。 或者它总是4x8=32个虚拟核心?

答案1

您好,以下是一些有助于您理解的基本知识:
1. 物理核心越多,性能越好
。2. 单个物理处理器中的逻辑核心有助于处理器执行多任务,但与专用物理处理器相比效果并不更好
。3. 超线程是在单个物理核心中实现多核性能的过程
。4. 超线程不会增加逻辑核心,它们的实现已经由制造商固定
。5. 超线程允许 CPU 负载在核心中分配,如果需要更多分配,则使用时间分片、循环等不同技术在物理核心内划分负载

因此,如果您的 CPU 有 4 个物理核心,每个核心最多有 8 个逻辑/虚拟核心,那么它将始终是 4x8 = 32 个核心,
希望这会对您有所帮助。:-)

答案2

不是。在这种情况下,逻辑处理器和“虚拟核心”是一回事。如果启用超线程,则每个物理核心有两个逻辑处理器。因此,总共有八个逻辑处理器或八个虚拟核心,无论您想使用哪个术语。

如果没有超线程,每个物理核心只有一个 LP。

答案3

在 VM/虚拟机管理程序上下文中(考虑到 Azure VM):

虚拟机管理程序是负责为虚拟机分配计算资源的软件。假设我们有 2 种类型的主机处理器:

  1. 计算 A:具有 4 个物理核心的超线程处理器
  2. 计算 B:没有具有 4 个物理核心的超线程处理器

假设我们创建了 2 台虚拟机,1 台需要较少的计算能力(虚拟机 X),1 台需要更多的计算能力(虚拟机 Y)。

计算A:

  1. 虚拟机管理程序将 1 个物理核心分配给 VM X 作为 1 个虚拟核心
  2. VM X 获得 2 个逻辑核心,即 2 个 vCPU
  3. 因此,VM X 涉及 2 个 vCPU、2 个逻辑核心、1 个虚拟核心和 1 个物理核心
  4. 虚拟机管理程序将 2 个物理核心分配给 VM Y 作为 2 个虚拟核心
  5. 然后,VM Y 获得 4 个逻辑核心,即 4 个 vCPU
  6. 因此,虚拟机 Y 涉及 4 个 vCPU、4 个逻辑核心、2 个虚拟核心和 2 个物理核心

计算B:

  1. 虚拟机管理程序将 1 个物理核心分配给 VM X 作为 1 个虚拟核心
  2. VM X 获得 1 个逻辑核心,即 1 个 vCPU
  3. 因此,VM X 涉及 1 个 vCPU、1 个逻辑核心、1 个虚拟核心和 1 个物理核心
  4. 虚拟机管理程序将 2 个物理核心分配给 VM Y 作为 2 个虚拟核心
  5. 然后,VM Y 获得 2 个逻辑核心,即 2 个 vCPU
  6. 因此,虚拟机 Y 涉及 2 个 vCPU、2 个逻辑核心、2 个虚拟核心和 2 个物理核心

对于虚拟机来说,没有物理核心,只有虚拟核心(虚拟核心看起来就像物理核心,就像虚拟机本身看起来就像物理机器一样)。注意,这里我们假设 1 个物理核心作为虚拟机的 1 个虚拟核心。但是虚拟机管理程序可能会决定将 2 个物理核心和抽象的将它们作为虚拟机的 1 个虚拟核心(或者通常可以将 M 个物理核心抽象为 N 个虚拟核心)。然后根据超线程因素选择逻辑核心。

vCPU 的数量与虚拟核心(因此底层物理核心的数量)支持的逻辑核心数量相同。[来源:蔚蓝艾伦虚拟机]

源文本(以防源超链接中断):

Azure Alan: 蔚蓝艾伦

VMWare: 虚拟机

相关内容