Virtualbox поддерживает горячее добавление памяти?

5092
BCoates

У меня есть Ubuntu VM, которая перебивает своп из-за небольшого выделения гостевой памяти на хосте с большим количеством свободной оперативной памяти. Похоже, что гостевое ядро ​​скомпилировано для поддержки оперативного добавления оперативной памяти. Есть ли способ заставить виртуальную коробку монтировать больше оперативной памяти, не выключая работающую виртуальную машину?

Мне не нужно нулевое время простоя, я могу сохранить состояние, но я не хочу перезапускать многодневное задание обработки в гостевой системе.

Гость - Ubuntu 12.04, Хост - OSX 10.7, оба x64.

5

1 ответ на вопрос

3
soandos

VirtualBox не поддерживает добавление дополнительной памяти таким способом. Однако во многих случаях все равно стоит перезапустить вычисления, поскольку скорость может увеличиться в сто и более раз при использовании оперативной памяти, а не жесткого диска.

Важное примечание, даже если ваша виртуальная машина «перебивает», это не означает, что ОЗУ не используется окнами (кэширование диска, который использует виртуальная машина), и, следовательно, перегрузка оказывает незначительное влияние / не оказывает никакого влияния.

Чтобы выяснить, так ли это, просто проверьте скорость операции и посмотрите, есть ли изменение (или было изменение), когда «начался процесс обмолота» или объем оперативной памяти, занимаемый процесс VirtualBox значительно превышает объем оперативной памяти, которую имеет гость.

Хотя vbox не поддерживает строго горячее добавление памяти, он поддерживает всплывающие подсказки: http://www.virtualbox.org/manual/ch04.html#guestadd-balloon. Я бы порекомендовал оператору перезапустить виртуальную машину - только один раз - и перегружать память намного больше, чем вы думаете. Vbox * должен * быть умным об этом и использовать эту дополнительную память, только если этого требует гость. Не перегружайте себя сверх физической памяти, но вы можете подойти довольно близко к физической памяти. В худшем случае ваш хост начинает обмениваться, но он начнет это делать только в том случае, если на хосте будет существенное давление памяти, что, как правило, хорошо. Horn OK Please 12 лет назад 2
@allquixotic, согласился, но это не главное (насколько я могу судить, так или иначе). Если ОП редактирует / комментирует по этому поводу, то я добавлю эту идею в свой ответ (или не стесняйтесь размещать свои собственные) soandos 12 лет назад 0
Файл подкачки гостя находится на SSD, смонтированном непосредственно на виртуальной машине, а не на виртуальном диске, поэтому операционная система хоста не имеет возможности его кешировать. Обмен происходит только периодически, когда гость обслуживает несвязанные запросы. Это приводит к тому, что обработка почти останавливается до тех пор, пока не закончится другое задание, но прогресс вперед все еще происходит. BCoates 12 лет назад 0
@allquixotic, к сожалению, хост OSX. Добавил это к вопросу. BCoates 12 лет назад 0
@BCoates, если файл подкачки на твердотельном накопителе, перебрасывание по сути бессмысленно, и не беспокойтесь. soandos 12 лет назад 0

Похожие вопросы