Добавить в корзинуПозвонить
Найти в Дзене

Высокая нагрузка процессора виртуальной машины Windows 10

В этой статье снова пойдёт речь о виртуализации. Точнее о тонкостях работы гипервизоров на основе KVM и гостевой машине – #windows 10 Я с удивлением обнаружил, что проблема воспроизводится и в системах под управлением #Proxmox. Предыстория У нас настроен гипервизор KVM+Virt-manager, на котором крутится пул разнообразных виртуальных машин. В том числе под управлением Windows. Как-то мы производили повышения ряда виртуальных рабочих станций до Windows 10. После успешного повышения я с удивлением обнаружил непропорционально сильное увеличение нагрузки на #CPU гипервизора. Мы первым делом взглянули на то, какие процессы грузят процессор. Как и следовало ожидать, повышенную нагрузку создавали именно свежесозданные виртуалки с Windows 10 Мы начали расследование: В итоге прояснилось интересное противоречие: Лично меня разница сильно впечатлила. Проблема, как оказалось, может иметь несколько причин👇 🔹Windows разных версий по-разному работают с таймером. В случае с Windows 10 необходимо прис
Оглавление

В этой статье снова пойдёт речь о виртуализации.

Точнее о тонкостях работы гипервизоров на основе KVM и гостевой машине – #windows 10

Я с удивлением обнаружил, что проблема воспроизводится и в системах под управлением #Proxmox.

Предыстория

У нас настроен гипервизор KVM+Virt-manager, на котором крутится пул разнообразных виртуальных машин. В том числе под управлением Windows.

Как-то мы производили повышения ряда виртуальных рабочих станций до Windows 10. После успешного повышения я с удивлением обнаружил непропорционально сильное увеличение нагрузки на #CPU гипервизора.

Мы первым делом взглянули на то, какие процессы грузят процессор. Как и следовало ожидать, повышенную нагрузку создавали именно свежесозданные виртуалки с Windows 10

Мы начали расследование:

  • На том же гипервизоре была развёрнуты ВМ с Windows 10.
    В свойствах было выставлено одно ядро, чтобы удобно было сопоставлять с нагрузкой из консольного приложения «top».
  • Машинка была запущена и оставлена без нагрузки. Параллельно с неё снимались показания на уровне гипервизора и на уровне самой системы.

В итоге прояснилось интересное противоречие:

  • Нагрузка на виртуальную машинку Windows 10 (со слов её же диспетчера задач), составляла 2-5%
  • Нагрузка на ту же машину на гипервизоре составляла 35-45%.

Лично меня разница сильно впечатлила.

Проблема, как оказалось, может иметь несколько причин👇

🔹Windows разных версий по-разному работают с таймером. В случае с Windows 10 необходимо присутствие на виртуальной машине флагов CPU hv_synic и hv_stimer.
🔹 Что занятно, для Windows 8 рекомендация как раз
обратная.

🔹 Также рекомендуется выставить следующие свойства в виртуальной машине:

<clock offset='localtime'>

<timer name='rtc' tickpolicy='catchup'/>

<timer name='pit' tickpolicy='delay'/>

<timer name='hpet' present='no'/>

<timer name='hypervclock' present='yes'/>

</clock>

После внесения соответствующих изменений нагрузка на гипервизоре упала до 8-10%

😎Если Вам нужна помощь ИТ-специалиста в этом и других вопросах, звоните: ☎️ 8 499 113 18 10

Автор: Вячеслав Финютин, основатель компании "Benarit"

Чтобы подробнее разобраться в этой теме, загляните в источники: