Нужен ли файл подкачки на ssd с 16 ГБ оперативной памяти

Обновлено: 01.07.2024

Я рассматриваю возможность использования SSD-накопителя в качестве основного раздела ОС. Насколько я понимаю, это должно обеспечить существенное улучшение производительности.

  • У меня такой вопрос:следует ли оставить файл подкачки на этом диске?

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

Помню, раньше говорили, что компакт-диски служат в среднем 30 лет, когда они только появились. Теперь это. но если посмотреть на историю, то каждое новое поколение носителей информации служит все меньше и меньше. Я пока останусь со старыми HDD. Кажется, они служат довольно долго.

Внимание: Драйверам предоставляется только ограниченный объем памяти, который называется невыгружаемым и выгружаемым разделами памяти пула. Файл подкачки необходим, когда выгружаемый раздел заполняется, как геймер, я видел, как игра жаловалась на память выгружаемого пула только потому, что мой файл подкачки был отключен в системе с 8 ГБ. Вывод: файлы подкачки необходимы, они предотвращают истощение выгружаемого пула и действительно ускоряют вашу систему.

Но в настоящее время, например, Macbook Air имеет только твердотельный накопитель. поэтому вы не можете избежать наличия файла подкачки на SSD, если только вы полностью не отключите файл подкачки.

12 ответов 12

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

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

Цитата неполная. Рекомендуется для устройства на 2 ГБ. В этом случае файл подкачки будет занимать значительную часть диска, значительно уменьшая свободное пространство и увеличивая износ отдельных ячеек. Диск на 64 ГБ имеет больше ячеек для распределения этого износа. Я думаю, что рекомендации производителя SSD были бы более полезными. Если подкачка используется редко, она не должна вызывать большого износа, но SSD действительно может помочь в тех редких случаях, когда подкачка внезапно вызывает невыносимую медлительность.

влияет ли пейджинг на срок службы твердотельных накопителей? да, но так делает ЛЮБАЯ операция записи. мне все равно? конечно нет! если через 3, 4 или 5 лет все пойдет на спад, ну и что? к тому времени мы увидим твердотельные накопители в 10 раз быстрее, чем сегодняшние технологии, и в любом случае пора двигаться дальше. или вы очень заботитесь о 5-летнем жестком диске на 5400 об / мин с емкостью, возможно, 80 ГБ? сомневаюсь :)

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

Этот ответ явно неверен. Я скачал связанный документ 22.11.2011. 1) цитата дана некорректно. Полная цитата: "Мы рекомендуем отключать файл подкачки для флэш-накопителя емкостью 2 ГБ из-за потенциального влияния файла подкачки на срок службы флэш-накопителя, а также уменьшения свободного места для дополнительных приложений и пользовательских данных на на флэш-накопителе." 2) ясно, что MS говорит здесь о типичных USB и SD flash, не SSD.

Следует ли размещать файл подкачки на SSD?

  • Pagefile.sys читает больше, чем pagefile.sys записывает примерно в 40 раз к 1,
  • Размер файла Pagefile.sys для чтения обычно довольно мал: 67 % меньше или равно 4 КБ, а 88 % меньше 16 КБ.
  • Записи Pagefile.sys относительно велики: 62 % больше или равно 128 КБ, а 45 % имеют размер ровно 1 МБ.

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

@PPC "Pagefile.sys читает больше, чем pagefile.sys записывает примерно в 40 раз к 1" Итак, нет. (Кроме того, последнее предложение не имело бы никакого смысла, если бы это было правдой. Итак, опять же, нет.)

@DavidSchwartz: Проблема не в количестве операций записи по сравнению с количеством операций чтения, а в количестве операций записи в день по сравнению с выносливостью SSD и алгоритмом размещения в ОС. См. примечание Xavierjazz выше к OP

Вот некоторые S.M.A.R.T. данные с твердотельного накопителя OCZ-AGILITY, который я использовал в ноутбуке с Linux около двух лет.

У меня есть раздел подкачки на диске, и единственная "настройка", которую я сделал, это установить swappiness = 0 в Linux. Профиль подкачки Windows более или менее похож на swappiness = 0 в Linux.

Это мой личный ноутбук, поэтому я не использую его по 8 часов в день (скорее 1,5 часа), но я довольно много занимаюсь разработкой на нем, поэтому создается много файлов.

  • Power_On_Hours (Я слишком много времени провожу за компьютером.)
  • Max_PE_Count_Spec – 10 000 – это минимальное количество перепрошивок, с которым может справиться блок.
  • Минимальное, максимальное и среднее количество стираний немного говорит о надежности алгоритма выравнивания износа. Я полагаю, это нормально, что худший блок высвечивался примерно в два раза чаще, чем в среднем.
  • Процент оставшегося срока действия, который составляет 92%.

Итак. Я думаю, можно с уверенностью предположить, что диск должен работать до тех пор, пока я не уберу его с производства по другим причинам. (*дотронуться до дерева) Он уже слишком мал.

Если исходить из масштаба чисел, 40 часов в неделю дадут срок службы не менее 3–4 лет, а возможно, и больше, так как я подозреваю, что лучше изнашиваю свой диск дома. Меньше встреч. Так что я думаю, что это вполне нормально для рабочей машины, учитывая преимущества.

Итак, мой совет: избавьтесь от шумных механических приводов и наслаждайтесь тишиной :-)

Это потрясающе с абсолютно тихим ноутбуком.

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

Кстати, он точно пережил ноутбук, в который изначально был установлен.

Да, несколько уменьшив подкачку, но не отключив ее. Кроме того, я скорее жду операций с файлами, чем переключения между окнами с помощью Alt-Tab. Между прочим, после почти двух лет, или 3018 часов работы, расчетный процент оставшегося срока службы теперь составляет 77 %.

У меня есть лучший ответ: зачем, если можно просто купить больше оперативной памяти? Оперативная память так же дешева или дешевле, чем место на SSD. Кроме того, он намного быстрее и никогда (ну, почти никогда) не деградирует, как SSD-накопители.

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

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

@maaartinus Да, стоимость гигабайта лучше, чем ОЗУ, но как насчет (МБ/с)/$? ОП заботится об ускорении своей системы, а не о хранении. Обычные SSD-накопители текущего поколения имеют скорость передачи около 280 МБ/с, самое дешевое, что я смог найти на newegg с такой скоростью, стоило 99 долларов. Оперативная память DDR2 800 (очень распространенная) имеет скорость передачи 6000 МБ / с, 4 ГБ за 56 долларов. Таким образом, SSD составляет 2,8 (МБ/с)/$, а ОЗУ — 107,4 (МБ/с)/$. Да, вы можете сфальсифицировать цифры и использовать действительно дорогую оперативную память и дешевый SSD, но даже в этом случае я не думаю, что SSD будет дешевле по пропускной способности.

@Scott Chamberlain Я согласен с тем, что использование оперативной памяти приводит к более высокой скорости. В зависимости от системы, это может быть путь. Когда вам нужно много памяти, ОЗУ может стать слишком дорогим, в то время как вы можете получить очень хорошую производительность с гораздо более дешевым SSD. Гораздо более высокая пропускная способность ОЗУ не должна сильно влиять на пропускную способность глобальной памяти, поскольку большинство операций в любом случае выполняется в памяти (вы можете рассматривать ОЗУ как своего рода кеш для гораздо большего SSD). Оптимум довольно часто находится где-то посередине (например, покупка дополнительной оперативной памяти и твердотельного накопителя).

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

Многие говорят: "Не меняйте местами, если можете помочь", но это заблуждение, по крайней мере, для Windows (и, возможно, для Linux тоже). Окна, спец. последние версии, всегда будет пытаться заполнить ОЗУ кэшированными данными, которые, по его мнению, понадобятся быстро, и намеренно выгрузит другие данные на диск. Это происходит независимо от того, сколько у вас оперативной памяти. У меня 4гб, используется только половина, но подкачка все равно происходит. Отключение подкачки — тоже плохая идея, потому что некоторым программам может потребоваться огромное количество памяти, зарезервированной для них (например, Photoshop), и вы можете легко получить сообщения о нехватке памяти. Это зависит от использования, но подкачка всегда полезна в экстремальных ситуациях.

Таким образом, твердотельные накопители — это не замена оперативной памяти (утверждение «получите больше оперативной памяти» не имеет смысла), а, возможно, более быстрая альтернатива виртуальной памяти на жестких дисках. Взгляните на этот обзор, чтобы узнать, как твердотельные накопители могут оставить механические жесткие диски далеко позади: «Обзор жестких дисков, июнь 2010 г.»

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

Еще один момент, на который следует обратить внимание, – является ли ваш текущий диск подкачки также и вашим основным диском. Для большинства людей ответ будет утвердительным. Это означает, что жесткий диск должен получить доступ к выгружаемой виртуальной памяти, а также получить доступ к данным и программам. В этом случае наличие SSD для подкачки, вероятно, принесет заметные улучшения.

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

Джонвонмак

Почетный

Мой SSD автоматически настроен на наличие файла подкачки. Но он использует 16384 МБ файла подкачки.Как вы думаете, это слишком много и как это влияет на срок службы моего SSD? У меня Windows 8. Спасибо

mauller07

Великолепно

mauller07

Великолепно

с объемом оперативной памяти более 4 ГБ вам действительно нужен только файл подкачки размером 512–1024 МБ для совместимости с некоторыми программами.

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

Джонвонмак

Почетный

с объемом оперативной памяти более 4 ГБ вам действительно нужен только файл подкачки размером 512–1024 МБ для совместимости с некоторыми программами.

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

Значит, я отключу его на своем SSD, верно? Кроме того, я использую свой жесткий диск на 2 ТБ для игр и других вещей. Сколько я должен положить туда? Спасибо

mauller07

Великолепно

Джонвонмак

Почетный

Когда я пытаюсь отключить его, он говорит, что если ваш файл подкачки бла-бла-бла меньше 800, окна могут не восстановиться. Что мне делать?

mauller07

Великолепно

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

Компьютроникс

Мастер Intel

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

Джонвонмак

Почетный

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

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

Ухххх, одни люди говорили: "Оставь это включенным", другие - "Оставь это выключенным". Хз что делать >.

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

если быть до конца честным. вам даже не нужен SWAP, у вас уже есть 16 ГБ ОЗУ, если вы серьезно не думаете, что у вас когда-нибудь закончится ОЗУ, вам это не нужно.

Это «практическое правило» возникло в то время, когда объем оперативной памяти большинства компьютеров измерялся однозначной цифрой в мегабайтах. Это не имело смысла в течение 10+ лет, но это просто. не будет. умри!

22 ответа 22

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

Отрывок из той же ссылки:

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

И еще один отрывок из старой версии страницы:

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

< /цитата>

На границе каждого диапазона, указанного в таблице выше, например, системы с 2 ГБ, 8 ГБ или 64 ГБ системной оперативной памяти, можно по своему усмотрению выбирать пространство подкачки и поддержку гибернации. Если ваши системные ресурсы позволяют это, увеличение пространства подкачки может привести к повышению производительности. Для систем с более чем 140 логическими процессорами или более 3 ТБ оперативной памяти рекомендуется пространство подкачки не менее 100 ГБ.

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

В "новой" таблице есть несоответствия: согласно руководству 16 ГБ пространства подкачки подходит для системы с 32 ГБ, а 4 ГБ — для системы с 64 ГБ.

@Charlie Дело не в объеме системной памяти, а в вероятности нехватки системной памяти и насколько велика будет эта нехватка.

@ColeJohnson Практическая разница в том, что если у вас заканчивается память в 32-гигабайтной системе, у вас остается некоторый буфер. Как только система начинает подкачиваться, она заметно перестает отвечать на запросы, и у вас есть возможность провести расследование. С системой 48 ГБ и без свопа у вас есть больше времени/памяти для «нормального» выполнения, но как только у вас заканчивается место, ядро ​​​​начинает убивать процессы. В типичной системе конечного пользователя вы, вероятно, в конечном итоге перезагрузитесь после начала подкачки, поэтому это вряд ли имеет значение. На сервере, обрабатывающем важную рабочую нагрузку, имеет смысл иметь этот буфер.

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

Однако я бы не стал говорить об нулевом обмене.

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

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

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

Имея систему с 8 ГБ ОЗУ, я могу сказать следующее: каждый раз, когда у меня запускалась программа и погружалась в своп, моя система в основном переставала отвечать на запросы. Лучше позволить убийце OOM работать, чем в любом случае принудительно выполнять нечистую перезагрузку; если у вас столько оперативной памяти, если только вы не выполняете очень очень тяжелую работу, требующую гигабайт оперативной памяти, все будет в порядке. Даже если у вас есть тяжелая работа, обычно есть способ ее обработки, не требующий пространства подкачки (что менее эффективно, чем нормальная обработка больших наборов данных в самом приложении).

Если в вашей системе используется подкачка объемом 31 ГБ, и вам нужен последний ГБ, скорее всего, они будут очень медленнее. ИМХО, если вам постоянно требуется более 2 ГБ подкачки, вам следует установить больше оперативной памяти.

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

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

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

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

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

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

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

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

Чтобы освободить память от дополнительной нагрузки, я бы предпочел zRAM и swappiness=60 вместо традиционной замены жесткого диска.

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

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

Вполне возможно перейти в спящий режим с 16 ГБ оперативной памяти и 4 ГБ подкачки: вам просто нужно использовать менее 4 ГБ при переходе в спящий режим.

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

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

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

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

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

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

Просто мои 2 цента.

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

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

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

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

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

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

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

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

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

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

@Донни Курния, спасибо, я этого не знал. Но мой ноутбук любит использовать своп, когда он засыпает. Я смотрю, могу ли я это отредактировать.

Зачем мне своп?

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

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

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

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

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

Сколько свопов мне нужно?

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

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

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


У меня есть Dell Inspiron с Linux Mint, и я планирую увеличить объем оперативной памяти до 16 ГБ, а затем заменить жесткий диск емкостью 1 ТБ на твердотельный диск того же размера. Чтобы уменьшить количество циклов записи на SSD, я хочу полностью удалить раздел подкачки.


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

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

Как уже было сказано: не обязательно:

Чтобы достичь этой отметки за 10 лет, вам придется записывать 204,8 ТБ данных каждый год. Это 17,06 ТБ данных каждый месяц или примерно 574,4 ГБ каждый день. Я редко записываю более 5 ГБ данных в день, не говоря уже о том, чтобы больше чем в 100 раз. Если вы это сделаете, любой из двух самых эффективных твердотельных накопителей все равно прослужит вам очень, очень, очень, очень долго. Я готов поспорить, что человек с такими потребностями заменит свой ПК или ноутбук дважды, прежде чем истечет 10-летняя отметка.

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

У меня долгое время работала система на 16 ГБ без подкачки, и проблем не было. Я создал файл подкачки пару недель назад, и система использует его 157 МБ.

Однако с выравниванием износа на современных твердотельных накопителях я бы не стал особо беспокоиться об этом.

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

Чтобы уменьшить количество циклов записи на SSD

Нет необходимости.Надежность твердотельных накопителей зависит от их возраста, а не от количества циклов записи. [PDF]

Или количество циклов записи:

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

Пожалуйста, пишите в личные сообщения /u/eganwall с проблемами или отзывами! | Удалить

В качестве источника я могу использовать только свой личный опыт, который определенно не отражает все возможные сценарии. А вот на своем десктопе с 16 Гб ОЗУ своп не ставил. Я не видел никаких проблем в течение многих лет.

Некоторое время назад тесты показали, что вы можете записать на SSD несколько петабайт, прежде чем возникнет дефект. Так что за своп я бы не парился, тем более с 16 гб. Тем не менее, резервное копирование данных по-прежнему является обязательным. Независимо от того, используется ли твердотельный накопитель или жесткий диск.

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

Я собираюсь заменить жесткий диск емкостью 1 ТБ на твердотельный диск того же размера.

При желании вы можете сохранить оба диска, настроить один для операционной системы, а другой для данных. В этом сценарии вы создаете установку Linux на SSD и монтируете жесткий диск как раздел данных, например, он может содержать каталог /home. Я имею в виду, поскольку диск все равно существует.

Мой совет? Создайте файл подкачки (или раздел), а затем установите «подкачку» на 10 %, чтобы он не использовался без крайней необходимости.

В: Вы предпочитаете, чтобы программы аварийно завершали работу при нехватке памяти? ДА? Вам не нужен обмен. НЕТ? Вам нужен обмен.

В: Нравится ли вам, что ваше дерьмо HHHession сохраняется, когда ваша батарея разряжается? ДА? вам нужен своп> = установленная оперативная память. НЕТ? Обмен не нужен.

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

Существует параметр ядра "swappiness" (см. /proc/sys/vm/swappiness), который сообщает ядру, насколько агрессивно использовать swap. Чем выше значение, тем больше вероятность того, что ядро ​​выполнит подкачку, даже если в этой памяти нет непосредственной необходимости.

Если у вас 16 ГБ, вы, вероятно, сможете установить для swappiness значение 10 или даже 1.

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

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

Лучший аргумент, который у меня есть в пользу сохранения свопа, следующий:

Если вы используете опцию монтирования сбросить для своего свопа, SSD будет видеть его как свободное место, когда он не используется. В некотором смысле, это делает пространство, используемое для подкачки, не потраченным впустую. Контроллеру SSD нравится иметь свободное пространство, потому что это упрощает его работу по сбору мусора и выравниванию износа.

Если вы решите сохранить своп, вам, возможно, захочется внести некоторые дополнительные изменения, помимо опции отказа от монтирования:

Чтобы своп никогда не использовался, за исключением чрезвычайных ситуаций, вы можете уменьшить переменную ядра vm.swappiness со значения по умолчанию (которое здесь равно 60), например, до vm.swappiness = 0 или 1 или 10 . В моем дистрибутиве я могу сделать это, создав для него текстовый файл в /etc/sysctl.d/ с таким содержимым, которое будет применяться при загрузке:

Для этого существует инструмент командной строки (но только для текущей загрузки) с именем sysctl :

Для перехода в спящий режим не обязательно использовать своп 16 ГБ. Обычно вы также можете перейти в спящий режим с гораздо меньшим объемом оперативной памяти. Ядро пытается освободить место перед переходом в спящий режим. Возможно, он также использует сжатие, но я точно не знаю. Вы можете использовать что-то вроде подкачки 8G, и гибернация, вероятно, все еще будет работать большую часть времени.


Крис Хоффман

< бр />

Крис Хоффман
Главный редактор

Крис Хоффман – главный редактор How-To Geek. Он писал о технологиях более десяти лет и два года был обозревателем PCWorld. Крис писал для The New York Times и Reader's Digest, давал интервью в качестве эксперта по технологиям на телевизионных станциях, таких как NBC 6 в Майами, и освещал свою работу в новостных агентствах, таких как Би-би-си. С 2011 года Крис написал более 2000 статей, которые были прочитаны почти миллиард раз — и это только здесь, в How-To Geek. Подробнее.


Согласно старому эмпирическому правилу, ваш файл подкачки или файл подкачки должен быть "удвоить объем ОЗУ" или "в 1,5 раза больше объема ОЗУ". Но действительно ли вам нужен файл подкачки объемом 32 ГБ или файл подкачки, если у вас 16 ГБ оперативной памяти?

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

Назначение файла подкачки или раздела подкачки

Во-первых, давайте вспомним истинное назначение файла подкачки в Windows или раздела подкачки в Linux. Оба обеспечивают дополнительную рабочую память для вашего компьютера. Например, если на вашем компьютере 2 ГБ оперативной памяти и вы открываете большое количество программ или большое количество файлов, вашему компьютеру может потребоваться хранить 3 ГБ данных в своей рабочей памяти. Компьютер сохраняет этот дополнительный 1 ГБ данных в файле подкачки или в пространстве подкачки. Файл подкачки или подкачка действует как область «переполнения» для хранения дополнительных данных. Ваш компьютер автоматически передает данные обратно в оперативную память, когда он используется, и перемещает данные в свой файл подкачки или раздел подкачки, когда он не используется.

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

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


Другое использование файла подкачки и разделов подкачки

Windows и Linux также используют файл подкачки и пространство подкачки для других целей:

  • Краш-дампы Windows. В Windows файл подкачки используется для создания аварийных дампов. Для создания полного дампа памяти размер файла подкачки должен быть не меньше размера физической памяти + 1 МБ. Для дампов памяти ядра файл подкачки должен иметь размер не менее 800 МБ в системах с 8 ГБ ОЗУ или более. Большинству людей не нужны полные дампы памяти, но дампы ядра могут быть полезны. Требуемый файл подкачки размером 800 МБ довольно мал, но для этого необходимо оставить файл подкачки включенным и не отключать его. (Эта информация взята из публикации Understanding Crash Dumps на Microsoft TechNet.)
  • Гибернация Linux: в системах Linux гибернация — состояние отключения питания, при котором содержимое ОЗУ вашей системы сохраняется на диск, чтобы его можно было перезагрузить при повторной загрузке, — сохраняет содержимое ОЗУ системы в раздел подкачки. Это также может называться «приостановить на диск». Вы можете предположить, что вам нужен раздел подкачки размером с вашу оперативную память для перехода в спящий режим, но на самом деле вам просто нужен раздел подкачки размером с используемую вами оперативную память — так что, если вы регулярно используете только 4 ГБ из ваших 16 ГБ оперативной памяти, вы можете перейти в спящий режим на раздел подкачки размером 4 ГБ. Однако, если вы использовали более 4 ГБ ОЗУ, вы не сможете перейти в спящий режим. Часто безопасно выбрать раздел подкачки, равный размеру вашей оперативной памяти. Обратите внимание, что это относится только к спящему режиму — если вы никогда не планируете переводить компьютер в спящий режим, вам не нужно об этом беспокоиться. (Windows переходит в спящий режим, сохраняя данные в файл C:\hiberfil.sys, поэтому файл подкачки не используется при переходе в спящий режим в Windows.)


Реальный вопрос: сколько памяти вы используете?

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

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


Windows может управлять им автоматически

В Windows файл подкачки хранится в папке C:\pagefile.sys. По умолчанию Windows автоматически управляет размером этого файла. Он начинается с малого и вырастает до потенциально большего размера, если вам это нужно. Мы рекомендуем позволить Windows самостоятельно обрабатывать размер файла подкачки. Он не должен занимать много места на системном диске. Если ваш файл подкачки занимает много места на системном диске, это потому, что вам нужен был такой большой файл подкачки в прошлом, и Windows автоматически увеличила его размер для вас.

Например, в системе Windows 8.1 с 4 ГБ ОЗУ размер нашего файла подкачки в настоящее время составляет всего 1,8 ГБ. У нас не так много оперативной памяти, но Windows использует небольшой файл подкачки, пока нам не понадобится больше.


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

Если вы хотите вручную установить размер (не рекомендуется), обязательно помните, что действительно важно, сколько памяти будет использовать ваша система, а не только размер ее ОЗУ. В документации Microsoft отмечается, что:

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

Другими словами, все зависит от того, сколько памяти вам действительно понадобится — общий объем доступной памяти является «пределом фиксации системы».

Linux требует выбора

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

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

Если вы создаете разделы вручную в установщике Linux, размер оперативной памяти плюс 0,5 ГБ — это хорошее практическое правило, которое гарантирует, что вы действительно сможете перевести систему в режим гибернации. Как правило, места подкачки должно быть более чем достаточно. Если у вас большой объем оперативной памяти — 16 ГБ или около того — и вам не нужен режим гибернации, но вам нужно место на диске, вы, вероятно, можете обойтись небольшим разделом подкачки размером 2 ГБ. Опять же, это действительно зависит от того, сколько памяти на самом деле будет использовать ваш компьютер. Но на всякий случай неплохо было бы иметь место подкачки.


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

  • › Почему не следует отключать виртуальную память на Mac
  • › Является ли EndeavourOS самым простым способом использования Arch Linux?
  • › Дампы памяти Windows: для чего они нужны?
  • › Как установить Arch Linux на ПК
  • › Какую файловую систему Linux следует использовать?
  • › Легко понять использование оперативной памяти Linux с помощью Smem
  • › Сколько оперативной памяти требуется вашему ПК?
  • › QWERTY-клавиатура — самая большая неразгаданная тайна технологий

Читайте также: