Нужно ли мне увеличивать SWAP-файл, если я обновляю свою RAM до 6 ГБ с 2 ГБ? [dубликат]

Я читал много мест, что эмпирическое правило для пространства подкачки состоит в удвоении объема физической памяти. Тем не менее, 32 ГБ, похоже, много. Нужно ли мне так много? Нужно ли мне это вообще с этим большим объемом физической памяти?

254
задан 13 April 2018 в 14:53

44 ответа

Все зависит от того, что вы планируете делать с машиной. Например, если это был Sap-сервер, тогда да, я бы добавил 32gb swap (у нас есть ящики при работе с 128-гигабайтным ram и 32gb swap). Если вы манипулировали массивными изображениями и видео, то имеет смысл немного поменять местами. 32gb, вероятно, перебор.

Однако я бы не сказал нулевой обмен.

В маловероятном случае, когда вы исчерпали RAM - возможно, открыв большой файл, перехикает длинная вкладка в firefox, В этом случае ваш ядерный убийца OOM запустит и начнет убивать приложения, чтобы вернуть память. В этих условиях вполне возможно, что вы потеряете данные, поскольку приложения будут убиты. Однако, если у вас есть немного свопов, система будет продолжать, захватывая своп и позволяя системе продолжать работу. Система замедляется по мере того, как происходит тяжелая замена, вы замечаете и исследуете, прежде чем весь обмен будет исчерпан.

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

171
ответ дан 18 July 2018 в 11:33

Все зависит от того, что вы планируете делать с машиной. Например, если это был Sap-сервер, тогда да, я бы добавил 32gb swap (у нас есть ящики при работе с 128-гигабайтным ram и 32gb swap). Если вы манипулировали массивными изображениями и видео, то имеет смысл немного поменять местами. 32gb, вероятно, перебор.

Однако я бы не сказал нулевой обмен.

В маловероятном случае, когда вы исчерпали RAM - возможно, открыв большой файл, перехикает длинная вкладка в firefox, В этом случае ваш ядерный убийца OOM запустит и начнет убивать приложения, чтобы вернуть память. В этих условиях вполне возможно, что вы потеряете данные, поскольку приложения будут убиты. Однако, если у вас есть немного свопов, система будет продолжать, захватывая своп и позволяя системе продолжать работу. Система замедляется по мере того, как происходит тяжелая замена, вы замечаете и исследуете, прежде чем весь обмен будет исчерпан.

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

171
ответ дан 24 July 2018 в 19:48

Нет, вам не нужно 32 ГБ, если вы не используете такие функции, как suspend to disk.

8
ответ дан 18 July 2018 в 11:33

Имейте это в виду -

Как правило, размер пространства подкачки должен быть примерно до 2x основной памяти для систем с объемом памяти менее 2 ГБ или примерно 1x основной памяти, если у вас больше

Итак, если у вас барабан 4 Gb, вам никогда не понадобится своп, если требуется, чтобы спящий режим Swap был около 3 - 3,5 ГБ, не более того. Поэтому используйте свой здравый смысл и не тратьте дисковое пространство

0
ответ дан 18 July 2018 в 11:33

Наверное, нет. Если вы планируете спящий режим на вашем компьютере (приостановка на диск), вам потребуется не менее 16 ГБ. Если вы не спящий режим, достаточно разрешить несколько гигабайт для свопа (4-8 макс.)

24
ответ дан 18 July 2018 в 11:33

Вот очень хорошая рекомендация RedHat: Рекомендуемое системное сменное пространство

Выдержка из той же ссылки:

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

Текущая таблица (по состоянию на декабрь 2017 года):

Amount of RAM in the system Recommended swap space Recommended swap space if allowing for hibernation --------------------------- ---------------------------- --------------------------- 2GB of RAM or less 2 times the amount of RAM 3 times the amount of RAM 2GB to 8GB of RAM Equal to the amount of RAM 2 times the amount of RAM 8GB to 64GB of RAM At least 4 GB 1.5 times the amount of RAM 64GB of RAM or more At least 4 GB Hibernation not recommended

Исходная таблица:

Amount of RAM in the System Recommended Amount of Swap Space 4GB of RAM or less a minimum of 2GB of swap space 4GB to 16GB of RAM a minimum of 4GB of swap space 16GB to 64GB of RAM a minimum of 8GB of swap space 64GB to 256GB of RAM a minimum of 16GB of swap space 256GB to 512GB of RAM a minimum of 32GB of swap space
220
ответ дан 18 July 2018 в 11:33
[D0] Argh. Ответы на этот пост настолько ошибочны, и это является одним из первых результатов поиска в Google «Сколько обменов?»

Во-первых, хорошей точкой отсчета является часто задаваемые вопросы Ubuntu Swap

В этом FAQ важна точка, о которой здесь никто не упоминает, и это (внимание мое)

Иногда большая программа (например, OpenOffice, Neverwinter Nights или видеоредактор) сделать всю систему необходимой дополнительной памятью. Значительное количество страниц, используемых этими большими программами во время его запуска, может использоваться только для инициализации, а затем никогда не используется снова. Система может обменивать эти страницы и освобождать память для других программ или даже для кеша диска. В этих случаях swap будет использоваться, чтобы помочь системе обрабатывать дополнительную нагрузку.

Итак, обмен не только для спячки! Эта деятельность, заменяя неиспользуемые страницы, может быть полезна в некоторых сценариях и вредна для других. Полезно, потому что он может освободить память для использования системой в других местах, но вредно, когда это происходит слишком агрессивно, и сворачивает страницы, которые вы действительно хотите. Это особенно актуально для настольной системы, где приложения могут долгое время сидеть без дела, но пользователь все еще ожидает немедленной производительности при возвращении к жизни. Контроль за тем, насколько агрессивным это называется, называется swappiness

Часто задаваемые вопросы по Ubuntu Swap обсуждаются в разделе Вопросы Ubuntu Swap Значение по умолчанию для системы Ubuntu равно 60, тогда как Часто задаваемые вопросы рекомендуют значение 10 для настольной машины.

Итак, я бы сказал, что, как правило, очень важно не иметь систему с абсолютно свободным пространством, поскольку некоторые люди рекомендовали по этому вопросу, если только вы знаете наверняка очень специфические сценарии использования вашей системы и очень хорошо осведомлены о последствиях, которые могли бы иметь. (Лично, нет ситуации, когда я буду запускать систему без свопа). В сценарии «Без памяти» без свопа система начнет процессы уничтожения (как правило, это вызвало OOM)

51
ответ дан 18 July 2018 в 11:33

У меня есть ноутбук с 4 ГБ оперативной памяти и Ubuntu 16.04. После загрузки он потребляет около 1 ГБ ОЗУ, и даже тогда Inkscape (например) не будет работать (монитор системы показывает более 50% свободной памяти). Inkscape зависает. После того, как я применяю файл подкачки, он работает, как и ожидалось, даже без использования одного байта использования swap). Поэтому я рекомендую раздел подкачки (или файл подкачки). О его размере вы можете использовать правило david6.

1
ответ дан 18 July 2018 в 11:33

Слишком много информации и отклонения в мнениях.

Мои рекомендуемые рекомендации для рабочего стола Ubuntu:

amount of RAM recommended swap with hibernation ---------------- ---------------- ---------------- less than 4GB 2x RAM size 3x RAM size up to 8GB 4GB 2x RAM size up to 16GB 4GB 1.5x RAM size 16GB or more 4GB No extra needed
0
ответ дан 18 July 2018 в 11:33

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

Итак, если вы планируете долгое время покидать машину, своп - это удобный способ чтобы освободить память от мусора зомби. Конечно, вам потребуется больше времени, чтобы заполнить 16g, чем я, с 3gb, но это все равно приятно. Для этой цели будет 4Gb.

0
ответ дан 18 July 2018 в 11:33

Если ваш барабан выше 1 ГБ, его обычно достаточно для ubuntu. Правило «Swap = RAM x2» предназначено для старых компьютеров с 256 или 128 МБ оперативной памяти.

Таким образом, 1 Гбайт подкачки обычно достаточно для 4 ГБ ОЗУ. 8 GB будет слишком много.

2
ответ дан 18 July 2018 в 11:33

Если вы используете спящий режим, ваш своп должен иметь как минимум ту же сумму, что и ваш физический RAM.

2
ответ дан 18 July 2018 в 11:33

Если вы создаете очень большие файлы, скажем, например, если вы строите системы машинного перевода на ноутбуке (да, хорошо, почему бы вы хотели сделать это? Я могу сказать, что мои профессора делают меня ;-) ) ответ ясный да, на самом деле в этот момент я сожалею, что не делаю это подкачкой 32 ГБ ....

Для случайного использования Ubuntu для работы в офисе и в Интернете нет, вы никогда не будете использовать даже 2 ГБ свопа, но на самом деле нет четкого ответа, все зависит от того, что вы собираетесь делать на своем компьютере ...

0
ответ дан 18 July 2018 в 11:33

Если это ноутбук, то при сохранении хотя бы свопа, равном объему ОЗУ, чтобы полностью разрешить спящий режим. Я бы все равно сохранил сумму, равную объему ОЗУ, даже если на рабочем столе, но это только я; он будет мало полезен на рабочем столе.

0
ответ дан 18 July 2018 в 11:33

Никто, кажется, не упомянул о другой причине, чтобы иметь значительное пространство подкачки, чтобы система заметно замедлялась, вместо того, чтобы не запускать программы, когда у вас заканчивается нехватка памяти. Если у вас есть балансировщик нагрузки впереди, который перенаправляется при сбое, вы можете захотеть сохранить swap small (скажем, 1 ГБ). Если вы хотите, чтобы программы сначала замедлялись, тогда я бы рассмотрел размер 4 ГБ + квадратный корень из памяти, и если вы хотите их чтобы действительно замедлить работу до того, как все умрет, а затем сохраните минимальный размер памяти в 1,25 раза (до тех пор, пока нетерпеливые люди не сдаются первым - это будет более подходящим для фоновых заданий).

Я настраиваю 1 ГБ для моих машин разработки и производства в качестве стандарта, то не имеет значения, сколько или небольшой реальной памяти у них есть, у них достаточно, чтобы скомпилировать все программы, которые я хочу, и поменять практически никогда не используемые программы для использования освобожденной памяти для буферизации диска.

Для сравнения, у меня 64-гигабайтный своп на моем 32-гигабайтном ноутбуке, который немного перегружен, но я хотел убедиться, что он всегда работал, хотя и медленно, и я знал, что я собирался запустить несколько голодных виртуальных машин. Неожиданный эффект - это когда у вас есть диапазон памяти 32 ГБ +, а затем возобновление спящего режима (которое перезагружает 32 ГБ памяти) заметно медленнее, чем холодная загрузка.

0
ответ дан 18 July 2018 в 11:33

Я не мог найти ссылки на цитату здесь, но если вы собираетесь использовать приложение, в котором вам нужно поменять местами все данные в ОЗУ, вам по крайней мере нужен размер оперативной памяти + 128 МБ или «1,25 раза в размере ОЗУ» '(я забыл, какой из них был прав), предполагая, что у вас есть RAM более 2 ГБ. Если оперативная память составляет 2 ГБ или меньше, рекомендуется иметь вдвое больший объем оперативной памяти в качестве swap. Я придерживался этой рекомендации в своей предыдущей организации для IBM AIX на основе документа IBM. Я считаю, что это справедливо для большинства * nix, поскольку использование swap позволяет безопасно перемещать данные из ОЗУ в случае, если ОЗУ недостаточно для обработки данных, которые будут загружены в память. Команда «free» может использоваться для оценки того, сколько swap используется в действительности.

0
ответ дан 18 July 2018 в 11:33

Из SwapFaq Ubuntu:

Зачем мне нужен swap?

Программы, занимающие память Иногда иногда большая программа (например, LibreOffice, Neverwinter Nights или видеоредактор) делает весь системе нужна дополнительная память. Значительное количество страниц, используемых этими большими программами во время его запуска, может использоваться только для инициализации, а затем никогда не используется снова. Система может обменивать эти страницы и освобождать память для других программ или даже для кеша диска.

Программы для хранения памяти Функция спящего режима (suspend-to-disk) записывает содержимое ОЗУ перед разделением подкачки перед выключением машины. Следовательно, ваш раздел подкачки должен быть как минимум размером вашего RAM. Реализация hibernation, используемая в настоящее время в Ubuntu, swsusp, требует свопа или приостановить раздел. Он не может использовать файл подкачки в активной файловой системе.

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

Непредвиденные обстоятельства Поскольку механические жесткие диски значительно медленнее, чем RAM (SSD - твердотельный накопитель) - память не так медленна, как физические диски, но все же медленнее, чем RAM), когда вам нужен файл (будь то файл данных, такой как видео, исполняемые файлы, такие как Firefox или библиотеки), ядро ​​Linux читает файл в ОЗУ и держит его там, так что в следующий раз, когда он вам понадобится, он уже находится в ОЗУ, а доступ к данным намного быстрее. Части ОЗУ, которые ускоряют чтение диска, называются «кэшированной памятью». Вы заметите, что они имеют огромное значение с точки зрения быстроты реагирования. Ядро Linux автоматически перемещает оперативную память, зарезервированную программами, но не реально используемую, в swap, так что она может служить лучшей целью расширения кэшированной памяти.

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

Сколько мне требуется своп?

Для менее 1 ГБ физической памяти (ОЗУ) настоятельно рекомендуется, чтобы пространство подкачки в качестве базового минимума было равно объему ОЗУ. Кроме того, рекомендуется, чтобы пространство подкачки было в два раза больше объема оперативной памяти в зависимости от объема свободного места на диске для системы из-за уменьшения отдачи.

Для более современных систем (> 1 ГБ) ваш своп пространство должно быть как минимум равным размеру вашей физической памяти (ОЗУ) «если вы используете спящий режим», в противном случае вам потребуется минимум раунд (sqrt (RAM)) и максимум вдвое больше ОЗУ.

«Уменьшение возвращает» означает, что если вам нужно больше пространства подкачки, чем в два раза больше вашего размера оперативной памяти, то это будет меньше, чем вы на самом деле используете, это пространство на диске, которое вы зарезервируете для него. , вам лучше добавить больше оперативной памяти, так как доступ к жесткому диску (HDD) примерно на 10 м медленнее, чем доступ к RAM, поэтому что-то, что займет 1 секунду, внезапно занимает более 15 минут! И еще более минуты на быстром твердотельном накопителе (SSD) ...

Оптимизация производительности подкачки

RAM(GB) No hibernation With Hibernation Maximum 1 1 2 2 2 1 3 4 3 2 5 6 4 2 6 8 5 2 7 10 6 2 8 12 8 3 11 16 12 3 15 24 16 4 20 32 24 5 29 48 32 6 38 64 64 8 72 128 128 11 139 256
0
ответ дан 18 July 2018 в 11:33

Из опыта я могу сказать следующее:

За то, что я видел с помощью 4 ГБ оперативной памяти в течение 3 лет, Ubuntu использует своп около 60 МБ, но только при выполнении очень интенсивных задач. Пару недель назад я начал использовать ПК с 16 ГБ оперативной памяти, а использование подкачки оставалось на уровне 0% навсегда. Я выполнил несколько компиляций, рендеринг видео и другие интенсивные задачи. Никогда не было изменений в свопе.

В основном, в Ubuntu, чем больше памяти памяти у вас есть, тем меньше вероятность использования или необходимости замены для любой задачи. 16 ГБ оперативной памяти или даже 8 ГБ оперативной памяти более чем достаточно. Я сделал с 16 ГБ ПК 8 Virtualbox ПК (каждый от 1 до 2 ГБ оперативной памяти). Я скомпилировал и обработал видео 720p и даже в тех условиях не изменился обмен.

С учетом этого правило вдвое большего объема памяти не должно применяться к системам на базе Linux, тем более, если у вас больше памяти. Однако вы должны иметь одинаковый размер свопа, равный размеру вашего плунжера, или если вы планируете спящий режим, поскольку процесс спящего режима захватывает все в баране и помещает его в swap, поэтому вам нужен минимальный размер, равный размеру вашего барана для обмена.

Другая деталь заключается в том, что некоторые приложения (не все) будут по-прежнему вынуждены считывать данные из swap. Так что немного хорошо. Отключение его вообще очень плохо в случае, если вы доберетесь до нехватки памяти или OOM. На данный момент, если у вас нет свопа, ядро ​​не может меняться в разных вариантах использования приложений ram и в конечном итоге начинает убивать менее используемые.

Если это помогает при принятии решений для домашнего рабочего стола, после обновления этого ответа более чем за 4 года я использовал 16-гигабайтный, 32-гигабайтный и теперь 64-гигабайтный ПК. Тестирование с использованием только 128 Мбайт свопа показало, что мне не нужно было больше свопа, за исключением случаев, когда я хотел спящий режим. Я использовал облачные среды на них, lxc, virtualbox, wine, вы называете это. Я снял видео с помощью openhot, kazam, handbrake, смелость. Я использовал gimp, blender, Inkscape и даже полный комплект LibreOffice. Я даже играл в паре, и ни в одном из этих сценариев не использовался обмен. Конечно, в конечном итоге он будет использоваться, если вы в конечном итоге используете полный объем бара в той или иной форме, но в целом чем больше у вас барана, тем меньше вам потребуется своп.

Только мои 2 цента ,

12
ответ дан 18 July 2018 в 11:33

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

Я никогда не видел никакого использования в моей системе, как и у вас. Фактически, в свое время я отключил его на неделю или две случайно и никогда не замечал никаких проблем. Но я все еще держу около 5 ГБ для моего диска подкачки, главным образом потому, что у меня есть более 1 ТБ, и я не использую все пространство как есть.

5
ответ дан 18 July 2018 в 11:33

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

1
ответ дан 18 July 2018 в 11:33

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

Для общего правила о том, сколько нужно иметь swap, читайте здесь:

https://help.ubuntu.com/community/SwapFaq

В вашем случае я бы сказал, что 4 ГБ будет достаточно, чтобы соответствовать вашей ОЗУ.

3
ответ дан 18 July 2018 в 11:33

Нет, вам определенно не нужно 32 ГБ. Как правило, для настольной системы я бы сказал, что ваш обмен должен быть где-то между 4 ГБ и физической ОЗУ + паролем GB. Таким образом, для 16 ГБ физической оперативной памяти обмен может быть от 4 до 18 ГБ, возможно.

. Вам нужно будет поменять местами подкачки примерно равным объему физической ОЗУ, используемому приложениями, которые остаются резидентами - это это системные службы и приложения, которые продолжают работать, пока вы их используете (в отличие от задач, которые запускаются после этого, а затем завершаются). На настольной системе предположим, что вы можете оставить браузер, текстовый процессор, программу электронной почты и графику или видеоредактор, пока вы работаете над чем-то другим. Они могут легко занимать более 2 ГБ, возможно, более 4 ГБ. Так что, возможно, требуется 6 Гбайт свопа.

Как правило, не больно иметь на несколько ГБ больше, чем вам нужно. Swap обычно не будет использоваться, если у вас много оперативной памяти, но он помогает в случае, когда какой-то процесс использует чрезмерную сумму, и вы начинаете снижаться и можете предотвратить процессы убийства системы.

Примечание. Если вы хотите использовать спящий режим для ОС, вам понадобятся все 16 ГБ, как упомянуто, но современные компьютеры мало выигрывают от спячки. Если у вас быстрый SSD, загрузка может быть такой же быстрой или быстрой, как возобновление спящего режима, а современные компьютеры используют незначительную энергию, находясь в спящем режиме, что использование энергии из спящего режима не является большим фактором.

0
ответ дан 18 July 2018 в 11:33

Я думаю, вы поняли это наоборот. SWAP, вам понадобится ~ 16 ГБ. Таким образом, SWAP должен составлять 1/2 от фактического размера RAM. Но все же это много места. Зависит от того, в чем вы нуждаетесь. Я бы сказал, если вы не используете «спящий режим», держите вокруг ~ 4 ГБ до ~ 8 ГБ, если вы можете позволить себе дисковое пространство. Поскольку у вас есть 16 ГБ, я предполагаю, что вы можете использовать компьютер, который нуждается в мощных ресурсах ... так что, возможно, было бы полезно иметь от 16 до 32 ГБ SWAP.

У меня 2 ГБ оперативной памяти и 1 ГБ SWAP. Я очень хорошо справляюсь с этим, но это только мое мнение. Посмотрите на другие комментарии / предложения и посмотрите, что они говорят.

0
ответ дан 18 July 2018 в 11:33

Нет, вам не нужно 32 ГБ, если вы не используете такие функции, как suspend to disk.

8
ответ дан 24 July 2018 в 19:48

Имейте это в виду -

Как правило, размер пространства подкачки должен быть примерно до 2x основной памяти для систем с объемом памяти менее 2 ГБ или примерно 1x основной памяти, если у вас больше

Итак, если у вас барабан 4 Gb, вам никогда не понадобится своп, если требуется, чтобы спящий режим Swap был около 3 - 3,5 ГБ, не более того. Поэтому используйте свой здравый смысл и не тратьте дисковое пространство

0
ответ дан 24 July 2018 в 19:48
  • 1
    @AnwarShah - Простите, я этого не читал. отредактировал мой ответ – Ashu 13 May 2012 в 12:05

Наверное, нет. Если вы планируете спящий режим на вашем компьютере (приостановка на диск), вам потребуется не менее 16 ГБ. Если вы не спящий режим, достаточно разрешить несколько гигабайт для свопа (4-8 макс.)

24
ответ дан 24 July 2018 в 19:48
  • 1
    У меня вообще нет свопа и я могу спячки / приостановить мой ноутбук. – scribu 17 June 2011 в 14:05
  • 2
    @scribu это звучит интересно. Я подозреваю, что, возможно, есть файл подкачки, потому что для полного отключения вашего ноутбука (то есть отсоедините и извлеките аккумулятор) содержимое ОЗУ должно быть сохранено – bandi 18 June 2011 в 01:34
  • 3
    Вполне возможно спящий режим с 16 ГБ оперативной памяти и 4 ГБ свопа: вам просто нужно использовать менее 4 ГБ, когда вы переходите в спящий режим. – psusi 24 June 2012 в 08:48

Вот очень хорошая рекомендация RedHat: Рекомендуемое системное сменное пространство

Выдержка из той же ссылки:

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

Текущая таблица (по состоянию на декабрь 2017 года):

Amount of RAM in the system Recommended swap space Recommended swap space if allowing for hibernation --------------------------- ---------------------------- --------------------------- 2GB of RAM or less 2 times the amount of RAM 3 times the amount of RAM 2GB to 8GB of RAM Equal to the amount of RAM 2 times the amount of RAM 8GB to 64GB of RAM At least 4 GB 1.5 times the amount of RAM 64GB of RAM or more At least 4 GB Hibernation not recommended

Исходная таблица:

Amount of RAM in the System Recommended Amount of Swap Space 4GB of RAM or less a minimum of 2GB of swap space 4GB to 16GB of RAM a minimum of 4GB of swap space 16GB to 64GB of RAM a minimum of 8GB of swap space 64GB to 256GB of RAM a minimum of 16GB of swap space 256GB to 512GB of RAM a minimum of 32GB of swap space
220
ответ дан 24 July 2018 в 19:48
  • 1
    Квадратный корень из ОЗУ в ГБ, округленный до двух. – starblue 17 June 2011 в 12:57
  • 2
    В «новой» таблице есть несоответствия - согласно руководству 16 ГБ пространства подкачки подходят для 32-гигабайтной системы, но 4 ГБ подходят для системы с 64 ГБ ... – Charlie 7 December 2016 в 09:29
  • 3
    @Charlie Это потому, что вы вряд ли закончите рабочую память с 64-Гбайт RAM. – poepje 28 May 2017 в 20:49
  • 4
    @Charlie. Речь идет не о количестве системной памяти, а о вероятности исчерпания системной памяти и о том, насколько велика эта нехватка. – Phill Healey 18 July 2017 в 23:19
[D0] Argh. Ответы на этот пост настолько ошибочны, и это является одним из первых результатов поиска в Google «Сколько обменов?»

Во-первых, хорошей точкой отсчета является часто задаваемые вопросы Ubuntu Swap

В этом FAQ важна точка, о которой здесь никто не упоминает, и это (внимание мое)

Иногда большая программа (например, OpenOffice, Neverwinter Nights или видеоредактор) сделать всю систему необходимой дополнительной памятью. Значительное количество страниц, используемых этими большими программами во время его запуска, может использоваться только для инициализации, а затем никогда не используется снова. Система может обменивать эти страницы и освобождать память для других программ или даже для кеша диска. В этих случаях swap будет использоваться, чтобы помочь системе обрабатывать дополнительную нагрузку.

Итак, обмен не только для спячки! Эта деятельность, заменяя неиспользуемые страницы, может быть полезна в некоторых сценариях и вредна для других. Полезно, потому что он может освободить память для использования системой в других местах, но вредно, когда это происходит слишком агрессивно, и сворачивает страницы, которые вы действительно хотите. Это особенно актуально для настольной системы, где приложения могут долгое время сидеть без дела, но пользователь все еще ожидает немедленной работы при возвращении к жизни. Контроль за тем, насколько агрессивным это называется, называется swappiness

Часто задаваемые вопросы по Ubuntu Swap обсуждаются в разделе Вопросы Ubuntu Swap Значение по умолчанию для системы Ubuntu равно 60, тогда как Часто задаваемые вопросы рекомендуют значение 10 для настольной машины.

Итак, я бы сказал, что, как правило, очень важно не иметь систему с абсолютно свободным пространством, поскольку некоторые люди рекомендовали по этому вопросу, если только вы знаете наверняка очень специфические сценарии использования вашей системы и очень хорошо осведомлены о последствиях, которые могли бы иметь. (Лично, нет ситуации, когда я буду запускать систему без свопа). В сценарии «Без памяти» без свопа система начнет процессы уничтожения (как правило, это вызвало OOM)

51
ответ дан 24 July 2018 в 19:48
  • 1
    Повысьте ссылку на часто задаваемые вопросы, а также ознакомьтесь с некоторыми здравомыслием среди мнений и анекдотических данных. – Marty Fried 24 June 2012 в 22:04
  • 2
    Дело в том, что таких больших программ пока нет, а ваша ссылка прямо противоположна этому. См. Это help.ubuntu.com/community/SwapFaq#How_much_swap_do_I_need.3F – Anwar 18 October 2012 в 21:48
  • 3
    Чтобы освободить память от дополнительной нагрузки, я бы предпочел zRAM и swappiness = 60, а не традиционную замену жесткого диска. – Barafu Albino 30 June 2013 в 12:27

У меня есть ноутбук с 4 ГБ оперативной памяти и Ubuntu 16.04. После загрузки он потребляет около 1 ГБ ОЗУ, и даже тогда Inkscape (например) не будет работать (монитор системы показывает более 50% свободной памяти). Inkscape зависает. После того, как я применяю файл подкачки, он работает, как и ожидалось, даже без использования одного байта использования swap). Поэтому я рекомендую раздел подкачки (или файл подкачки). О его размере вы можете использовать правило david6.

1
ответ дан 24 July 2018 в 19:48

Слишком много информации и отклонения в мнениях.

Мои рекомендуемые рекомендации для рабочего стола Ubuntu:

amount of RAM recommended swap with hibernation ---------------- ---------------- ---------------- less than 4GB 2x RAM size 3x RAM size up to 8GB 4GB 2x RAM size up to 16GB 4GB 1.5x RAM size 16GB or more 4GB No extra needed
0
ответ дан 24 July 2018 в 19:48

Другие вопросы по тегам:

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