Обновить

Дефрагментация HDD ускоряет скорость работы, но на сколько? Расчет скорости HDD в зависимости от фрагментации

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели9.7K
Всего голосов 4: ↑3 и ↓1+4
Комментарии22

Комментарии 22

Да в Досе это помогало ускорить диск. В многозадачных операционных системах сложнее. Там выгоднее запрашиваемые данные располагать на одной дорожке и читать дорожку целиком тем более объём современных кешей позволяет. Для HDD время чтения одной дорожки сравнимо с временем перемещения дорожки к дорожке.

по-моему, одиночные HDD остались в домашних системах, а в более-менее серьезном проде - RAID. И там уже с дефрагментацией всё иначе. Не говоря уже о системах, отличных от FAT/NTFS. Статья хорошая, устарела лет на 20, а так да, тёплая, ламповая :)

Да в Досе это помогало ускорить диск.

Не только в DOSе. Вот этот парень имел наилучшую стратегию и алгоритм для упорядочивания:

Но он оказался заложником Win9x, где имел свой драйвер-прослойку для дисков. Когда майки всех вытолкнули на NT (с приходом XP), то я читал что для Norton Speed Disk M$ не сертифицировала этот драйвер и вынуждала использовать встроенный в систему API дефрагментации, это для которого сделали вот такой GUI сами M$:

Позднее, этот GUI отключили вообще
Позднее, этот GUI отключили вообще

Тут ещё скорее всего наложился переход с FAT на NTFS и всё такое.

Как по мне, для всех видов FAT для Win9x лучше, чем Norton Speed Disk 99/2000/2001 нет. Он быстр, у него отличный алгоритм сортировки, который заметно сокращает количество дисковых операций для переноса и упорядочивания данных. Да и сам процесс дефрагментации крайне быстр. А вот под NT лично я перепробовал много разных ныне доступных программ и только PerfectDisk смог упорядочить не только файлы, но и подкачку, гибернацию и даже MFT$, что так же влияет на скорость работы магнитного диска. Ну и стратегии у него хорошие, правда с оптимальностью сортировки не очень, но поддерживать дефрагментацию можно относительно быстро, хотя первичная может затянуться на много часов.

Своими скриншотами отправили меня куда-то в начало века, спасибо :)

А что можете сказать про Defraggler ?

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

PS Есть целый класс дефрагментаторов для NT, которые суть оболочка для встроенного API. А у него, насколько я понял когда читал про него, есть жёсткие ограничения во всём: в стратегии, в скорости и даже в размере блока. А ещё, там есть какие-то ограничения с MFT$ и директориями. Norton Speed Disk отлично сортировал и оптимизировал директории и LFN в них, сжимая и упорядочивая сам файл директории. PerfectDisk точно это делает с NTFS, но в Boot Time режиме (на самом деле это просто однозадачный режим до загрузки оболочки, на подобии того, что использует chkdsk при проверке системного тома). Если Defragger не умеет в это то он по сути бесполезен и является просто оболочкой системного API.

это для которого сделали вот такой GUI сами M$

Эм, это не они сделали, а Executive Software, компания-разработчик дефрагментатора Diskeeper, которой майки и заказали написание дефрагментатора.

Из-за этого у них потом возникли проблемы с использованием Windows 2000 в немецкой госухе. Немцы потребовали исходники ОС для проверки на наличие закладок, а исхдников дефрагментатора у майков то ли не оказалось, то ли договор с Executive Software не позволял раскрыть исходный код третьим лицам.

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

Я слышал про дисккипер, но не был до конца уверен, спасибо. Теперь понятно их отношение к Пете Нортону.

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

Но после того, как все диски в юзерских компах заменили на ссд, вопрос закрылся. Ибо основное преимущество ссд перед винтами - это не скорости чтения/записи, а нулевое (ну, маленькое и везде одинаковое) время доступа. Пока диск не забит на 90%.

Впрочем, черепичные винты...

Ибо основное преимущество ссд перед винтами - это не скорости чтения/записи, а нулевое (ну, маленькое и везде одинаковое) время доступа.

SSD имеют разброс времени доступа в один порядок, видел это на графиках в разных статьях, специально поигрался с тестами на случай если информация устарела - для моего nvme от samsung примерно 3% запросов дают провал до 20ms, остальные операции укладываются в 2ms.

Для одиночного ssd этим можно пренебречь, но собрав полку из 24 дисков - вы получите среднее время доступа ~11ms вместо 2ms при таких вводных.

примерно 3% запросов дают провал до 20ms, остальные операции укладываются в 2ms. Для одиночного ssd этим можно пренебречь, но собрав полку из 24 дисков - вы получите среднее время доступа ~11ms

Интересно вы усредняете.

Скорость некоторых схем RAID равняется самому медленному диску в схеме.

Скорость некоторых схем RAID равняется самому медленному диску в схеме.

Из базовых в таком размере знаю только raid6 (бывает raid0, но под специфические задачи). Есть нюансы с размером кластера/страйпа/логикой контроллера, но вцелом на случайном чтении можно считать по минимальному, на любой записи или линейном чтении выйдет по самому медленному.

Условный raid60 это 2х12 дисков, уже ~7.5ms. При этом по мере загрузки/нагрузки/возраста цифры могут весьма неожиданно вырасти. Буквально в праздники наблюдал падение скорости линейного чтения ssd raid5 на 2 порядка.

Это не так работает даже для скорости, а уж для времени доступа и подавно.

Мой фактический опыт говорит об обратном. Ну да ладно, спорить не буду.

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

Дописал про кеш. По сути кеш в формуле (4) дает сокращение количества секторов для чтения.

Auslogic Disk Defrag Ultimate пользуюсь. Лучше чем ADD пока не видел.

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

Для меня в вопросах дефрагментации самым неочевидным была необходимость время от времени делать дефрагментацию SSD.

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

Попался мне тут компьютер родственницы, собранный ей частным мастером, который полностью отключил в Win10 периодический запуск встроенного дефрагментатора и поставил сторонний, даже с запуском по расписанию. И всё бы ничего, но лет 4-5 назад на него закончилась лицензия.

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

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

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации