Как назначить выделенные виртуальные ЦП конкретной виртуальной машине на Proxmox (KVM) или какая система может это сделать?

Как назначить выделенные виртуальные ЦП конкретной виртуальной машине на Proxmox (KVM) или какая система может это сделать?

Я публикую это здесь, потому что то, что я нашел по этой теме, либо устарело, либо неполно, либо не подходит по разным причинам.

Я давно хотел узнать, как сопоставить определенные виртуальные ЦП с определенной виртуальной машиной (которой требуется максимально возможная производительность ЦП и как можно меньше блокировок ЦП/переключений контекста), в то время как в том же узле есть другие виртуальные машины, которые не могут получить доступ к закрепленным ядрам (они должны быть доступны только для определенной виртуальной машины), и распределение ЦП для которых выполняется планировщиком «по умолчанию».

В настоящее время я использую Proxmox (только с использованием KVM), обычно последнюю версию в ветке pvetest и последнее ядро ​​3.X.

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

Заранее большое спасибо и надеюсь, что (многие возможные) ответы на этот вопрос будут полезны многим другим людям.

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

решение1

Кажется, у proxmox уже есть похожие опции.

https://forum.proxmox.com/threads/numa-config-option.21313/

Да, он будет использовать закрепление ЦП (привязанность). Насколько я понимаю, включение NUMA изменит алгоритм планирования таким образом, что теперь он будет знать об узлах NUMA на базовом физическом ЦП. Таким образом, будет предпринята попытка сохранить планирование vCPU в пределах одного и того же узла NUMA, когда это возможно.

Связанный контент