Почему нет разделов подкачки на SSD дисках?

Я часто читаю, что не следует размещать разделы подкачки на диске SSD, так как это может повредить устройство. Это правда? Не могли бы вы объяснить мне причину?

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

8 ответов

Решение

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

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

Чтобы иметь значение, которое мы можем использовать для сравнения прочности SSD, мы можем использовать показатели продолжительности жизни, такие как опубликованные стандарты JEDEC. Широко доступное значение для выносливости - TBW (T эра B ytes W ritten или, альтернативно, общее количество записанных байтов), которое представляет собой количество байтов, записываемых до отказа диска. Современные твердотельные накопители могут быть оценены до 20 ТБ для потребительского продукта, но могут получить более 20000 ТБ для твердотельных накопителей на уровне предприятия.

При этом срок службы и использование SSD для замены зависят от нескольких факторов...

Системы с большим количеством оперативной памяти

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

Системы с небольшим объемом оперативной памяти

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

Гибернация нашей системы

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

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

SSD - единственный накопитель, который у нас есть

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

Обратите внимание на скорость

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

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

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

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

Даже если у вас достаточно ОЗУ, вы все равно можете запретить копирование или поиск файлов, чтобы выгрузить приложения из ОЗУ. Это может иметь место на файловых серверах (NAS, SAMBA, FTP), которые могут быть задействованы в больших файловых операциях.

Для этого лучше всего установить в /etc/sysctl.conf: vm.swappiness=1 vm.vfs_cache_pressure=50

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

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

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

Ссылка: https://rudd-o.com/linux-and-free-software/tales-from-responsivenessland-why-linux-feels-slow-and-how-to-fix-that

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

Этот процесс был улучшен путем обновления программного и аппаратного обеспечения. Ранние адаптеры обнаружили, что ОС не были запрограммированы для правильного хранения данных, как это делает SSD. Это отрицательно сказывается на большом количестве циклов чтения / записи SSD. Кроме того, большинство старых BIOS неправильно распознают SSD, что также вызывает проблемы.

Внедрение обновлений UEFI и ОС исправило большинство проблем, которые были у первых владельцев SSD. Кроме того, как и в любом производственном процессе, сами SSD стали лучше справляться с деградацией флэш-накопителей NAND.

Тем не менее, по-прежнему беспокоит то, что ваш SSD имеет ограниченное количество циклов чтения / записи, прежде чем он больше не сможет хранить данные. Хотя эта проблема столь же незначительна, как и отказ жесткого диска.

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

Жизнь против производительности Баланс.

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

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

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

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

[1] - Функции * Trim будут иметь ресурсы для выполнения необходимых шагов для равномерного использования всего диска. [Выгода = Жизнь]

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

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

[1] - Ввод / вывод SSD сокращен, но ваша система по-прежнему будет отвечать требованиям своих пользователей. [Выгода = Жизнь]

Тебе действительно нужны все эти журналы? Подумайте, что ваша система регистрирует и где.

[1] - Количество операций ввода-вывода SSD уменьшается, поскольку доступ к файлу журнала сокращен. [Преимущество = Жизнь и производительность]

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

* swap - Помните, что он используется не только при нехватке ресурсов, по умолчанию конфигурация подкачки, настраиваемая для многих дистрибутивов Linux, по умолчанию будет запарковывать долго выполняющиеся процессы с низким приоритетом дальше по лестнице производительности в пространство подкачки)

* Trim - стоит убедиться, что он включен, хорошая статья о том, что такое Trim и как он работает: http://searchstorage.techtarget.com/definition/TRIM

Принятый ответ объясняет теорию; Я полагаю, что могу добавить немного реальных данных из двух своих систем.

Настольная система

  • Имеет твердотельный накопитель Intel 750 емкостью 400 ГБ.
  • Имеет 32 ГБ оперативной памяти; своп нужен нечасто.
  • Однако он регулярно переходит в режим гибернации (скажем, раз в день), что требует большой записи подкачки.
  • В эксплуатации чуть более 4 лет.
  • Запускает Debian на ext4 и разделе подкачки.
  • Используется для установки Windows 10 в течение нескольких лет, но не сейчас.
  • Не имеет конфигурации для сохранения SSD (нет настройки подкачки и т. Д.).

Согласно SMART, за весь срок службы было записано 28 ТиБ (19 ГБ / день). В файловой системе ext4 было записано 18 ТиБ за время существования (12 ГБ / день). Остальное приходится на свопинг и установку Windows.

Согласно Intels SSD Toolbox, накопитель находится в отличном состоянии, и у него осталось около 95% срока службы:

Нетбук

  • Acer Aspire ES1-132, в использовании 3 года.
  • Есть какой-то 60 ГБ MMC SSD.
  • Имеет память 4GiB, поэтому, вероятно, большее давление на подкачку; хотя использование системы обычно довольно легкое.
  • Редко впадает в спячку.
  • Запускает Debian 10 на ext4 с отдельным разделом подкачки.
  • Не имеет конфигурации для сохранения SSD (нет настройки подкачки и т. Д.).

Кажется, я не могу получить общее количество записей на устройство, но файловая система ext4 видела почти ровно 1 ТиБ (1 ГБ / день). Согласно mmc-utils:

       # mmc extcsd read /dev/mmcblk0 | egrep -i 'life|eol'
eMMC Life Time Estimation A [EXT_CSD_DEVICE_LIFE_TIME_EST_TYP_A]: 0x01
eMMC Life Time Estimation B [EXT_CSD_DEVICE_LIFE_TIME_EST_TYP_B]: 0x01
eMMC Pre EOL information [EXT_CSD_PRE_EOL_INFO]: 0x01

Это означает, что было использовано 0–10% запасных блоков твердотельного накопителя, и накопитель находится в "Нормальном состоянии до EOL". Я так понимаю, что у накопителя осталось>90% срока службы.

Вывод

Две очень разные системы, обе использовались годами с подкачкой на SSD, и обе системы в полном порядке. Судя по диагностике, у обоих SSD осталось более 90% ресурса.

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

Январь 2021 г. В качестве подкачки я использую небольшой выделенный твердотельный накопитель корпоративного уровня. Эти корпоративные диски можно купить всего за 80 долларов за 240 ГБ прямо сейчас, и они представляют собой 3D nand с выравниванием нагрузки и другими ценными улучшениями для замены.

Используя диск только для подкачки, вы в значительной степени гарантируете, что он не повлияет на ваш дорогой диск с данными терабайтного уровня в случае его отказа, и вы по-прежнему получите производительность SSD. Оценки для очень интенсивного использования составляют около 2 1/2 лет.

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

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