8 лучших программ для дефрагментации диска Windows 10 – HDD или SSD
Дефрагментация жесткого диска – важная часть регулярного обслуживания жесткого диска.
Существует очень много инструментов дефрагментации диска для Windows, которые могут помочь вам дефрагментировать диск часто или по требованию, когда ваши игры начинают тормозить или вы начинаете сталкиваться с проблемами при загрузке больших файлов.
Но, прежде чем мы узнаем о некоторых популярных программах для дефрагментации, давайте сначала разберёмся, что такое дефрагментация диска?
Что такое дефрагментация диска?
Проще говоря, дефрагментация диска включает размещение всех крошечных частей, составляющих один файл, рядом друг с другом, а не по всему жесткому диску. Следовательно, дефрагментация значительно улучшает производительность вашей системы, делая чтение файлов быстрым и эффективным.
Использование специального инструмента дефрагментации – это то, что вам нужно, чтобы упростить процесс реорганизации данных, хранящихся на жестком диске, чтобы связанные части данных были правильно расположены на носителе.
Думайте о программном обеспечении для дефрагментации как о быстром средстве наведения порядка на вашем сервере или ПК. Оно собирает все части, разбросанные по всему жесткому диску, и помещает их вместе для бесперебойной работы.
Изучите наш список лучших платных и бесплатных инструментов для дефрагментации с их набором функций, преимуществами и недостатками.
Лучшие программы для дефрагментации диска
Посмотрите, что могут предложить все эти дефрагментаторы и оптимизаторы дисков:
Disk Speedup
Ресурсо-дружественный инструмент дефрагментации диска для ПК с Windows
Disk Speedup – отличное средство для дефрагментации диска в Windows 10, занимающее минимум места в вашей системе. Он не только дефрагментирует жесткий диск за несколько щелчков мышью, но и последовательно упорядочивает фрагментированные файлы.
Disk Speedup безопасен и надёжен, поскольку тщательно проверяет, правильно ли были записаны новые данные, прежде чем перезаписывать старые данные. Вы можете в любой момент приостановить и остановить процесс дефрагментации, не опасаясь потери данных.
- Переключение между игровой и домашней средой.
- Имеет несколько инструментов для защиты системы.
- Значительно повышает производительность после оптимизации диска.
Что нам понравилось:
- Поддерживает дефрагментацию во время загрузки
- Оптимизация жесткого диска для более быстрого доступа к файлам
- Позволяет дефрагментировать сразу несколько дисков
Что нас разочаровало:
- Не поддерживает дефрагментацию флешек
IObit Smart Defrag
Имеет уникальный и стильный интерфейс.
Когда дело доходит до планирования автоматического процесса дефрагментации, Smart Defrag оказывается одной из лучших программ дефрагментации для Windows. Этот продукт от IObit может отделять записи и папки от дефрагментации. Он может заменить стандартный дефрагментатор диска Windows, чтобы вы могли быстро дефрагментировать приложения Windows Metro и пропустить дефрагментацию документов, размер файла которых превышает установленный.
- Настройка времени загрузки для ускорения запуска делает его лучшим средством дефрагментации диска для Windows 10.
- Оптимизация с помощью Smart Defrag значительно повышает производительность в играх.
- Инструменты для увеличения скорости быстрого доступа для копирования файлов в два раза быстрее.
Что нам понравилось:
- Предлагает функцию оптимизации для игр
- Одновременно выполняет дефрагментацию и оптимизирует систему
- Поддерживает стандартную дефрагментацию и дефрагментацию при загрузке
Что нас разочаровало:
- Отсутствие дефрагментации при простое ПК
Auslogics Disk Defrag
Компактный дефрагментатор для повышения производительности ПК.
Если у вас проблемы с конкретным файлом или приложением, то Auslogics Disk Defrag – идеальный выбор. Приложение дефрагментации оптимизирует файловую систему для более быстрого чтения и записи файлов; оно покажет список фрагментированных файлов вместо расплывчатого отчета о фрагментации. Это расширенный бесплатный дефрагментатор диска, который обязательно стоит попробовать.
- Оптимизация хранилища SSD – вам не потребуется отдельная программа для HDD и SSD.
- Помимо дефрагментации, полностью удаляет временные и неиспользуемые файлы.
- Возможность дефрагментировать диск в определенное время или когда система простаивает.
Что нам понравилось:
- Легкий инструмент для дефрагментации диска
- Быстрая и простая в использовании программа для дефрагментации
- Доступна портативная версия
Что нас разочаровало:
- Ничего особенного для бесплатного инструмента дефрагментации диска
Defraggler
Пожалуй, лучший бесплатный инструмент для дефрагментации диска со множеством качеств.
Defraggler – уникальное программное обеспечение для дефрагментации диска в системе Windows, в котором есть возможность либо дефрагментировать файлы по отдельности, либо дефрагментировать весь диск за один раз.
Его оптимизатор диска позволяет выполнять дефрагментацию, выбирая отдельные файлы и выполняя любую задачу как можно быстрее. После того как вы запустите анализ, он перечислит все фрагментированные файлы на диске. Таким образом, вы можете только те файлы, которые вам нужно дефрагментировать.
- Планирование автоматической дефрагментации.
- Исключите определенные области из дефрагментации или оптимизации диска.
- Вы можете запустить этот дефрагментатор диска прямо из проводника.
Что нам понравилось:
- Позволяет дефрагментировать по расписанию или автоматически
- Может дефрагментировать при перезагрузке
- Хорошо работает с внешними жесткими дисками и флешками
Что нас разочаровало:
- По умолчанию устанавливает браузер Chrome
- Не поддерживает дефрагментацию во время простоя ПК
GlarySoft Disk Speedup
Отличный инструмент дефрагментации диска со множеством настроек и опций.
GlarySoft Disk Speedup – это быстрое и эффективное программное обеспечение для дефрагментации диска с удобным и чистым пользовательским интерфейсом. Этот инструмент дефрагментации специально разработан для оптимизации вашей системы Windows и повышения общей производительности вашего ПК. Вы можете установить время для дефрагментации и включить опцию быстрой оптимизации ключевых системных файлов Windows при её запуске.
- Множественные настройки оптимизации для различных потребностей пользователей, что делает его универсальным инструментом для дефрагментации и оптимизации диска.
- Мощная функциональность для одновременной дефрагментации нескольких подключенных накопителей.
- Можно настроить исключение, чтобы избежать дефрагментации определенных областей.
Что нам понравилось:
- Бесплатное программное обеспечение для дефрагментации
- Простота в использовании и дефрагментация при простое
- Настраиваемый
Что нас разочаровало:
- Невозможно использовать на съёмных устройствах
O&O Defrag
Отличное программное обеспечение для дефрагментации, доступное как для личного, так и для коммерческого использования.
O&O Defrag имеет продуманный и простой в использовании интерфейс. Он поддерживает обычные компоненты, присутствующие в сопоставимых программах дефрагментации, такие как перемещение диска, просмотр краткого описания всех разделенных документов и проверка диска на наличие ошибок. Приложение обладает всеми теми функциями, которые делают его одним из лучших инструментов дефрагментации диска в Windows 10.
- В отличие от большинства известных программ дефрагментации, он поддерживает дефрагментацию по расписанию.
- Обширные файлы точек восстановления системы перемещаются на более медленные части диска для повышения производительности.
- Предлагает подробные отчеты о жестких дисках, что делает его лучшей программой дефрагментации диска для Windows 10.
Что нам понравилось:
- Показывает подробную статистику, связанную с дефрагментацией
- Используются восемь методов дефрагментации
- Разрешает автоматическую дефрагментацию в фоновом режиме
Что нас разочаровало:
- Премиум-пользователи получают больше преимуществ
- Бесплатное версия недоступна
UltraDefrag
UltraDefrag – идеальное программное обеспечение для дефрагментации диска как для новичков, так и для опытных пользователей. Инструмент имеет общий набор функций, который может использовать каждый. Кроме того, он предлагает множество дополнительных опций для пользователей, которым необходимо внести какие-либо конкретные изменения.
Он даже имеет специальный инструмент оптимизации реестра для повышения общей производительности системы. Вы можете запланировать автоматическую оптимизацию.
- Лучшая программа дефрагментации для Windows 10, допускающая внутреннюю и внешнюю дефрагментацию.
- Имеет инструменты для дефрагментации отдельных файлов и папок.
- Проверяет жесткий диск на наличие ошибок – важная функция, которой не хватает большей части программного обеспечения для дефрагментации диска.
Что нам понравилось:
- Предлагает скрытые расширенные параметры
- Позволяет проверить жесткий диск на наличие распространенных ошибок
- Поддерживает внутреннюю / внешнюю дефрагментацию
Что нас разочаровало:
- Чтобы разблокировать расширенные параметры, вам необходимо отредактировать файл конфигурации
WinContig
Автономное бесплатное программное обеспечение для дефрагментации диска ПК с Windows.
WinContig быстро дефрагментирует файлы без необходимости дефрагментировать весь диск. Это автономное программное обеспечение для дефрагментации, которое не создаёт на вашем компьютере никаких установочных каталогов или записей реестра.
Инструмент доступен как бесплатное ПО как для личных, так и для коммерческих пользователей. WinContig также позволяет пользователям группировать файлы в профили, и он принимает дополнительные переключатели командной строки, чтобы контролировать, как программа работает в целом.
- Лучший бесплатный многоязычный дефрагментатор диска, доступный для Windows 10 и других версий.
- Предлагает инструмент командной строки для лучшего управления настройками.
- Вам не нужно устанавливать, чтобы запустить его, предлагает портативную версию.
Что нам понравилось:
- Простой и быстрый в использовании дефрагментатор диска
- Лучшее программное обеспечение для оптимизации
- Выбранные файлы можно дефрагментировать
Что нас разочаровало:
- Ограниченные функциональные возможности по сравнению с другими бесплатными программами дефрагментации
Мы надеемся, что вам понравилось наше краткое описание лучших программ дефрагментации дисков для Windows 10, 8, 7, которые помогут оптимизировать вашу систему, а ваши жесткие диски будут «чистыми и аккуратными».
Если у вас есть какие-то личные фавориты, не стесняйтесь оставлять их в разделе комментариев!
Часто задаваемые вопросы о дефрагментаторах диска
Освобождает ли дефрагментация диска место на жестком диске?
Да, фрагментация диска, в некоторой степени, позволяет освободить дисковое пространство в вашей системе. Но, сколько места можно освободить за раз, зависит от типа мультимедийного файла. Как правило, эффекти очень небольшой.
Сколько времени занимает дефрагментация диска?
Ещё один часто задаваемый вопрос – это сколько времени обычно требуется для дефрагментации диска.
Точную продолжительность действительно невозможно определить, так как она зависит от используемого оборудования и процессора. Если вы используете высококачественное программное обеспечение, то процесс дефрагментации может занять несколько десятков минут, но также он может занять целый день, если ваша система устарела или в плохом состоянии.
Каковы основные преимущества дефрагментации диска?
Помимо наведения порядка на диске, есть ещё несколько полезных преимуществ использования дефрагментации диска в Windows:
- Повышенная производительность системы
- Более быстрое время загрузки
- Файлы загружаются быстрее
- Организованное дисковое пространство
- Сокращает время чтения и записи файлов с диска
- Очищает неиспользуемое дисковое пространство
Ускоряет ли оптимизация диска компьютер?
Это ещё один часто задаваемый вопрос, который задаёт себе большинство из нас.
Что ж, да, оптимизация диска увеличивает производительность вашего ПК. Оптимизация диска нацелена на повышение общей производительности вашего ПК с точки зрения надежности и скорости. Одна из наиболее важных задач оптимизатора диска – сжатие данных и максимальное увеличение свободного места в вашей системе.
Нужна ли дефрагментация SSD
В этой публикации, друзья, затронем тему, нужна ли дефрагментация современным накопителям SSD. Тема эта — отголосок из прошлого, её как производную в принципе темы жёстких дисков HDD, как я полагал, мы давно закрыли. HDD – это свалка истории IT, настоящее и будущее, по крайней мере ближайшее – это SSD, твердотельные накопители. Эти устройства давно стали реальностью для массового пользователя и в плане цены, и в плане технической доступности. Эти устройства внутри собственного типа успели пройти уже несколько этапов эволюции. И все прекрасно знают, что SSD нельзя дефрагментировать, про это трубят из всех щелей в IT-пространстве. И какового же было моё удивление, когда относительно недавно на сайте задали вопрос – нужна ли дефрагментация SSD, ибо утверждение о необходимости проведения этой операции именно для дисков SSD значилось в описании работы некоторой программы для дефрагментации. Что же, давайте разбираться в этой теме.
↑ Нужна ли дефрагментация SSD
↑ Что такое дефрагментация жёсткого диска
Друзья, дефрагментация – это операция по оптимизации работы механических жёстких дисков HDD, устройств, где информация хранится на магнитных пластинах, а её запись и считывание осуществляется головками.
Головки постоянно перемещаются по разным участкам магнитных пластин, какую-то информацию записывают, какую-то считывают. Упрощённо — нечто схожее с работой патефона. Запись информации производится туда, где есть свободное место, но этого места не всегда достаточно для линейной (последовательной) записи одного файла или нескольких файлов, которые будут считываться в едином каком-то процессе. В таких случаях диску HDD приходится записывать часть данных на другой участок магнитной пластины. А для этого и в процессе записи, и в процессе считывания головка должна перемещаться. Перемещение головок с участка на участок приводит к задержке операций записи и чтения. Это, собственно, и есть причина низкой скорости HDD в условиях нелинейной (непоследовательной, рандомной) обработки данных. Дефрагментация – это операция, которая собирает в одном месте части одного файла или нескольких файлов, принадлежащих одному процессу. Т.е. размещает их на одном участке магнитной пластины. Чтобы головки при считывании этих данных не производили перемещений и считывали информацию линейно. А, соответственно, с большей скоростью. Для этого в процессе дефрагментации содержимое диска анализируется, и производится перезапись данных с целью их более эффективного размещения на пластинах. Помимо этого, из-за того, что дефрагментация убирает лишние перемещения головок HDD, эта операция ещё и в какой-то мере снижает их износ.
Но у дефрагментации есть нюансы:
- Эта операция возможна только тогда, когда она возможна. А возможна она не всегда;
- Проводимая основательно она может длиться очень долго, на один только раздел может уйти несколько часов. В процессе проведения дефрагментации диск HDD загружен максимально. И если у нас операционная система установлена на диске, который дефрагментируется, мы если и сможем пользоваться компьютером, то минимально и с жуткими тормозами;
- Её эффект может быть мало заметен, ибо работает только на считывание данных;
- Её эффект может быть мало заметен, если у нас хороший современный HDD с большим числом головок и большим кешем;
- Её эффект может быть мало заметен конкретно в работе операционной системы и программ, если у нас немалый объём оперативной памяти. Ибо здесь будет работать технология кеширования данных в оперативную память;
- Эффективность дефрагментации вместе со всеми взятыми методами оптимизации HDD, включая даже создание производительного RAID-массива, будет ничтожно мала в сравнении с работой SSD. В сравнении даже с самым дешёвым SSD — с SATA-интерфейсом, с плохим контроллером и медленной флеш-памятью.
Так что, друзья, дефрагментация – это неоднозначная операция даже для дисков HDD. А чтобы понять, как она влияет на SSD, давайте разберёмся с его обустройством.
↑ Принцип устройства SSD
Твердотельный накопитель SSD – это устройство хранения информации с принципиально иным механизмом, с эволюционно иным механизмом. У него нет никаких магнитных пластин и головок, это не механическое, а электронное устройство. SSD хранит данные в электронном виде в микросхемах флеш-памяти.
Запись данных в эти микросхемы и считывание из них данных происходит значительно быстрее, чем запись в магнитные пластины и считывание с них. Как и HDD, SSD также зависим от фактора линейности или рандомности записи данных. Линейно данные SSD записывает и считывает с огромнейшей скоростью, порой даже избыточной, если говорить о современных SSD с интерфейсом PCI-E 3.0 и 4.0. Рандомная скорость записи и считывания файлов у SSD ниже, но она в десятки раз превышает рандомную скорость HDD, это во-первых. Во-вторых, при рандомной обработке мелких данных SSD-накопители могут крыть своим преимуществом в виде многопоточности выполнения операций. SSD имеют многоканальный контроллер, благодаря чему могут формировать множественные очереди команд, которые контроллер будет обрабатывать в параллельном режиме. Вот почему SSD редко когда бывает загружен на 100%, тогда как для диска HDD – это обычное явление, когда идёт активная запись данных в процессах типа установки обновлений Windows.
Взгляните, друзья, на тесты скорости HDD и SSD двух разных типов – с интерфейсом SATA и PCI-E 4.0. В последовательной скорости чтения и записи данных (первый тест SegQ1M Q8T1):
- SSD SATA быстрее HDD и в записи, и в чтении в 3.5 раз;
- SSD PCI-E 4.0 быстрее HDD в записи в 18 раз, а в чтении – в 43 раза.
В рандомной однопоточной обработке данных (четвёртый тест Rnd4K Q1T1):
- SSD SATA быстрее HDD в записи в 43 раза, в чтении – в 49 раз;
- SSD PCI-E 4.0 быстрее HDD в записи в 78 раз, в чтении – в 88 раз.
И обратим особое внимание на тест многопоточной (32 потока) рандомной обработки мелких данных, который обведён красным маркером на скриншоте ниже (Rnd4K Q32T1). В этом тесте:
- SSD SATA быстрее HDD в чтении в 80 раз, в записи – в 86 раз;
- SSD PCI-E 4.0 быстрее HDD в чтении в 182 раза, в записи – аж в 216 раз.
Результаты этого теста у HDD не имеют существенных отличий от рандомного однопоточного теста (Rnd4K Q1T1). Ни в одном, ни в другом тесте HDD не может выйти за предел скорости 3 Мб/с. А вот у обоих типов SSD при многопоточном тесте (Rnd4K Q32T1) наблюдается увеличение скоростей от 2 до 6 раз.
↑ Нужно ли дефрагментировать SSD
Если дефрагментировать SSD, то технически мы получим бо́льшую скорость чтения данных, но мы вряд ли сможем ощутить эту скорость. Скорость многопоточного рандомного чтения и так высока, она больше линейной скорости чтения HDD. Ощутить в принципе разность скоростей при использовании SSD можно только на контрасте очень плохого SSD SATA и хорошего SSD PCI-E 3.0 или 4.0. Но при дефрагментации SSD мы получаем лишний объём перезаписи данных, а в этих устройствах информации ресурс перезаписи ограничен. Ячейки флеш-памяти SSD подвержены износу по итогу определённого цикла перезаписи данных. Многие производители SSD указывают для своих устройств максимальный объём перезаписи данных в Тб в качестве гарантированного ресурса накопителя. Этого ресурса при обычном домашнем использовании компьютера может хватить на долгие годы, но его не стоит гробить абсолютно ненужными операциями. Друзья, дефрагментация для SSD не только не нужна, она даже вредна.
О том, что дефрагментация не нужна SSD, прекрасно знает операционная система Windows. Она различает типы устройств информации, и к каждому типу применяет свои методы оптимизации. В штатной утилите оптимизации дисков такой критерий состояния диска, как процент фрагментации, указывается только для HDD. И системная операция дефрагментации в рамках фонового комплексного обслуживания Windows проводится исключительно для дисков HDD. Для SSD эта операция не проводится.
Дефрагментация – это скорее редкая точечная операция для исключительных случаев сильной фрагментации HDD. Конечно, разработчикам программ для дефрагментации, продвигающим свои продукты, нет резона говорить правду — что то, что они предлагают, в большинстве случаев будет как мёртвому припарка. Но вбивать в головы неофитов идею о том, что SSD нужна дефрагментация – это уже чересчур. А вот серьёзные разработчики программного обеспечения для дефрагментации дисков – типа компании Piriform, создателя известной программы CCleaner, наоборот, продвигают в массы истину. В программе Defraggler, если мы запустим дефрагментацию SSD, нам будет выдано предупреждение, что дефрагментация может уменьшить срок службы SSD.
Так что, друзья, давайте оставим дефрагментацию в прошлом, где, собственно, остались и сами HDD. Если у вас есть HDD, у него должна быть одна судьба – спокойно дожить свою жизнь в качестве хранилища данных типа медиа или бэкапов. Вся же серьёзная работа должна проводиться на SSD, который не нужно терзать никакими оптимизациями.
Стоит ли оптимизировать / дефрагментировать SSD?
Поскольку твердотельные накопители (SSD) становятся все дешевле и надежнее, жесткие диски (HDD) наконец-то близки к смерти, по крайней мере, для рядовых потребителей. Пожалуй, главным камнем преткновения все еще остается цена. Но даже несмотря на то, что SSD работают совершенно иначе, чем HDD, многие люди используют свои SSD так же, как и HDD, в том числе оптимизируя их для повседневного использования.
Но тут возникает вопрос: Стоит ли оптимизировать свой SSD? Ответ немного сложнее, чем простое «да» или «нет». Итак, давайте углубимся в эту тему и узнаем, почему оптимизация или дефрагментация SSD может быть не очень хорошей идеей.
Почему не следует оптимизировать SSD
Не следует оптимизировать или дефрагментировать SSD-накопители, поскольку это ничего не дает для производительности диска. Наоборот, это может сократить срок службы SSD. Прежде всего, необходимо понять, что SSD отличаются от жестких дисков на аппаратном уровне. Хотя они и являются устройствами хранения данных, в них используются разные технологии.
В HDD для хранения данных используется магнитная пластина, а для чтения/записи данных используется головка чтения/записи, которая перемещается по этой пластине. Пластина HDD разделена на различные сектора. Поэтому при получении запроса на чтение/запись HDD перемещает головку чтения/записи в определенный сектор для выполнения операции. SSD, с другой стороны, не имеют движущихся частей. SSD представляют собой разновидность флэш-памяти, в которой для хранения данных используются ячейки NAND. Когда контроллер SSD получает запрос на чтение/запись, данные сохраняются или записываются в ячейки NAND электрическим способом без необходимости использования движущихся частей.
Во-вторых, при хранении части данных на HDD или SSD, эти данные делятся на тысячи различных частей и хранятся везде, где есть свободное место на диске. Каждый раз, когда жесткий или твердотельный диск получает запрос на чтение файла, он должен найти и прочитать все фрагменты, размещенные в различных секторах (HDD) или ячейках (SSD). Процесс чтения/записи на жестком диске занимает значительно больше времени, поскольку головка чтения/записи должна найти и расположить поверх соответствующего сектора каждый фрагмент данных.
Однако SSD предназначены для работы с разрозненными фрагментами данных. При фиксированном времени поиска в наносекунды дефрагментация не сильно влияет на общую производительность SSD. На самом деле, как вы прочтете в следующем разделе, дефрагментация — это не то, что вообще следует делать с SSD.
Нужно ли дефрагментировать SSD?
Как мы уже говорили в предыдущем разделе, HDD и SSD хранят данные фрагментами везде, где есть свободное место на диске. В случае HDD фрагменты располагаются на разных секторах магнитного диска. В SSD фрагменты данных хранятся на ячейках NAND.
Из-за большого времени поиска на HDD предпочтительнее хранить фрагменты данных, принадлежащие одному файлу, последовательно. Дефрагментация — это процесс последовательного расположения разрозненных фрагментов данных, сокращающий время, необходимое для чтения одного полного файла.
Неудивительно, что дефрагментация значительно увеличивает производительность жесткого диска. Однако в случае с SSD дело обстоит несколько иначе. Ячейки NAND SSD имеют ограниченное количество циклов записи. В определенный момент эти ячейки NAND изнашиваются, что приводит к уменьшению объема памяти или полному отказу накопителя.
Контроллеры SSD стремятся предотвратить отказ диска, равномерно распределяя данные по имеющимся свободным ячейкам с помощью встроенных алгоритмов. Такое равномерное распределение фрагментов данных обеспечивает равномерный износ SSD, и этот процесс называется выравниванием износа.
Как Windows автоматически поддерживает SSD в здоровом состоянии
Хотя SSD не требуют дефрагментации, они получают пользу от таких оптимизаций, как TRIM. Когда мы удаляем что-то с SSD, данные на самом деле не исчезают. Они остаются на ячейках. Как только появляются новые данные, которые необходимо записать, ячейки нужно полностью стереть, прежде чем на них можно будет хранить данные.
Удаление данных для хранения большего количества данных занимает много времени, что приводит к снижению производительности. Именно здесь на помощь приходит команда TRIM. Она заставляет SSD выполнить сборку мусора и очистить ячейки от ненужной информации.
Windows прошла долгий путь со времен Windows XP, когда вам приходилось использовать команду TRIM вручную. Начиная с Windows 7, операционная система выполняет TRIM автоматически, когда это необходимо. В Windows также есть встроенная функция дефрагментации, предназначенная для SSD.
Мы знаем, что говорили, что не следует дефрагментировать SSD, но в случае с Windows все обстоит иначе. Windows дефрагментирует ваш SSD раз в месяц, чтобы предотвратить ошибки фрагментации файлов. Короче говоря, Windows поддерживает здоровье SSD автоматически.
- Переводить компьютер в режим производительности, чтобы увеличить производительность SSD.
- Отключать гибернацию путем удаления файла гибернации с SSD.
- Отключать восстановления системы.
Современные SSD прослужат долгие годы без вашего вмешательства
Современные SSD рассчитаны на многолетнее использование. Samsung 850 EVO, например, имеет ограниченную гарантию 5 лет, а его ресурс составляет 300 ТБ. В сочетании со встроенными в Windows методами оптимизации SSD, такой высокий показатель выносливости гарантирует, что вы скорее всего обновите диск по собственному желанию, чем из-за сбоев в системе хранения данных.
Ещё один взгляд на вопрос «нужна ли дефрагментация для SSD»
Несомненно, вопрос, вынесенный в заголовок статьи, не нов, поднимался не раз и по нему достигнут консенсус «не особо нужна, и даже может быть вредна».
Однако недавнее обсуждение в комментариях заставило меня ещё раз задуматься.
Да, обычно такое не должно происходить: или мы пишем «понемногу» в мелкие файлы/небольшие блоки метаинформации ФС (скорость линейного чтения которых нас не особо волнует), либо же мы пишем «помногу» в большие файлы и всё будет хорошо. Бывает и дозапись мелкими блоками в большие файлы — логи, например, однако они относительно короткоживущие и особой проблемы я тут не вижу.
Но легко представился вполне реальный сценарий, при котором всё-таки внутренняя фрагментация SSD может проявиться: файл базы данных, в который идёт достаточно активная случайная запись. Со временем он (оставаясь нефрагментированным на уровне операционной системы) окажется физически очень даже фрагментированным, что может существенно снизить скорость seq scan, резервного копирования и т.п.
Для проверки я написал скрипт и провёл тесты.
Спойлер: проблема присутствует (существенно влияет на производительность) только на одной из попавшихся под руки моделей (и та позиционируется производителем не как datacenter, а как десктопная/ноутбучная).
Если в двух словах, SSD устроен очень непросто. В NAND flash можно писать (точнее стирать) только большими блоками. А операционная система видит SSD как набор 512-байтовых (или 4096-байтовых) секторов, каждый из которых может быть адресован независимо.
Чтобы как-то это совместить, придумана такая вещь, как FTL (flash translation layer): данные во flash-памяти лежат не последовательно, а (очень условно) в том порядке, в котором они были записаны, что-то вроде log-структурированных файловых систем.
Такие структуры очень хорошо обрабатывают случайную запись, превращая её в последовательную, но, увы, ничто не бывает бесплатно — в результате зачастую последовательное чтение превращается в случайное.
Алгоритмы, по которым работают FTL, закрыты, однако, насколько мы можем судить, у разных производителей они могут кардинально различаться. Соответственно, кардинально может различаться и поведение накопителей под нагрузкой.
Именно это мы и будет исследовать.
Идея скрипта: создаём файл на несколько гигабайт, заполненный случайными данными, замеряем скорость последовательного чтения.
Далее используя случайный доступ переписываем часть тестового файла и снова измеряем скорость линейного чтения. Если наши подозрения верны, то теперь чтение из файла будет идти медленнее.
После каждой записи делаем по три операции чтения с задержкой между ними на случай, если какой-то накопитель в фоне производит дефрагментацию и потом скорость чтения улучшится.
Не раз встречал обзоры, в которых запускают чтение с нового накопителя, получают какие-то фантастические цифры и, ничтоже сумняшеся, публикуют их. Через какое-то время тест повторяют уже на не столь девственном диске, и вдруг оказывается, что время доступа выросло, а скорость, соответственно, упала.
Дело в поддержке TRIM: контроллер внутри SSD может «знать», что в конкретном блоке нет полезных данных, информация об этом хранится в FTL. И при запросе на чтение из такого блока он не обращается к медленной NAND flash, а сразу возвращает нули. На новом накопителе все блоки помечены как неиспользуемые, соответственно, в тестах на чтение он готов ставить рекорды. Только нас же интересует с какой скоростью SSD умеет отдавать не нули, а данные.
Кроме этого, некоторые накопители умеют сжимать данные, и на хорошо сжимаемых тестовых данных могут показывать не совсем те результаты, которые будут в реальной жизни.
Поэтому, перед тестированием стоит заполнять SSD несжимаемыми данными (в linux хорошим источником может служить /dev/urandom ).
тестовый файл создаётся в текущем каталоге.
тестировал только под linux c dash, coreutils и fio из debian buster, с другими дистрибутивами навряд ли будут проблемы, а вот под freebsd и другие операционные системы скорее всего скрипт придётся «допиливать».
Обнаружилось, что NVMe-накопители intel у меня сейчас только на серверах с windows; пришлось с помощью гугла, stackexchange и какой-то матери слепить вариант и под винду
Из внешних зависимостей только fio ; путь к exe-файлу и временному файлу указывается в первых строчках скрипта.
Получил следующие результаты:
- фоновой дефрагментации в тестируемых моделях не обнаружено: скорость чтения не повышается через некоторое время после записи, в том числе длительный «отстой» (час и даже более суток) ничего не меняет, поэтому в таблице ниже привожу просто лучший результат из трёх запусков;
- под windows почему-то время чтения менее стабильно и оказалось выше ожидаемого (впрочем, возможно, дело в том, что эти сервера оказались более нагружены);
- продолжение записи сверх указанного в скрипте (перезапись файла более одного раза) не влияет на производительность.
Время чтения (в секундах) файла размером 4Гб для разных дисков:
Диск | Первое чтение после последовательного заполнения файла | После случайной записи 50Мб | +200Мб | +800Мб | +4000Мб |
---|---|---|---|---|---|
intel S3510 SSDSC2BB480G6 | 10.7 | 10.7 | 10.8 | 10.8 | 10.8 |
toshiba XG5 KXG50ZNV512G | 1.9 | 2.9 | 3.7 | 4.8 | 6.8 |
samsung PM963 MZQLW960HMJP | 2.8 | 3.2 | 3.5 | 3.7 | 4.2 |
samsung PM983 MZQLB960HAJR | 3.3 | 3.6 | 3.4 | 3.4 | 3.4 |
samsung PM981 MZVLB1T0HALR | 1.8 | 1.8 | 2.1 | 2.5 | 3.5 |
samsung PM1725b MZPLL1T6HAJQ | 1.8 | 1.9 | 2.0 | 2.3 | 2.9 |
micron 5200 eco | 9.3 | 9.8 | 10.4 | 12.2 | 10.7 |
samsung PM883 MZ7LH1T9HMLT | 7.9 | 7.9 | 8.1 | 8.1 | 8.0 |
intel P3520 (win) | 5.8 | 5.9 | 6.0 | 6.1 | 5.8 |
intel P4500 (win) | 4.2 | 4.2 | 4.3 | 4.4 | 4.3 |
Жирным отмечены DC модели (остальные — десктопные/ноутбучные); где SATA, а где NVMe, думаю, видно без пояснений.
Мы видим, что по мере случайной записи в файл у самсунга PM981 скорость чтения падала и в итоге упала вдвое (но осталась, правда, достаточно неплохой), а у единственной тошибы в таблице — вовсе в 3.5 раза, фактически сравнявшись с таковой у SATA устройств.
С другой стороны, у большинства устройств случайная запись или вовсе не повлияла на производительность, или повлияла незначительно.
Моя интерпретация этих результатов: скорость линейного чтения у SSD действительно может деградировать со временем, однако деградация, вызванная внутренней фрагментацией, не носит совсем уж фатального характера на большинстве дисков (на дисках intel, например, она вовсе незаметна; на дисках samsung если и заметна, всё равно скорость чтения остаётся вполне приемлемой).
Остаётся открытым вопрос деградирует ли скорость чтения со временем по другим причинам (например, из-за износа NAND flash).
Могу сказать про тошибу XG5: разницы в поведении между диском, на который по SMART было записано >>150Тб, и новым диском я не заметил — или 300-400 перезаписей недостаточно, чтобы износ flash стал заметен, или он вовсе не влияет на производительность SSD.
По поводу падения производительности после случайной записи: у меня как раз на такой тошибе хранится достаточно нагруженная БД mysql размером около 100Гб. Действительно, в полном соответствии с изложенными выше теорией и измерениями, скорость чтения «боевых» таблиц mysql оказалась достаточно низкой (около 600Мб/с), скорость же чтения других крупных файлов с той же файловой системы гораздо выше (>2Гб/с).
Если хочется побороть, то можно воспользоваться одним из первых методов дефрагментации: делаем бэкап, удаляем файлы, восстанавливаем из бэкапа. Недостаток этого метода в том, что он достаточно долгий и подразумевает downtime (а через некоторое время данные во флеш-памяти снова окажутся фрагментированными и всё придётся повторять сначала). Так что проще или смириться, или выбирать диски, которые не подвержены этой проблеме.
Придумал относительно быстрый способ избавиться от внутренней (и только от внутренней) фрагментации SSD:
Не должно приводить к потере данных, но я не тестировал на боевых системах, ничего не гарантирую!
Есть ещё одно «но»: я не уверен на 100%, что все SSD правильно обрабатывают ситуацию «пишем нули в область, для которой до этого делали TRIM» (то есть с точки зрения накопителя области ФС, на которые ранее делали TRIM, могут теперь считаться не свободными, а занятыми данными).
В целом, рекомендация « забить смириться или выбирать диски» остаётся в силе.
Резюме: дефрагментация может быть полезна для некоторых SSD, однако не совсем такая (совсем не такая?) как для HDD. Нам важно не только то, что файл расположен в непрерывной цепочке секторов, но и то, что запись в эти секторы шла последовательно.