Название в значительной степени говорит само за себя, есть ли какое-то преимущество, если выделять виртуальную память 2048 МБ вместо округления до базовой 10 и делать 2000 МБ?
26
Название в значительной степени говорит само за себя, есть ли какое-то преимущество, если выделять виртуальную память 2048 МБ вместо округления до базовой 10 и делать 2000 МБ?
Физическая память на сервере кратна степени двух, поэтому она будет равномерно распределяться, если вы используете другие кратные. В SLAT могут быть невероятно незначительные улучшения, например, если они правильно выровнены. В противном случае нет.
Hyper-V выделяет внутреннюю память по 2 МБ. Сам гипервизор будет использовать записи таблицы страниц размером 2 МБ для повышения эффективности, если это возможно, если ваш процессор поддерживает преобразование адресов второго уровня (SLAT). Это будет возможно практически для любой виртуальной машины с отключенной динамической памятью.
Кроме этого, нет, это не имеет значения.
источник
Просто чтобы уточнить, что сказали другие ответы; определяемый здесь предел в основном относится к программному обеспечению вашей виртуальной машины, а не гостевой. То есть, когда ваша гостевая ОС запрашивает страницу памяти, она делает это с определенными приращениями (то есть 4 КБ). Таким образом, если вы определили, что виртуальная машина имеет 4097 КБ ОЗУ, а ваша виртуальная машина использовала размер страницы 4 КБ, то она, скорее всего, предоставит виртуальной машине 4100 КБ ОЗУ.
Однако если бы гостевая ОС использовала размер страницы 1 КБ, а ваша хост-система использовала размер страницы 4 КБ, то ОС хоста, по сути, предоставила бы 4 КБ пространства, из которых будет использоваться только 1 КБ - но это из всех куски памяти. Таким образом, вы никогда не будете тратить сколько-нибудь заметного пространства.
Отметим, что выравнивание между хост-ОС и гостевой ОС здесь не является важным фактором, за исключением последних «отключенных битов».
источник
Я подозреваю, что это вопрос традиции, и согласование его с тем, как строятся физические системы. Физические системы имеют объем памяти в базовых 2-х единицах (и наименьший из всех когда-либо созданных x86, это правда), и есть некоторые шансы, если не многие ОС ожидают этого при управлении памятью.
Короче говоря, это действительно потому, что виртуальная машина отражает реальную машину, а не гипотетическую. Не очень технический ответ, но я думаю, что это настоящий
источник
На самом деле, нет. Динамическая память Hyper-v будет распределять только то, что система использует в любом случае. Сумма, которую вы назначаете, является начальным значением. Если вы не используете динамическую память, единственное преимущество, которое я вижу, - лучше настроить физическую память для виртуальной.
источник