1

У меня есть хост-машина с 1 логическим процессором, работающим на частоте 2,0 ГГц, с работающими 2 виртуальными машинами. Каждая виртуальная машина работает на 100% (согласно диспетчеру задач внутри виртуальной машины). Я понимаю, что это «100%» не является точным в том смысле, что фактически каждая виртуальная машина использует около 50% доступных ресурсов ЦП хост-машины. Только если я остановлю одну из виртуальных машин, работающая виртуальная машина действительно будет использовать 100% физического процессора.

Как работает этот процесс? Если физический процессор работает на частоте 2,0 ГГц, мы создаем два виртуальных процессора, каждый из которых работает на частоте 1,0 ГГц? Итак, когда мы видим 100% загрузку на обеих виртуальных машинах, мы говорим о 100% 1,0 ГГц на каждой? Как этот процент использования получается в первую очередь?

Спасибо!

2 ответа2

3

Использование, которое вы видите внутри виртуальной машины, представляет собой процент времени, в течение которого она запрашивала процессор, независимо от того, получил он его или нет. По сути, 100% означает 100% ЦП, доступный этой виртуальной машине.

Если физический процессор работает на частоте 2,0 ГГц, то и виртуальные процессоры тоже. Однако, поскольку имеется только одно действительное ядро, одновременно может работать только один из виртуальных процессоров. Когда вы видите 100% -ное использование на обеих виртуальных машинах, вы говорите о том, что каждая виртуальная машина всегда хочет столько процессоров, сколько может получить. Как правило, каждый из них получает около 50% доступного процессора.

Не говорите так: «Итак, когда мы видим 100% -ное использование на обеих виртуальных машинах, мы говорим о 100% от 1,0 ГГц на каждой?"Это в основном ерунда. Если вы пользуетесь автомобилем со скоростью 50 миль в час каждый день, мы не описываем это как 100% от 25 миль в час. Цены не работают таким образом. Процессор обладает некоторой способностью выполнять работу, и виртуальные машины разделяют ее. Если каждый хочет все, что он может получить, то каждый получает около 50% мощности процессора для выполнения работы. 2,0 ГГц - это тактовая частота ядра, а не способность выполнять работу. Так что нет смысла делить это.

1

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .