Назад | Перейти на главную страницу

В VMware ESXi 5.x есть ли разница, если я выберу 2 ядра ЦП или 2 сокета ЦП?

Название говорит само за себя. Мне просто интересно, имеет ли это значение для того, как виртуальные машины будут обрабатывать вещи, и предпочтительнее ли один метод по сравнению с другим.

Нет, ваша виртуальная машина должна работать так же и будет использовать те же ресурсы на хосте. Это просто выбор дизайна, который в первую очередь был добавлен, чтобы добавить некоторую гибкость, когда ваша ОС или программное обеспечение могут иметь требования к лицензированию ЦП.

Каждый сокет / ядро ​​будет представлять одно физическое ядро ​​на хосте. Помните, что большее количество ядер автоматически не является хорошей вещью из-за требований планирования.

Основная цель опции «ядра / сокет» - обеспечить гибкость программного обеспечения, которое может иметь требования к среде выполнения или лицензированию в зависимости от количества «физических» сокетов или ядер ЦП.

Хотя нет никакой разницы в производительности между несколькими ядрами на одном сокете и комбинацией нескольких сокетов, есть ЯВЛЯЕТСЯ небольшая разница в работе, если вы включаете или требуете функцию горячего добавления ЦП виртуальной машины.

Благодаря функции горячего добавления ЦП VMware вы можете добавить сокет к работающей виртуальной машине, но не дополнительные ядра. Как ни странно, это то, с чем я сталкиваюсь в процессе производства на работе, и повлияло на то, как я настраиваю новые виртуальные машины.

Вообще говоря, это не повлияет на производительность.

Достаточно сложная ОС может изменить эвристику планирования (например, сохранить тесно связанные потоки на ядрах в одном пакете, что с некоторыми конструкциями микросхем может повысить эффективность использования кэша, совместно используемого ядрами) в зависимости от расположения (заполненных) сокетов и ядер. В виртуализированных установках какая-то разница, вероятно, будет незначительным или оказываются полностью спорно из-за способом доступа расписания гипервизора CPU для гостевых виртуальных машин, если гипервизор не неглупый о базовом планировании между / внутри виртуальными машинами тоже.

Как указывает Дэн, вам следует провести сравнительный анализ своих задач (реалистичным образом: то есть с другой активностью на хосте, а не только в тестовой среде, где рассматриваемая виртуальная машина является единственной запущенной), чтобы убедиться, что несколько виртуальных ядер / виртуальных ЦП / обоих на самом деле полезно для их производительности. Планирование доступа к ядрам может привести к задержкам, которые сводят на нет любые преимущества и фактически замедляют работу в целом - я видел отчеты, в которых для задач со значительной нагрузкой на ЦП небольшая ферма одноядерных виртуальных машин на одном и том же хосте работала значительно лучше. такое же оборудование, чем меньшее количество (где «меньшее число2 включает одну) многоядерных виртуальных машин (хотя, конечно, это может привести к гораздо большей нагрузке на память на хосте).