Хост KVM с 88 физическими ядрами использует только 14 на 64 ядерных гостях

12

У меня есть сервер с 2 процессорами (22 ядра каждый плюс HT). Я создал KVM Guest с 64 выделенными ядрами. Когда я запускаю задачу компиляции, виртуальная машина показывает все 64 ядра на 100% (при умеренном использовании дискового ввода-вывода и памяти), но на физической машине гость использует только 14 ядер на 100% вместо всех 88 ядер случайным образом (или 64 выделенных ядра на 100%). Даже если я создаю больше задач по компиляции, это не изменится. Нужно ли изменить какой-либо параметр или параметр, чтобы фактически использовать всю доступную вычислительную мощность?

РЕДАКТИРОВАТЬ: скриншот htop (левый гость, правый хост)

HibikiTaisuna
источник
Как вы создаете своего гостя KVM? CLI? GUI?
Леннией
1
Я использовал XML-Dump в virsh, потому что он был перенесен со старого сервера и изменил конфигурацию, чтобы соответствовать новому серверу в virt-manager.
HibikiTaisuna
Не могли бы вы показать вывод virsh cpu-stats <VMname>?
Леннией
Все ядра, кроме 14, показывают 0,0000 с. Но я мог найти хотя бы одну ошибку. В XML было закрепление vCPU, которого нет в virt-manager. Я удалил его for i in {0..63}; do sudo virsh vcpupin $kvmdomain $i r --config; doneи перезапустил гостя. К сожалению, он все еще использует только 14 ядер. Я перезагружу хост, чтобы посмотреть, произойдет ли это еще.
HibikiTaisuna

Ответы:

12

В XML было закрепление vCPU, которого нет в virt-manager. Я удалил его через

for i in {0..63}; do sudo virsh vcpupin $kvmdomain $i r --config; done 

и удалил строку в XML-файле через

sudo virsh edit <domain> 

После этого я перезапустил гостя.

HibikiTaisuna
источник
8
И теперь это работает, да?
Леннией
7
Пока комментарий @Lenniey не будет обработан, это не ответ на вопрос.
труба
@Lenniey да, теперь все работает как задумано
HibikiTaisuna