Дефрагментация ссд диска

Содержание

Можно и нужно ли дефрагментировать ssd диск: как продлить жизнь ssd

Дефрагментация ссд диска
Популярность твердотельных накопителей (SSD или Solid State Drive) растет в геометрической прогрессии.

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

Современные операционные системы рекомендуется устанавливать на SSD винт

По сравнению с традиционным HDD, SSD жесткий диск обладает рядом преимуществ:

  1. Ускоренная загрузка и доступ к данным.
  2. Бесшумная работа.
  3. Повышенная надежность.

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

  • можно и нужно ли дефрагментировать SSD диск?
  • вредна ли частая перезапись?
  • можно ли форматировать SSD диск?
  • можно ли заполнять SSD файлами до отказа?
  • как продлить жизнь SSD диску в Windows 7?

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

Можно ли делать дефрагментацию SSD?

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

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

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

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

Дефрагментация требуется только для HDD дисков
Дефрагментация дисков не нужна SSD дискам

Какие операционные системы лучше использовать для SSD диска?

Команда TRIM — способ уведомить Solid State Drive о возможности физического удаления блоков данных, уже не содержащихся в файловой системе. Рекомендуется выбрать для установки на твердотельный накопитель ОС, поддерживающую такую команду. То есть операционная система для SSD должна современной. Идеально подойдут Windows 7, 8, 8.1 и 10.

Сама команда TRIM появилась с распространением , чтобы новые технологии хранения данных смогли составить конкуренцию HDD. Соответственно, операционные системы Windows Vista, XP и более ранние не подходят для

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

Что будет, если на диске осталось мало места?

Не рекомендуется заполнять твердотельный накопитель на 100%. Иначе вы заметите, как сильно SSD тормозит при выполнении самых простых программ. Оптимальное заполнение диска — 75%. При этом сохранится гармония между производительностью и вместительностью накопителя.

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

Можно ли хранить большие файлы на SSD?

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

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

Для хранения пользовательских файлов лучше использовать обычный HDD, работающий параллельно. Почему?

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

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

Что нельзя делать еще?

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

Да, это так, но чтобы угробить SSD перезаписью, придется попотеть.

Даже если вы будете полностью перезаписывать его по 10 раз в день, вряд ли через год или два с качественным накопителем что-то случится и вам понадобится ремонт SSD дисков.

https://www.youtube.com/watch?v=pCzsVP9YInQ

Но чего уж точно делать не стоит, так это ремонт SSD своими руками. Исключение из правил — если вы специалист соответствующего профиля.

Максимум, что вы можете сделать без опыта и навыков — прошивка SSD (замена заводского ПО на новую версию).

Очень часто «кривая» прошивка с завода становится причиной слишком медленной скорости работы SSD и отказа читать и записывать файлы с заявленной скоростью.

Исправлять это путем перепрошивки легко, ведь многие производители предлагают специальные приложения. Такая программа для SSD возвращает ему необходимое быстродействие по принципу «далее — далее — далее — завершить».

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

Итоги

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

SSD Tweaker

Программа SSD Tweaker позволяет следить за «здоровьем» диска

HD Tune

Программа HD Tune позволяет следить за здоровьем диска

SSD Life

Программа SSD Life позволяет следить за диском

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

Источник: https://pcyk.ru/windows/chto-takoe-ssd-zhestkij-disk-kak-prodlit-ego-zhizn-i-nuzhno-li-delat-defragmentaciyu/

Нужна ли дефрагментация SSD-накопителям?

Дефрагментация ссд диска

Пожалуй самым главным недостатком твердотельных накопителей информации (SSD) является их ограниченный срок службы.

По сути SSD-накопитель представляет собой множество ячеек флеш-памяти и каждая такая ячейка имеет свой ресурс. Сегодня уже появились накопители с ресурсом в 100 000 циклов перезаписи и технологии не стоят на месте, но все же ресурс SSD-накопителей ограничен.

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

Так нужна ли дефрагментации SSD-накопителей? Давайте разбираться.

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

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

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

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

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

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

Задача этой программы сделать износ ячеек равномерным, то есть в каждой ячейке накопителя число циклов перезаписи должно быть приблизительно одинаковым. Идея неплохая, но не работающая на 100%.

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

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

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

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

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

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

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

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

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

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

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

Источник: https://pcsecrets.ru/ustrojstvo-pk/nuzhna-li-defragmentaciya-ssd-nakopitelyam.html

5 вещей, которые не следует делать с твердотельными дисками SSD

Дефрагментация ссд диска

Не следует выполнять дефрагментацию на твердотельных дисках. Диски SSD имеют ограниченное количество циклов записи — а дефрагментация выполняет множественные перезаписи при перемещении кусочков файлов.

Более того, после дефрагментации SSD вы не заметите никаких изменений в скорости работы.

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

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

Не используйте Windows XP, Vista и не отключайте TRIM

Если на вашем компьютере установлен SSD, следует использовать современную операционную систему. В частности, не нужно использовать Windows XP или Windows Vista. Обе эти ОС не поддерживают команду TRIM. Таким образом, когда вы удаляете файл в старой операционной системе, она не может послать данную команду твердотельному диску и, таким образом, данные остаются на нем.

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

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

По этой же причине не следует отключать TRIM на операционных системах Windows 7 и других, поддерживающих эту команду.

Не заполняйте SSD полностью

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

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

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

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

Тести показывают, что следует использовать около 75% емкости SSD для идеального баланса между производительностью и количеством хранимой информации. Таким образом, на 128 Гб SSD оставляйте 28 Гб свободными и по аналогии для твердотельных дисков большего объема.

Ограничьте запись на SSD

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

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

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

Не храните большие файлы, к которым не нужен быстрый доступ на SSD

Это достаточно очевидный пункт. Твердотельные диски SSD меньше по объему и более дорогие, чем обычные жесткие диски. При этом они обеспечивают большую скорость, меньшее потребление энергии и шум при работе.

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

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

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

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

Источник: https://www.playground.ru/misc/news/5_veschej_kotorye_ne_sleduet_delat_s_tverdotelnymi_diskami_ssd-143172

Легкий способ настроить Windows 7 для работы с SSD

Дефрагментация ссд диска

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

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

Введение

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

Чтобы была понятна разница, можно привести время загрузки системы с SSD и с обычного HDD. Среднее время загрузки Windows 7 с обычного HDD диска составляет примерно 25-30 секунд. Аналогичный процесс с SSD-носителя составляет всего 8-15 секунд.

Но не все так просто. Объем современных SSD достаточно невелик по сравнению с современными HDD. Обычно встречаются модели с 60 – 120 Гб памяти. Бывают и больше, но их стоимость слишком высока.

Также SSD имеют ограниченное число циклов записи на диск.

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

При обычном использовании компьютера SSD-носителя хватит на 7-10 лет. При очень активном использовании срок службы сократится, в некоторых случаях до пары лет. Потому частые файловые операции рекомендуется переносить на HDD или отказываться от них вообще.

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

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

Windows 7 сама адаптируется для работы с SSD-накопителем. Не нужно слепо активировать все галочки SSD Mini Tweaker. Предварительно обязательно прочтите текст ниже, чтобы понять, насколько это вам необходимо и необходимо ли.

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

Основные элементы

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

Включение этой команды делает невозможным восстановление удаленных данных, потому рекомендуется использовать резервное копирование или работать в облаке. Windows 7 автоматически включает данную команду при обнаружении SSD.

Включение этой команды делает невозможным восстановление удаленных данных, потому рекомендуется использовать резервное копирование или работать в облаке. Windows 7 автоматически включает данную команду при обнаружении SSD.

Отключение дефрагментации

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

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

По сути, это простое «убивание» носителя. Именно потому дефрагментацию рекомендуется обязательно отключать для SSD-носителя.

Windows 7 не дефрагментирует SSD-носитель по расписанию, но она может это делать, если вы изменяли настройки дефрагментации самостоятельно.

SuperFetch/Prefetcher

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

Windows 7 отключается Superfetch и Prefetcher автоматически при установке системы. Если вы меняли настройки вручную, то следует проверить, не сбились ли они.

Дополнительно

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

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

Защита системы

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

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

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

Отключение режима гибернации

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

При использовании режима гибернации на жестком диске создается файл, куда помещается все содержимое из памяти компьютера, чтобы после восстановления восстановить состоянием системы «как до выключения». Соответственно, это требует дискового пространства, которое весьма ограничено на SSD-накопителе. И размер этого файл равен объему оперативной памяти. Например, в моем случае это целых 8Гб.

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

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

Снятие ограничений использования памяти для NTFS

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

Лучше всего активировать, если у вас 6 и более гигабайт оперативной памяти.

Хранить ядро системы в памяти

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

Лучше активировать данную опцию, если у вас больше 2-3 гигабайт оперативной памяти.

Заключение

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

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

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

Главное, на что стоит обратить внимание – это на Superfetch/Prefetcher и дефрагментацию.

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

Источник: https://club.dns-shop.ru/blog/t-101-ssd-nakopiteli/3935-legkii-sposob-nastroit-windows-7-dlya-rabotyi-s-ssd/

Ещё один взгляд на вопрос «нужна ли дефрагментация для SSD»

Дефрагментация ссд диска

Несомненно, вопрос, вынесенный в заголовок статьи, не нов, поднимался не раз и по нему достигнут консенсус «не особо нужна, и даже может быть вредна».
Однако недавнее обсуждение в х заставило меня ещё раз задуматься.

Со временем любой SSD всё равно сильно фрагментируется (внутри, в FTL)… Свежезаписанный SSD при линейном чтении даст высокую скорость, а уже поработавший — гораздо ниже, потому что линейными оно будет только для вас.

Да, обычно такое не должно происходить: или мы пишем «понемногу» в мелкие файлы/небольшие блоки метаинформации ФС (скорость линейного чтения которых нас не особо волнует), либо же мы пишем «помногу» в большие файлы и всё будет хорошо. Бывает и дозапись мелкими блоками в большие файлы — логи, например, однако они относительно короткоживущие и особой проблемы я тут не вижу.

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

Со временем он (оставаясь нефрагментированным на уровне операционной системы) окажется физически очень даже фрагментированным, что может существенно снизить скорость seq scan, резервного копирования и т.п.

Для проверки я написал скрипт и провёл тесты.

Спойлер: проблема присутствует (существенно влияет на производительность) только на одной из попавшихся под руки моделей (и та позиционируется производителем не как datacenter, а как десктопная/ноутбучная).

Про что тут вообще речь? Какая ещё фрагментация внутри SSD?

Если в двух словах, SSD устроен очень непросто. В NAND flash можно писать (точнее стирать) только большими блоками. А операционная система видит SSD как набор 512-байтовых (или 4096-байтовых) секторов, каждый из которых может быть адресован независимо.

Чтобы как-то это совместить, придумана такая вещь, как FTL (flash translation layer): данные во flash-памяти лежат не последовательно, а (очень условно) в том порядке, в котором они были записаны, что-то вроде log-структурированных файловых систем.

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

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

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

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

Немного о том, почему нужно заполнять SSD перед тестированием

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

Дело в поддержке TRIM: контроллер внутри SSD может «знать», что в конкретном блоке нет полезных данных, информация об этом хранится в FTL. И при запросе на чтение из такого блока он не обращается к медленной NAND flash, а сразу возвращает нули. На новом накопителе все блоки помечены как неиспользуемые, соответственно, в тестах на чтение он готов ставить рекорды.

Только нас же интересует с какой скоростью SSD умеет отдавать не нули, а данные.

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

Поэтому, перед тестированием стоит заполнять SSD несжимаемыми данными (в linux хорошим источником может служить /dev/urandom).

шелловский скрипт

тестовый файл создаётся в текущем каталоге.

тестировал только под linux c dash, coreutils и fio из debian buster, с другими дистрибутивами навряд ли будут проблемы, а вот под freebsd и другие операционные системы скорее всего скрипт придётся «допиливать».

echo preparing…dd if=/dev/urandom of=testfile bs=1M count=4096 status=nonesyncfor A in 1 2 3; do sleep 10 dd if=testfile of=/dev/null bs=1M iflag=directdone for A in 50 200 800 4000; do echo fio: write ${A}M… fio –name=test1 –filename=testfile –bs=4k –iodepth=1 –numjobs=1 –rw=randwrite –io_size=${A}M –randrepeat=0 –direct=1 –size=4096M > /dev/null sync for B in 1 2 3; do echo sleep ${B}0 sleep ${B}0 dd if=testfile of=/dev/null bs=1M iflag=direct donedone echo sleep 3600sleep 3600dd if=testfile of=/dev/null bs=1M iflag=direct

Обнаружилось, что NVMe-накопители intel у меня сейчас только на серверах с windows; пришлось с помощью гугла, stackexchange и какой-то матери слепить вариант и под винду

вариант на ps

Из внешних зависимостей только fio; путь к exe-файлу и временному файлу указывается в первых строчках скрипта.

$testfile = “c:\temp\testfile”$fio = “c:\temp\fio-3.18-x64\fio” echo “preparing…” $filestream = New-Object System.IO.FileStream($testfile, “Create”)$binarywriter = New-Object System.IO.BinaryWriter($filestream)$out = new-object byte[] 1048576 For ($i=1; $i -le 4096; $i++) { (new-object Random).NextBytes($out); $binarywriter.write($out)}$binarywriter.Close() For ($i=1; $i -le 3; $i++) { sleep 10 $time = Measure-Command { Invoke-Expression “$fio –name=test1 –filename=$testfile –bs=1M –iodepth=1 –numjobs=1 –rw=read –direct=1 –size=4096M” *>$null } $seconds = $time.Minutes*60+$time.Seconds+$time.Milliseconds/1000 echo “read in $seconds”} foreach ($A in 50,200,800,4000) { echo “fio: write ${A}M…” Invoke-Expression “$fio –name=test1 –filename=$testfile –bs=4k –iodepth=1 –numjobs=1 –rw=randwrite –io_size=${A}M –randrepeat=0 –direct=1 –size=4096M” *>$null For ($i=10; $i -le 30; $i+=10) { echo “sleep $i” sleep $i $time = Measure-Command { Invoke-Expression “$fio –name=test1 –filename=$testfile –bs=1M –iodepth=1 –numjobs=1 –rw=read –direct=1 –size=4096M” *>$null } $seconds = $time.Minutes*60+$time.Seconds+$time.Milliseconds/1000 echo “read in $seconds” }} rm $testfile

Получил следующие результаты:

  • фоновой дефрагментации в тестируемых моделях не обнаружено: скорость чтения не повышается через некоторое время после записи, в том числе длительный «отстой» (час и даже более суток) ничего не меняет, поэтому в таблице ниже привожу просто лучший результат из трёх запусков;
  • под windows почему-то время чтения менее стабильно и оказалось выше ожидаемого (впрочем, возможно, дело в том, что эти сервера оказались более нагружены);
  • продолжение записи сверх указанного в скрипте (перезапись файла более одного раза) не влияет на производительность.

Время чтения (в секундах) файла размером 4Гб для разных дисков:

Жирным отмечены DC модели (остальные — десктопные/ноутбучные); где SATA, а где NVMe, думаю, видно без пояснений.

Мы видим, что по мере случайной записи в файл у самсунга PM981 скорость чтения падала и в итоге упала вдвое (но осталась, правда, достаточно неплохой), а у единственной тошибы в таблице — вовсе в 3.5 раза, фактически сравнявшись с таковой у SATA устройств.
С другой стороны, у большинства устройств случайная запись или вовсе не повлияла на производительность, или повлияла незначительно.

Моя интерпретация этих результатов: скорость линейного чтения у SSD действительно может деградировать со временем, однако деградация, вызванная внутренней фрагментацией, не носит совсем уж фатального характера на большинстве дисков (на дисках intel, например, она вовсе незаметна; на дисках samsung если и заметна, всё равно скорость чтения остаётся вполне приемлемой).

Остаётся открытым вопрос деградирует ли скорость чтения со временем по другим причинам (например, из-за износа NAND flash).
Могу сказать про тошибу XG5: разницы в поведении между диском, на который по SMART было записано >>150Тб, и новым диском я не заметил ­— или 300-400 перезаписей недостаточно, чтобы износ flash стал заметен, или он вовсе не влияет на производительность SSD.

По поводу падения производительности после случайной записи: у меня как раз на такой тошибе хранится достаточно нагруженная БД mysql размером около 100Гб.

Действительно, в полном соответствии с изложенными выше теорией и измерениями, скорость чтения «боевых» таблиц mysql оказалась достаточно низкой (около 600Мб/с), скорость же чтения других крупных файлов с той же файловой системы гораздо выше (>2Гб/с).

Как бороться с внутренней фрагментацией SSD

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

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

Так что проще или смириться, или выбирать диски, которые не подвержены этой проблеме.
Придумал относительно быстрый способ избавиться от внутренней (и только от внутренней) фрагментации SSD:

syncfsfreeze -f /mountpointdd if=/dev/nvme0n1p2 of=/dev/nvme0n1p2 bs=512M iflag=direct oflag=direct status=progressfsfreeze -u /mountpoint

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

Есть ещё одно «но»: я не уверен на 100%, что все SSD правильно обрабатывают ситуацию «пишем нули в область, для которой до этого делали TRIM» (то есть с точки зрения накопителя области ФС, на которые ранее делали TRIM, могут теперь считаться не свободными, а занятыми данными).

В целом, рекомендация «забить смириться или выбирать диски» остаётся в силе.

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

P.S. был бы благодарен, если бы читатели запустили скрипт у себя и привели цифры для своих SSD, так как моя выборка накопителей достаточно однобокая.

Хабы:

  • Хранение данных
  • Компьютерное железо

Источник: https://habr.com/ru/post/494614/

Дефрагментация SSD: так она есть или нет?

Дефрагментация ссд диска

В своё время относительно дисков SSD существовало устоявшееся мнение о том, как соотносится внедряемая технология “крепко” сидящих чипов (идущая на смену “спиннерам” HDD) к такой незаменимой долгое время и обязательной функции оптимизации диска как Дефрагментация.

И мнение это можно было охарактеризовать словосочетанием “НЕ НУЖНО и НЕЛЬЗЯ”. С момента приобретения первого своего компьютера каждый пользователь впитал, в том числе, и мысль, что жёсткий диск с каждым байтом записанной на него информации приближается к своей смерти.

А в отношении же SSD политика Windows казалась вполне определённой: дефрагментация для SSD отключена по умолчанию. Всё вроде бы сходится. Однако нашлись люди, которые копнули в суть вопроса. Один из IT-блогеров успел заметить, что процесс оптимизации под контролем службы defragsvc чем-то всё-таки с диском занимается.

В связи с чем у автора в концовке возник резонный вопрос: а не вредит ли система сама себе? Да чёрт с ним “себе”: SSD-то за свои кровные куплен…

На данный момент наиболее мудрые специалисты уже избегают категоричности в ответе на вопрос “нужна ли оптимизация SSD” в том виде как она есть. Так происходит ли на самом деле дефрагментация SSD?

Пару сведений

Англоязычная Википедия утверждает, что Microsoft Drive Optimizer (она же утилита Оптимизации дисков, она же dfrgui.

exe) ранее носившая имя – внимание – Дефрагментация дисков, предназначена для ускорения скорости доступа к диску за счёт реорганизации структуры файлового размещения.

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

А на самом деле?

Однако, подытоживая “расследования” отдельных пользователей и анализируя ответы технических специалистов самой Microsoft, можно с уверенностью утвердиться в нескольких фактах:

Дефрагментация SSD действительно имеет место быть. Это точно происходит как минимум ЕЖЕМЕСЯЧНО в том случае, когда активирована функция создания теневой копии.

Причём Windows делает это нарочито из-за крайне низкой скорости записи на фрагментированных томах SSD. Да – если ещё кто не понял – фрагментация SSD также имеет место быть.

А куда от неё денешься-то? И, как и в случае с HDD, пользователь вполне может столкнуться с ситуацией, когда разросшаяся до максимума фрагментация файлов (метаданные уже просто не способны отобразить все фрагменты дефрагментированных данных) на SSD не позволит файл прочитать или записать. А вот здесь, в свою очередь, пользователь сталкивается с проблемой производительности SSD, чьи преимущества перед HDD начинают сходить на нет.

Как же так?

Команда ReTrim при этом должна запускаться по требованию системы из графического интерфейса утилиты dfrgui.exe, известной, напомню, пользователям Windows 7 как утилиты Дефрагментации (в Windows 10 – Оптимизация дисков).

И, насколько я понял, вовлечение ReTrim необходимо, так как технология TRIM в файловой системе диска SSD теперь принимает непосредственное участие, хотя и работает асинхронно.

Мы ведь помним процесс вовлечения TRIM в работу файловой системы: как только файл удаляется или место на диске SSD каким-либо образом высвобождается, система автоматически ставит в очередь задание для TRIM.

Для предотвращения высокой нагрузки со стороны системных служб, работающих с диском, число поставляемых в очередь TRIM-запросов всё-таки ограничивается. И в какой-то момент оно системой просто сбрасывается. Однако на системе это не сказывается – в текущем сеансе Windows высвобождает работу процессора и памяти.

При этом Оптимизатор дисков просто ждёт своего триггера на запуск ежемесячной (-недельной, -дневной) оптимизации, то есть ReTrim-команды. А вот в этот момент ReTrim уже выполняет необходимые операции пошагово (модульно; по степени разбиения; в соответствии с относительным размером элементов данных) дабы не превышать максимального размера TRIM-запросов.

есть смысл проводить оптимизацию пореже

В Windows 10, в отличие от Windows 7, система отсылает команды TRIM-функции всему диску, пока тот не занят и пользователь не проводит никаких операций с носителем. Это занимает мгновения. И за процесс отвечает запланированная в Планировщике задача под именем ScheduledDefrag. Обнаружить её легко из Проводника, набрав в строке поиска адрес

C:\Windows\System32\Tasks\Microsoft\Windows\Defrag

проникнув, тем самым, через папку с заданиями Tasks в корне директории System32. Кстати, имя скрытой задачи традиционно связано именно с процессом дефрагментации, сбивая с толку приверженцев “теории”, что SSD и дефрагментация понятия несовместимые. Тем более смущает Дата изменения файла в его метаданных. У вас SSD? Проверьте-ка:

Дело не в конкретной цифре, а в том, что задача была выполнена. Всё ещё сомневаетесь? Запускаем PowerShell:

Get-EventLog -LogName Application -Source “microsoft-windows-defrag” | sort timegenerated -desc | fl timegenerated, messageНо это всё было бы ничего… Обратите внимание на отчёт об успешной дефрагментации (!) диска:

Проверьте свои диски – была ли дефрагментация SSD носителя у вас? У меня она появлялась регулярно на всех машинах с SSD. И даже чаще чем хотелось бы:

щёлкните, чтобы увеличить

То есть эта та самая дефрагментация SSD, что и на HDD? Некоторые пользователи, как и у меня, отмечали более, чем регулярную работу оптимизатора Windows 10 вплоть до версии 2004. Чуть ли не из сеанса в сеанс. То есть с каждым включением компьютера.

Дефрагментация SSD вручную. Нет, пробовать не стоит

Снова помятуя о статье русскоговорящего блогера, тот продемонстрировал возможность ручного запуска дефрагментации SSD при определённых условиях. Как то:

  • защита системы включена
  • порог фрагментации файлов на SSD должен составить, как я понял, не менее 10%. Это значение является одним из условий запуска дефрагментации SSD. И как следствие, видимо, условие третье…
  • SSD должен быть исключён из списка обслуживаемых при регулярной оптимизации.
  • после чего через GUI-интерфейс программы Оптимизации включаем SSD в список дисков, попадающих под оптимизацию, и начинаем процесс вручную.

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

HDD, насколько я понимаю, целиком полагается на этот принцип записи информации, который даёт сбой только если оба входящих параметра ВЕРНЫ (TRUE). Так что вполне было бы логичным представить взбесившийся над поверхностью диска HDD шпиндель с головкой.

Который носится туда-сюда, сначала нанося на диск информацию, а потом её считывая. У SSD немного не так: шпинделя и спиннер-плиток нет, и работа диска к физическому расположению данных никак не относится. От слова “вообще”.

Однако любая активность по принципу “записал-прочитал-удалил” по-любому снижает продолжительность его жизни. В том виде, как дефрагментация работает на HDD, она к SSD неприменима.

Так что теперь, любоваться диском что-ли? И что делать-то?

Конечно, глупо было бы давать совет типа “а записывайте-ка на диск поменьше да пореже…”. Но делать наспех ничего не нужно. Точно не нужно удалять указанную выше задачу в Планировщике. Не стоит пока исключать SSD из списка обслуживания Оптимизатором.

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

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

C: -l -h

в этой части:

=================================================================================================

%windir%\system32\defrag.exe -c -h -o -$

=================================================================================================

Добавление ключей -l (операция TRIM) -h (выполнять с высшим приоритетом)к указанному диску (С: – если SSD не разбит на несколько разделов) должно было решить “проблему” дефрагментации SSD. И ведь это всё на фоне оригинальной статистики собранной с отзывов пользователей блога по поводу как часто была зафиксирована дефрагментация SSD уже на их компьютерах:

адаптированное фото с сайта Вадима Стеркина

По прошествии времени, однако, блогер в той же статье отошёл от категоричности суждений по поводу “явного бага” со стороны Windows, якобы уничтожающего (непреднамеренно, конечно) наши диски SSD.

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

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

Последняя, как оказалось, является своеобразным триггером к запуску первой?  Windows 10 и так постоянно лишает нас относительно независимых от её серверов вариантов восстановления системы и данных, а тут ещё это…  И, к слову, приводимые автором аргументы и доводы на страницах форумов и блогов кажутся более чем обоснованными. Особенно на фоне поверхностных знаний остальных IT блогеров и партизанского (как обычно) молчания со стороны Microsoft.

В общем, вот вам пища к размышлению. И успехов нам всем.

Источник: https://computer76.ru/2020/11/05/%D0%B4%D0%B5%D1%84%D1%80%D0%B0%D0%B3%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D0%B8%D1%8F-ssd/

Поделиться:
Нет комментариев

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.