В Клиенте инфраструктуры VMware (никакой vCenter), под Resources / Advanced CPU
раздел диалогового окна Настроек Редактирования каждого VM, существует опция изменить Привязку Планирования VM. Это устанавливает sched.cpu.affinity
значение в файле VMX.
Я полагаю, что это позволяет мне вынуждать VM только обслуживаться определенным физическим ЦП на хосте, разумное использование которого могло бы в некоторых случаях позволить мне лицензировать VM для одного физического ЦП, а не двух, которые находятся в хосте.
Описание поля конфигурации в Изменяет Настройки, следующие:
Состояние гиперпоточности: активный
Доступные центральные процессоры: 12 (логические центральные процессоры)
Выберите логическую привязку процессора к этой виртуальной машине.
Используйте '-' для диапазонов и'', разделить значения. Например, "0,2-4,7" указал бы на процессоры 0, 2, 3, 4 и 7.
Это справедливый для принятия (в этом и подобных случаях):
0-5
или 6-11
(или эти числа в некотором другом шаблоне)?Иначе существует ли надежный источник (экран VIC, команда оболочки, и т.д.) для поиска числа к ЦП, отображающегося на каком-либо конкретном хосте?
(Для ссылки центральные процессоры являются единицами Intel Xeon X5675, которые являются каждым с 6 ядрами с гиперпоточностью.)
Ваше программное обеспечение, скорее всего, лицензировано для каждого (видимого) сокета ЦП. Если вы настраиваете целевую виртуальную машину с соответствующим количеством сокетов и ядер, на самом деле не имеет значения , где ESXi решает запланировать потоки на базовом оборудовании. Ваше программное обеспечение должно заботиться только о том, что видно виртуальной машине. В этом случае требованию должна удовлетворять четырехъядерная виртуальная машина с одним сокетом.
См .: Производительность виртуальных ЦП между 1 или двумя виртуальными ЦП
Так же, как набор задач и планирование ЦП в Linux , вы не хотите идти по пути сродства к процессору и закрепления, если у вас нет веской причины.
Изменить:
Нумерация такая же, как и в наборе задач
. Для 6-ядерного ЦП Westmere вы увидите физические и Hyperthreaded ядра в соответствии со следующим графиком:
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)
Справедливо ли предположить (в этом и подобных случаях):
- числа от 0 до 11 представляют каждое из физических ядер (или «гиперпотоки» тоже пронумерованы)?
Да и да HT включены
- , если я хочу ограничить запуск виртуальной машины на одном из физических процессоров, я должен ввести 0-5 или 6-11 (или эти числа в некоторых другой узор)?
Да, в одном!