У меня есть 16 ГБ RAM. Мне нужна подкачка на 32 ГБ?

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

302
задан 13 April 2018 в 04:53

22 ответа

Это полностью зависит от того, что вы планируете делать с машиной. Например, если бы это был сервер Sap, то да, я бы добавил подкачку на 32 ГБ (у нас есть боксы с оперативной памятью 128 ГБ и подкачкой 32 ГБ). Если вы манипулируете большими изображениями и видео, имеет смысл немного поменять местами. 32гб наверное перебор.

Однако я бы не сказал, что подкачка нулевая.

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

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

200
ответ дан 22 November 2019 в 22:39

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

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

0
ответ дан 22 November 2019 в 22:39

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

0
ответ дан 22 November 2019 в 22:39

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

У меня 2 ГБ ОЗУ и 1 ГБ SWAP. Меня это вполне устраивает, но это только мое мнение. Посмотрите на другие комментарии / предложения и посмотрите, что они говорят.

0
ответ дан 22 November 2019 в 22:39

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

2
ответ дан 22 November 2019 в 22:39

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

9
ответ дан 22 November 2019 в 22:39

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

26
ответ дан 22 November 2019 в 22:39

Вот очень хорошая рекомендация 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 
258
ответ дан 22 November 2019 в 22:39

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

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

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

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

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

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

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

18
ответ дан 22 November 2019 в 22:39

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

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

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

0
ответ дан 22 November 2019 в 22:39

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

0
ответ дан 22 November 2019 в 22:39

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

1
ответ дан 22 November 2019 в 22:39

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

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

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

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

4
ответ дан 22 November 2019 в 22:39

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

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

3
ответ дан 22 November 2019 в 22:39

Аргх. Ответы на этот пост настолько неверны, что это один из первых результатов поиска Google по запросу «Сколько подкачки?»

Во-первых, хорошим ориентиром является Ubuntu Swap FAQ

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

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

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

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

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

64
ответ дан 22 November 2019 в 22:39

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

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

6
ответ дан 22 November 2019 в 22:39

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

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

0
ответ дан 22 November 2019 в 22:39

Слишком много информации

Предлагаемые мной 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
ответ дан 22 November 2019 в 22:39

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

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

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

0
ответ дан 22 November 2019 в 22:39

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

1
ответ дан 22 November 2019 в 22:39

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

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

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

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

0
ответ дан 22 November 2019 в 22:39

Из Ubuntu SwapFaq :

Зачем мне нужна подкачка?

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

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

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

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

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

Какой объем подкачки мне нужен?

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

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

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

Примеры сценариев

  RAM (ГБ) Без гибернации с максимальным режимом гибернации
  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
 
1
ответ дан 22 November 2019 в 22:39

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

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