Какой размер раздела подкачки необходим для спящего режима?

11

Я прочитал этот вопрос , но он не дает окончательного ответа на мой вопрос.

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

Я хотел бы не указывать свои действительные спецификации, чтобы этот вопрос был более общим, хотя я дам их в случае необходимости.

Закрытие Ковбой
источник

Ответы:

9

Трудно предсказать: ваш своп должен соответствовать

  • что уже в свопе при переходе в спящий режим
  • что находится в оперативной памяти при переходе в спящий режим, но только в той части, которая не является дисковым кешем или буферами; образ RAM сжимается, если вы используетеuswsusp
  • несколько структур данных ядра

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

Если вы хотите избежать раздела подкачки фиксированного размера, потому что ваш диск очень маленький, вы можете вместо этого использовать файл подкачки. Изменить размер проще, и предполагается, что гибернация в файл подкачки должна поддерживаться (не уверен, что он работает в настоящее время из коробки, это происходит между выпусками Ubuntu; IIRC это делало в 9.10, но его нужно было настраивать в 10.10 ).

Жиль "ТАК - перестань быть злым"
источник
1
Дисковый кеш не сжимается
psusi
1
то, как вы это сформулировали, звучало так, как будто вы говорили, что кэш сжат, а не изображение гибернации. Для сжатия образа гибернации вам необходимо установить пакет uswsusp. Реализация ядра по умолчанию не сжимается.
psusi
2

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

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

Основным инструментом являются сообщения ядра во время спящего режима. Вы хотите увидеть, сколько памяти было использовано с этой командой:

sudo cat /var/log/syslog | grep 'PM:'|grep kbytes

Вы должны получить вывод как:

Aug 14 11:03:20 mike-XPS-15-9570 kernel: [17594.823584] PM: Allocated 11809876 kbytes in 2.65 seconds (4456.55 MB/s)
Aug 14 11:03:20 mike-XPS-15-9570 kernel: [17605.365657] PM: Wrote 11787284 kbytes in 9.09 seconds (1296.73 MB/s)

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

Майк Харди
источник