首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CPU亲和力的编号方案

CPU亲和力的编号方案
EN

Server Fault用户
提问于 2014-12-24 15:55:55
回答 2查看 2.5K关注 0票数 2

在VMware基础设施客户端(无vCenter)中,在每个VM的编辑设置对话框的Resources / Advanced CPU部分下,有一个选项可以更改VM的调度亲和性。它在VMX文件中设置sched.cpu.affinity值。

我相信这允许我强制VM只能由主机上的特定物理CPU提供服务,明智地使用它在某些情况下可能允许我为一个物理CPU而不是主机中的两个物理CPU授权VM。

编辑设置中配置字段的描述如下:

超线程状态:活动可用CPU: 12 (逻辑CPU)为此虚拟机选择逻辑处理器关联。使用“-”表示范围和“,”分隔值。例如," 0,2-4, 7“表示处理器0、2、3、4和7。

(在这种情况和类似情况下)是否公平地假定:

  • 数字0到11代表每个物理核心(或者“超级线程”也有编号)?
  • 如果我想限制VM在其中一个物理CPU上运行,我应该输入0-56-11 (或者这些数字是不同的模式)。

否则,是否有可靠的来源(国际中心屏幕,外壳命令等)查找任何特定主机上的数字到CPU映射?

(供参考,CPU是Intel Xeon X5675单元,每个CPU都有6核超线程。)

EN

回答 2

Server Fault用户

回答已采纳

发布于 2014-12-24 16:32:11

您的软件很可能是根据(可见的) CPU套接字获得许可的。如果使用适当的套接字和核心计数配置目标虚拟机,那么ESXi决定在底层硬件上安排线程的位置并不重要。您的软件应该只关注虚拟机可以看到的内容。在这种情况下,一个1套接字,4核心VM应该满足要求.

请参阅:1或2个vCPU之间的vCPU性能

就像Linux上的任务集和CPU调度一样,除非你有一个令人信服的理由,否则你不想走CPU的道路--亲密无间和固定在一起。

编辑:

编号与taskset相同。对于Westmere 6核心CPU,您将按照此计划看到物理内核和超线程核心:

代码语言:javascript
复制
  NUMANode L#0 (P#0 32GB) + Socket L#0 + L3 L#0 (12MB)
    L2 L#0 (256KB) + L1d L#0 (32KB) + L1i L#0 (32KB) + Core L#0
      PU L#0 (P#0)
      PU L#1 (P#12)
    L2 L#1 (256KB) + L1d L#1 (32KB) + L1i L#1 (32KB) + Core L#1
      PU L#2 (P#2)
      PU L#3 (P#14)
    L2 L#2 (256KB) + L1d L#2 (32KB) + L1i L#2 (32KB) + Core L#2
      PU L#4 (P#4)
      PU L#5 (P#16)
    L2 L#3 (256KB) + L1d L#3 (32KB) + L1i L#3 (32KB) + Core L#3
      PU L#6 (P#6)
      PU L#7 (P#18)
    L2 L#4 (256KB) + L1d L#4 (32KB) + L1i L#4 (32KB) + Core L#4
      PU L#8 (P#8)
      PU L#9 (P#20)
    L2 L#5 (256KB) + L1d L#5 (32KB) + L1i L#5 (32KB) + Core L#5
      PU L#10 (P#10)
      PU L#11 (P#22)
  NUMANode L#1 (P#1 32GB) + Socket L#1 + L3 L#1 (12MB)
    L2 L#6 (256KB) + L1d L#6 (32KB) + L1i L#6 (32KB) + Core L#6
      PU L#12 (P#1)
      PU L#13 (P#13)
    L2 L#7 (256KB) + L1d L#7 (32KB) + L1i L#7 (32KB) + Core L#7
      PU L#14 (P#3)
      PU L#15 (P#15)
    L2 L#8 (256KB) + L1d L#8 (32KB) + L1i L#8 (32KB) + Core L#8
      PU L#16 (P#5)
      PU L#17 (P#17)
    L2 L#9 (256KB) + L1d L#9 (32KB) + L1i L#9 (32KB) + Core L#9
      PU L#18 (P#7)
      PU L#19 (P#19)
    L2 L#10 (256KB) + L1d L#10 (32KB) + L1i L#10 (32KB) + Core L#10
      PU L#20 (P#9)
      PU L#21 (P#21)
    L2 L#11 (256KB) + L1d L#11 (32KB) + L1i L#11 (32KB) + Core L#11
      PU L#22 (P#11)
      PU L#23 (P#23)
票数 1
EN

Server Fault用户

发布于 2014-12-24 16:07:08

(在这种情况和类似情况下)是否公平地假定:

  • 数字0到11代表每个物理核心(或者“超级线程”也有编号)?

包括是和是

  • 如果我想限制VM在其中一个物理CPU上运行,我应该输入0-5或6-11 (或者这些数字是不同的模式)?

是的,你把它放进了一个!

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/654634

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档