Вопрос или проблема
У моего процессора i5 4 ядра и 4 потока, когда я запускаю виртуальную машину CentOS 7 на VMware Workstation 16.2 с следующей конфигурацией ЦП:
Количество процессоров 1
Количество ядер на процессор: 4
или
Количество процессоров 2
Количество ядер на процессор: 2
Могу я узнать, есть ли разница в производительности? Спасибо.
Что касается VMware, то разницы между 1 из 4 или 2 из 2 нет.
VMware эмулирует ЦП, запуская один
поток
для каждого ядра. В обоих сценариях будет запущено четыре потока.
Некоторое различие может существовать для гостевой VM, так как это будет влиять
на алгоритм планирования ЦП. В сценарии 1 из 4 гостевая ОС
может предположить, что доступно меньше параллелизма, и, следовательно, будет использовать
виртуальные ЦП менее эффективно.
Идеальным является половина количества ядер, включая ядра с гипертехнологией, которые есть у вашего компьютера.
Если ваш ЦП не имеет гипертехнологии и имеет 4 реальных ядра, вам нужно назначить максимум 2 из них.
1 процессор, 2 ядра.
Это предполагает, что вы хотите максимальную скорость как от вашего компьютера, так и от вашей VM, и что вы запускаете только одну VM.
У меня VMware V16.2.2 на Windows 10 Pro. У него 2 ядра, 4 потока.
Разумное правило — использовать половину этого для ВМ, и я использую 1 ЦП с 2 ядрами для моих ВМ (для всех из них).
У машины быстрый SSD и достаточно памяти.
У меня работает 3 виртуальные машины, но я склонен использовать одну за раз или хост (поскольку я обычно работаю над чем-то одним в один момент времени).
Таким образом, мои виртуальные машины очень быстрые (сейчас я работаю в машине Kali), и мой хост Windows 10 тоже очень быстрый.
Использование половины общего количества ядер обеспечивает (по моему (долгому) опыту с VMware) лучший баланс для быстрой хост-машины и быстрых виртуальных машин.
Если вы выделяете слишком много ресурсов своей VM, ваша хост-машина может замедлиться.
Ваша производительность всегда будет плохой, но избегание этих конфигураций поможет.
- Старайтесь избегать высокозатратных сетевых конфигураций. Один NAT-интерфейс, никаких лишних ВМ, антивирусных сканеров/фаерволов/фильтров интернета.
- Переместите файлы виртуальных машин на физической машине в папку, которая не сканируется регулярно антивирусами, OneDrive, Google Drive, сервисами контроля версий или другими системами резервного копирования.
- Выделите максимально запрашиваемую ОЗУ и количество процессоров, которое является степенью 2, большей, чем половина доступных процессоров. Разделение их примерно поровну между процессорами и ядрами является разумным (например, 16 процессоров на 4 процессора/4 ядра на ВМ). Но для моих приложений это, похоже, не имеет значения.
- Сделайте все обычные вещи для повышения производительности ОС. Отключите анимацию GUI. Отключите индексацию файлов. Отключите странные моменты виртуальной памяти. Отключите любые службы, инструменты обновления, аппаратные компоненты, которые вы можете не использовать.
- Не используйте общий доступ к файлам, общие папки с хостом, не монтируйте сетевые диски, если можете этого избежать.
В основном, я понял, что оборудование дешевле по сравнению с моим временем, и если кто-то говорит, что «это» работает только под Windows Vista или «нам» нужна согласованная среда разработки, это всегда означает, что они не хотят тратиться, чтобы получить необходимые инструменты — они восстанавливают старые инструменты, пиратят одну лицензию на десяток настольных ПК или используют какую-то смесь приложений — при этом требуя, чтобы вся документация была в «честных» офисных приложениях.
Найдите повод, чтобы ваши инструменты были совместимы, лицензированы и актуальны.
Ответ или решение
Оптимизация процессора в VMware Workstation: Параметры и рекомендации
Если вы используете VMware Workstation на компьютере с процессором Intel i5, у которого есть 4 ядра и 4 потока, важно правильно настроить конфигурацию виртуальных машин (VM) для достижения наилучшей производительности. Давайте рассмотрим два основных сценария настройки процессора для вашей виртуальной машины, а также предоставим рекомендации по оптимизации.
Варианты настройки процессора
-
Один процессор с четырьмя ядрами:
- Конфигурация: 1 процессор, 4 ядра.
- Пример: Как указано, в этом случае VMware эмулирует один физический процессор с четырьмя ядрами. Это означает, что ваша виртуальная машина будет работать с одним пулом ресурсов без распараллеливания.
-
Два процессора с двумя ядрами:
- Конфигурация: 2 процессора, 2 ядра.
- Пример: В этом сценарии VMware использует два виртуальных процессора, каждый из которых имеет по два ядра. Это позволяет некоторым ОС и приложениям использовать вычислительные ресурсы более эффективно за счет распараллеливания задач.
Какой вариант лучше?
С точки зрения производительности в обоих сценариях будет запущено 4 потока, поэтому общая вычислительная мощность может показаться одинаковой. Однако есть несколько факторов, которые стоит учитывать:
- OS-планирование задач: В первом варианте: ОС внутри виртуальной машины может воспринимать наличие одного виртуального процессора как ограничение по параллелизму, в то время как во втором варианте (два процессора) она получит больше возможностей для оптимизации работы.
- Нагрузочные пики: Если ваша рабочая нагрузка требует одновременной обработки нескольких потоков (например, при интенсивной работе с данными или во время выполнения нескольких заданий), второй вариант может обеспечить большее распараллеливание и, как следствие, более высокую производительность.
Рекомендации по оптимизации
-
Ресурсы процессора: Как правило, рекомендуется выделять до половины доступных ядер для виртуальных машин. В вашем случае использование одной виртуальной машины с двумя ядрами — оптимальный выбор.
-
Память: Убедитесь, что вы выделяете максимальное количество оперативной памяти на виртуальную машину, так как это значительным образом повлияет на производительность.
-
Настройка сетевого окружения: Избегайте сложных сетевых конфигураций, таких как виртуальные маршрутизаторы, если это не требуется. Используйте NAT-интерфейсы для большей стабильности.
-
Файлы виртуальных машин: Переместите файлы виртуальных машин в папки, которые не подлежат регулярному сканированию антивирусом или резервным копированием.
-
Оптимизация хост-системы: Отключите ненужные визуальные эффекты и служб, такие как индексация файлов, чтобы минимизировать нагрузку на хост-систему.
-
Использование SSD: Высокопроизводительные SSD значительно ускорят запуск и работу виртуальных машин.
-
Мониторинг нагрузки: Следите за производительностью как хоста, так и виртуальных машин с помощью встроенных в VMware инструментов мониторинга.
Заключение
Правильная конфигурация и оптимизация мощности процессора в VMware Workstation являются ключевыми факторами для достижения высокой производительности как для виртуальных машин, так и для основной системы. Выбор между одной или двумя виртуальными процессорами зависит от вашей специфической рабочей нагрузки и того, как приложения внутри виртуальной машины используют доступные ресурсы. Соблюдение рекомендаций по оптимизации поможет обеспечить баланс между эффективностью и производительностью, позволяя вам максимально использовать возможности вашего оборудования.