Почему размер раздела подкачки должен быть в два раза больше размера оперативной памяти?

9

Почему рекомендуется, чтобы размер раздела подкачки был в два раза больше размера оперативной памяти?

В частности, зачем мне хранить данные, хранящиеся в оперативной памяти дважды?

Lazer
источник

Ответы:

10

Раздел подкачки с двойным объемом памяти - это просто общее правило, а не жесткое и быстрое правило. Вам понадобится как минимум 1-кратный объем памяти, если вы зависаете на диск (в режиме гибернации), и добавляете достаточно запасного для использования «замененной» памяти, которая выходит за пределы вашей физической. Следовательно, рекомендуется от 1,5 до 2 раз.

Я думаю, что это также зависит от характера использования вашего приложения и размера вашей физической памяти и т. Д. Если у вас есть что-то помимо 2 ГБ ОЗУ и большую часть времени вы используете приложения, не требующие большой памяти, вам может вообще не понадобиться раздел подкачки, не большой в любом случае.

Наличие большого файла подкачки и медленного жесткого диска может быть очень тяжелым для вашей системы.

Вот несколько полезных прочтений:

Ubuntu SwapFAQ
SUperuser - размер раздела подкачки для 4 ГБ ОЗУ
Нужен ли раздел подкачки и, если да, то насколько он большой?

ОКВ
источник
1
Медленно или нет, всегда лучше иметь своп на всякий случай, даже если он вам не нужен, чем рисковать нехваткой ОЗУ без свопа.
Дон
@ Дон, да, я согласен, что безопаснее иметь раздел подкачки. :)
О
2

Это старое эмпирическое правило, которое, я думаю, больше не имеет смысла, потому что в настоящее время это может равноситься абсурдному объему обмена по отношению к скорости хранилища.

Минимальный объем свопа, который вы должны иметь, - это типичное использование в устойчивом состоянии. (Это количество достигается после продолжительного времени безотказной работы, когда большая часть доступной памяти состоит из кэша страниц. Защита подкачки - это хорошее чтение.)

Но я здесь, чтобы сказать вам, что есть максимум ... если отзывчивость является проблемой вообще.

Сценарий рабочего стола: как правило, то, что происходит, когда у вас заканчивается память (например, при случайном отключении бомбы типа «вилка» make -j), выглядит следующим образом: во-первых, вы заметили немного запаздывающий пользовательский интерфейс, что означает, что у вас есть примерно минута, чтобы убить нарушителя. процесс, прежде чем указатель мыши перестает отвечать на запросы. Но это только начало! Вы видите, то , что компьютер будет сидеть там с его SSD LED горит постоянно, вспенивание через остальную часть его пространства подкачки, в течение нескольких десятков минут до нескольких часов, в то время как вы не можете делать ничего ( за исключением , может быть , потянув за вилку). В этот момент вы поклянетесь, что хотели, чтобы убийца ООМ включился чуть раньше , вместо того, чтобы тратить свой день.

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

Я обычно беру ½-2 ГБ подкачки независимо от того, сколько оперативной памяти у компьютера.

user2394284
источник
0

В частности, зачем мне хранить данные, хранящиеся в оперативной памяти дважды?

Своп просто для освобождения системной памяти. Если вы начинаете исчерпывать память, система освобождает память, перемещая наименее используемые данные из памяти в файл подкачки жесткого диска. Это, конечно, снижает скорость, но освобождает память для других приложений.

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

Hadyn
источник
0

При большем объеме подкачки программы могут использовать больше оперативной памяти, чем имеется на компьютере. Это возможно потому, что даже если данные занимают больше места, чем помещаются в физическую память одновременно, к ним нельзя получить доступ сразу - подкачка помещается в физическую память по мере необходимости. Альтернативой является случайное уничтожение программ при нехватке памяти. Это особенно полезно, если вы хотите редактировать изображения или видео с высоким разрешением, или выполнять трехмерное моделирование или рендеринг, или проводить численный анализ больших объемов данных, есть много видов программ, которые в конечном итоге нуждаются в безумных объемах ОЗУ, где это лучше иметь возможность работать очень медленно, чем вообще не работать без сбоев.

Джастин смит
источник