вторник, 8 апреля 2008 г.

дискуссии на тему "Overcommiting memory"

Какое то время назад разгорелась дискуссия на тему "Overcommiting memory".

Напомню, что суть этого термина - возможность ESX запустить ВМ с совокупнлй памятью большей, чем есть в сервере. Например, в сервере есть 8ГБ, мы делаем ВМ с выделением ей 2 ГБ памяти, и можем таких запустить больше 4-х.
Под другими продуктами виртуализации так не можем.
Это хорошо иллюстрируют картинки вот тут.

Добиться такого эффекта позволяют два механизма:


Первый из себя представляет механизм экономии памяти, и вот тут он интересно иллюстрируются:
есть Citrix сервер. Обслуживает 50-85 сессий. Каждая сессия - порядка 80МБ, и очень многое в них совпадает - одни и те же приложения, DLL. За счет хранения совпадающего в одной копии, сервер с 4 ГБ выданной памяти на хосте реально занимает 1 ГБ и меньше.

вторй же механизм - механизм вытеснения части памяти ВМ в своп - может работать всегда, а не только в благоприятных случаях, как первый. Но! все советуют избегать его как огня, ибо вытеснение ВМ в своп сильно роняет скорость ее работы. Так что такой "Overcommiting memory" может быть и во вред.

Мне хотелось бы подробнее описать возникшую вокруг этого дискуссию. У сожалению, время не резиновое, поэтому даю только подборку ссылок - тут.

0 коммент.:

Отправить комментарий