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

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com

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

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

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

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

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

Лучше всего это видно по Samsung 870 QVO на 1 ТБ, недорогому SSD на памяти QLC. Samsung честно пишет в спецификации: заявленные 530 МБ/с записи измерены с включённым буфером TurboWrite. Буфер может разрастись до 42 ГБ, но, как выяснили в PC Gamer, для этого на диске должно быть свободно 168 ГБ. Чем меньше свободного места, тем меньше буфер, а на почти полном диске от него остаётся только постоянная часть на 6 ГБ. А когда кончается и она, скорость записи, по данным самой Samsung, падает до 80 МБ/с. Обычный жёсткий диск WD Blue на 1 ТБ стабильно пишет 150 МБ/с, почти вдвое быстрее.

Скорость записи Samsung 870 QVO 1 ТБ по спецификации Samsung и жёсткого диска WD Blue 1 ТБ по спецификации WD
Скорость записи Samsung 870 QVO 1 ТБ по спецификации Samsung и жёсткого диска WD Blue 1 ТБ по спецификации WD
Автор: Raspakovka Источник: download.semiconductor.samsung.com

То есть копирование видео на 20 ГБ на почти заполненный 870 QVO большей частью пройдёт со скоростью ниже, чем у обычного жёсткого диска. На пустом диске то же видео целиком влезло бы в быстрый буфер.

Можно решить, что это беда только дешёвых дисков на памяти QLC. Не только. Сайт TechPowerUp в каждом обзоре заполняет SSD до конца и смотрит, что происходит со скоростью. Lexar NM710, обычный NVMe-накопитель, держит 1-1,5 ГБ/с примерно до 70 % заполнения, а потом проседает до 500 МБ/с. Kingston NV3 после исчерпания кэша падает до 200 МБ/с. Team Group MP44L на почти полном диске пишет около 300 МБ/с. Это всё ещё быстрее жёсткого диска, но совсем не те скорости, за которые платили.

Есть и вторая причина, менее заметная. SSD не умеет записывать новые данные поверх старых. Он пишет только в чистые страницы памяти, а стирать умеет лишь целыми блоками, в которых много страниц. Поэтому контроллер постоянно занят уборкой: собирает ещё нужные данные из полупустых блоков, переносит их в другое место и освобождает блок целиком. Пока свободных блоков много, уборка идёт незаметно в фоне. Когда их почти нет, контроллеру приходится убирать прямо во время вашей записи. Производители знают об этом и прячут от пользователя резерв: у серверных SSD Samsung по умолчанию это 6,7 % ёмкости, скрытые от вас и нужные контроллеру именно для этой уборки. Этот резерв можно увеличить: у дисков Samsung в программе Magician, у любых других — оставив часть диска неразмеченной.

Хорошая новость: всё это обратимо. Стоит освободить место и дать диску немного постоять без нагрузки, как контроллер перенесёт данные из черновика в основную память, и черновик снова вырастет. TechPowerUp прямо отмечает, что после простоя полная скорость записи возвращается.

Узнать, как ведёт себя именно ваш диск, несложно. Модель видна в «Диспетчере устройств» в разделе «Дисковые устройства». Дальше достаточно найти её обзор на TechPowerUp: в каждом обзоре SSD там есть раздел pSLC Cache с графиком записи на весь объём, где видно, сколько гигабайт диск пишет быстро и до какой скорости проседает потом. Если память в нём QLC, за заполнением нужно следить особенно внимательно.

Сколько же места оставлять? Единой цифры нет, она зависит от модели. Но ориентиры понятны: тому же 870 QVO для полного буфера нужно свободными около 17 % ёмкости, а Lexar NM710 начинает сдавать после 70 % заполнения, то есть при 30 % свободного места. Если не хочется изучать обзор своей модели, держите свободными 20-30 % диска. Особенно это важно для дешёвых SSD на памяти QLC и для системного диска, куда постоянно что-то пишется.

И проверьте, что Windows помогает диску. Для этого откройте командную строку и введите fsutil behavior query DisableDeleteNotify. Ноль в ответе значит, что включён TRIM: система сообщает диску, какие блоки после удаления файлов можно освобождать. По умолчанию Windows раз в неделю ещё и проходится по SSD своей «Оптимизацией дисков». Это не дефрагментация, а повторная отправка тех же команд TRIM, так что выключать её не нужно.

А теперь признайтесь: насколько заполнен ваш SSD прямо сейчас и замечали ли вы, что копирование вдруг проседает?

Изображение в превью:
Автор: Raspakovka
Источник: download.semiconductor.samsung.com
Автор не входит в состав редакции iXBT.com (подробнее »)
Об авторе
547e

3 комментария

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

K
Один на 50% пустой, второй на 30%. Стараюсь оставлять хотя бы 20% пустыми
M
Странная статья — теперь лучше Вы, Распаковка, признайтесь — нейронка при написании помогала? А то вроде все мысли на 80-90% правильные, но много где путаница на ровном месте… И что за источник такой везде указан — при нажатии выдаёт Not Found. А то хотелось уж очень почитать откуда бред про:
у серверных SSD Samsung по умолчанию это 6,7 % ёмкости, скрытые от вас и нужные контроллеру именно для этой уборки.

Где интересно они такое указывали? Пока что скорее похоже на то, что ИИ помощник кое-что криво посчитал. До сих пор считал, что у них скрытая область (spare area) составляет прибл. 12,7%, читай: заводской ОР (Over-provisioning) равен ~14,5% (потому что указывая процент ОР, всегда берут за 100% именно доступный пользователю объём). Даже у потребительских SSD с наименьшим объёмом этой области, она составляет ~6,9% (для точности: 6,87%). И тем самым ОР равен 7,37%, для простоты просто округляют на 7%. У Вашей же 970Ево Плюс (как впрочем и у упомянутой Lexar NM710) эта область равна грубо 9% и ОР тем самым составляет ~10%.
P.S.: ах да, помнится в одном из старых даташитов ~2019-го года Самсунг указывал формулу, мол, «как высчитывается процент ОР/Over-Provisioning» и приводил в примере гипотетические числа, мол 8х100/120 = 6.7 %. Так вот — это просто пример для объяснения формулы и числа взяты с потолка, чтобы не объяснять более сложными реальными числами. И нету у них таких «серверных SSD».
Далее понравилось предложение:
Сколько же места оставлять? Единой цифры нет, она зависит от модели. Но ориентиры понятны

После которого идут немного странные фантазии, хотя именно у QLC-SATA-шника (особенно если он безбуферный, коим 870 QVO правда не является) тенденция указана правильно — 20-25% реально полезно держать свободными. Тут согласен. Но это скорее исключение, так сказать: worst case. Для современного TLC-NVMe-шника (коим в Вашем примере и является NM710), даже безбуферного, но в нормальной системе с рабочими HMB и TRIM — тут 10-15% более чем достаточно (то есть 15% — даже с разумным запасом. Я бы сказал: 6-7% = абсолютный минимум, а вдвойне, то есть 13+% = абсолютно беспроблемная зона). Откуда взялись 30%? — подозреваю, что из хромающей интерпретации тестов на сайте TPU. Одним словом, «общую рекомендацию» в конце, мол «Если не хочется изучать обзор своей модели, держите свободными 20-30 % диска.» можно спокойно поделить на 2, чтобы не пугать народ необходимостью излишней осторожности.
Про завершительную путаницу понятий «включённый TRIM» и «работающий TRIM» просто скромно промолчу — если бы ИИ-шке дали пару наводящих вопросов и заставили тем самым немного глубже копнуть, то думаю быстро бы получился более точный текст (но это не точно — не ручаюсь, т.к. сам нейронки пока не использую).
R
Спасибо за подробный разбор. Цифру 6,7 % я не сверил с самим документом Samsung, и ваш довод, что это пример к формуле, а не заводской резерв, похож на правду. Уберу эту цифру из статьи: для вывода важно только то, что скрытый резерв у SSD есть и его можно увеличить. Ссылку в подписи к графику тоже исправлю, чтобы она вела на сам документ.

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

Сейчас на главной

Новости

Публикации

Недостроенный советский ускоритель в Протвино: что покажет экспертиза 21-километрового тоннеля

21 километр под землёй, три ступени ускорения и 176 миллионов рублей тоько на обследование. Почему советский коллайдер так и не запустили и что с ним будет теперь.

Их считают «первыми S-90»: история советских колонок 35АС-1

Советские колонки 35АС-1 иногда называют «первыми S-90». Визуально они и вправду очень похожи на икону советского аудиопрома, более того — именно они послужили базой для её создания....

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

Мозг человека и других приматов отличается от мозга прочих млекопитающих не только общим объемом и количеством извилин. Главное отличие скрыто во внутреннем устройстве его внешнего...

Как заваривать кофе в воронке: почему фильтр-кофе горчит или кислит и как сделать его сладким

На чемпионате мира по завариванию кофе в Джакарте в 2025 году победитель Джордж Цзиньянь Пэн перед началом приготовления слил небольшую порцию кипятка из чайника в пустой стакан. У этого действия...