Как увеличить производительность, стабильность и срок службы SSD?
Рынок SSD развивается семимильными шагами — наличием твердотельного накопителя в составе системного блока вряд ли кого удивишь. Производители наперебой советуют нам те или иные новые девайсы, новые контроллеры, новые фишки и оптимизации, подталкивая пользователя к покупке именно их девайсов. Один из инструментов влияния — скоростные показатели накопителя, которые в случае использования SATA-накопителя упираются в пропускную способность интерфейса, а в случае использования NVMe накопителя — в возможности контроллера и массива памяти SSD. Сегодня нам бы хотелось поговорить о нескольких вещах, влияющих сразу и на производительность, и на стабильность скоростных характеристик, и на срок службы накопителя. Речь идет о резервной области накопителя и о том, какие чудеса и полезные фишки несет ее изменение. Скажем прямо: тема — не нова, существует со времен возникновения твердотельных накопителей, и многое взято из разных источников интернете. Основная же идея в любом случае одна: как резервная область влияет на показатели SSD. ![]() Что такое резервная область SSD? Ни для кого не будет открытием, что операционные системы никогда не распознают полный объем твердотельного накопителя. Резервная область на твердотельном накопителе скрыта от глаз пользователя и используется под нужды SSD: она доступна только контроллеру самого накопителя. Нужды контроллера могут быть разнообразными, однако сводятся к двум важным вещам: использованию под кэш и резерв для замены битых или изношенных ячеек. Рассмотрим обе ситуации отдельно. Резервная область для кэша Резервная область может использоваться накопителем для ускорения записи в NAND, путем создания буфера SLC-кэша из доступного массива NAND. В результате скоростные характеристики накопителя при использовании режима SLC-кэширования выше на операциях чтения/записи, но лишь в пределах выделенной под кэш области, как правило, фиксированной на уровне прошивки контроллера. После исчерпания доступного кэша пользователь неизбежно столкнется с падением производительности SSD. Особенно ярко это видно при использовании накопителей с TLC или 3D TLC NAND, где скоростные характеристики самой NAND в силу ее конструктивных особенностей ощутимо ниже, чем у собратьев на MLC NAND и ее вариациях. ![]() Резервная область для продления жизни SSD У всех твердотельных накопителей есть показатель под названием TBW, указывающий фактический ресурс перезаписи ячеек. Иными словами — сколько раз пользователь может записывать и считывать данные на SSD. Ресурс обычно выражен значением в терабайтах (TB), соответственно, чем выше это значение, тем выше вероятность того, что SSD проживет дольше. Тем не менее, это не отменяет два факта: SSD может внезапно умереть из-за отказа контроллера или из-за сбоя питания от некачественного блока питания ПК, в результате фактических отказов микросхем NAND. Задумывались ли вы когда-нибудь, почему у определенных накопителей указан один объем TBW, а у других, той же емкости — совершенно другой, причем разница бывает и двукратной? Ответ кроется в пределах рассматриваемой нами проблематики, а именно — в размере резервной области накопителя. Если резервная область накопителя больше, то и дополнительных ячеек на замену изношенных или битых будет больше, соответственно и оперировать ими контроллер сможет до их фактического исчерпания. Отсюда и получается, что у одного накопителя размер резервной области под нужды фактического выравнивания износа и замены выработавших ресурс ячеек ниже, при этом и ресурс TBW весьма скромный, а у другого SSD, напротив, больше размер резервной области, потому и ресурс TBW указан заведомо выше. ![]() Кстати, вы наверняка в курсе того, что на рынке продаются накопители не только 120GB, но и 128GB: аналогично 240GB и 256GB и т. д. Секрет этих накопителей прост — разный размер резервной области при одинаковом массиве NAND. Угадайте, какие накопители более выносливы? Хочется сказать, что первые, но это далеко не всегда так: мы не можем точно знать реальный размер массива NAND-накопителя, соответственно не можем и утвердительно сказать, какой из них более вынослив. Большинство накопителей, присутствующих на рынке, имеет одинаковое количество парных микросхем NAND, поэтому при одинаковом массиве NAND надежнее и быстрее будет тот, который имеет больший размер резервной области. Иными словами, при равных условиях 120GB будет более выгодным приобретением, чем 128GB, та же история с 240GB и 256GB. Как узнать резервную область накопителя? Часть 1. Где мои гигабайты? Для начала обратимся к теории. Имея на руках, предположим, накопитель на 240GB и установив его в систему, после форматирования мы получим уже не 240GB, а примерно 224GB. Но если мы возьмем накопитель на 256GB и отформатируем в Windows, то увидим, что нам доступно примерно 238,4GB. Куда делись наши гигабайты? Чтобы ответить на этот вопрос, нужно немного погрузиться в теорию и разобраться, как же вообще формируется объем SSD и в чем он измеряется. Часть 2. Гигабайты vs гибибайты Традиционно емкость любого SSD мы можем измерить в гигабайтах (GB) — это именно то, что мы видим на сайтах производителей и на упаковке самого товара. Гигабайты — это десятичные приставки, все мы помним примерно ту же ситуацию и с обычными HDD. Производители при указании объема пользуются формулой 1 гигабайт = 1 миллиард байт, что далеко от истины. Корректнее же отображает ёмкость новый измеритель, более реальный — гибибайт. Таким образом, если 1 гигабайт — это 1 млрд. байт, то 1 гибибайт ~ 1,074 * 109 байт. ![]() Часть 3. Реальная емкость накопителя Получается, все без исключения производители указывают объем накопителя в гигабайтах, в то время как операционная система на самом деле оперирует гибибайтами. Типовой размер резервной области, то есть эдакий негласный стандарт, составляет примерно 7% от реальной емкости массива NAND-накопителя. Чтобы узнать реальный объем NAND в гибибайтах, нужно поделить емкость накопителя в гигабайтах на 1,073741824. Именно эти цифры мы видим после форматирования в операционной системе: 240GB накопитель превращается в доступные пользователю 224GiB, а 256GB накопитель превращается в 238,4GiB. Зачем вообще это считать, ведь операционная система сама это делает? Ответ как раз прост: на SSD емкостью 256GB размер резервной области максимально небольшой, условно — его совсем нет, в то время как на 240GB накопителе резервная область есть, и она скрыта от пользователя. Что конкретно мне дает резервная область? Как уже было сказано выше, резервная область напрямую влияет на усиление записи в NAND (тот самый кэш), а также на возможности контроллера оперировать доступными ячейками под нужды выравнивания износа и замены выработавших ресурс ячеек. Если мы имеем на руках относительно недорогой накопитель в 256GB на TLC или 3D TLC NAND, то отсутствие резервной области или ее маленький размер приведет сразу к двум вещам. Во-первых, к нестабильным и откровенно низким скоростям записи/чтения при любых более-менее серьезных и не очень нагрузках на накопитель. Контроллер будет просто не в состоянии их обработать. Во вторых, будет более скромный реальный ресурс перезаписи у накопителя. Контроллеру просто негде будет взять доступные ячейки для оперативной замены выработавших ресурс ячеек или выравнивания износа в процессе работы. ![]() Что происходит с производительностью? Выше мы пришли к выводу, что объем резервной области напрямую влияет на производительность накопителя. Чем больше резервных блоков доступно контроллеру, тем выше вероятность, что при высокой нагрузке сам контроллер отреагирует корректно и произведет все операции верно. Тем самым ситуации перегрузки, подвисания и подтормаживания накопителя сводятся к минимуму, как и число ошибок, возникающих при операциях с накопителем. Пользователь перестает ощущать дискомфорт и наслаждается стабильной работой девайса. Пример тестирования К сожалению, нет готового приложения или бенчмарка, которое бы описывало зависимость IOPS от времени при эмуляции записи 4KB блоков на SSD с очередью команд QD32. Тем не менее, популярный ресурс anandtech.com регулярно применяет подобное сравнение самых разных накопителей, проводя при этом тест вручную и отображая итоги в виде наглядных графиков. Одно из таких исследований датировано 2014 годом, при этом сравнивается несколько накопителей, ссылка на оригинальную статью здесь. На практике совсем неважно, какой именно накопитель SSD используется в тесте, важен итог, который схож у любого SSD. В статье приводится пример SSD Samsung 840 Pro объемом 256GB, в ходе тестирования которого размер резервной области изменялся от 7% до 50%. Ниже приведены скриншоты с сайта anandtech.com: Размер резервной области — задан производителем В этом примере Samsung 840 Pro 256GB тестировался как есть, из коробки. Вот что имеем в стандартном случае: ![]() Размер резервной области — 12% Размер резервной области увеличен до 12%. В случае с использованием накопителя объемом 256GB пользователю будет доступно лишь 225GB. Как видим, по сравнению с первым графиком результаты накопителя, выраженные в IOPS, стали ровнее, гораздо больше записей блоками 4KB происходит на большей скорости. ![]() Размер резервной области — 25% Размер резервной области увеличен до 25%. В случае с использованием накопителя объемом 256GB пользователю будет доступно лишь 192GB. Потери полезного пространства весьма ощутимые, но и результаты производительности накопителя, выраженные в IOPS, заметно подросли, график стал еще ровнее, просадок производительности стало меньше. ![]() Размер резервной области — 50% Размер резервной области увеличен до 50%. В случае с использованием накопителя объемом 256GB пользователю будет доступно лишь 128GB. Потери полезного пространства — катастрофические. Ситуация, конечно, спорная: вряд ли кто-то захочет распрощаться с половиной доступного места на диске в реальных условиях использования, но нам необходимо показать сам факт, отраженный в результате теста. А результаты — налицо: максимально ровный график на протяжении всего тестирования. Иными словами, на всей тестируемой области накопитель демонстрирует максимальную производительность с минимальными просадками. ![]() Ко всем ли SSD это применимо? Подобная ситуация не меняется с рядовыми бытовыми и геймерскими SSD. Другое дело — специализированные корпоративные SSD, на поприще которых преуспела Intel. Там изначально размер резервной области по умолчанию занимает ощутимую долю всего массива NAND, потому и результаты таких SSD на всем доступном пользователю пространстве — максимально высокие. Отсюда и модели со "странным" объемом, например, 200GB или 180GB. Каков вердикт? Мы видим, что наибольший эффект достигается при выделении 25% резервной области. Не забываем о том, что у 240GB моделей 7% уже заложено производителем, поэтому достаточно будет выделить 13–18% для получения максимальной производительности накопителя. Как увеличить размер резервной области на моем SSD? Итак, мы поняли, что скоростные показатели, как и показатели живучести накопителя, неразрывно связаны с резервной областью накопителя. Так как же ее увеличить в домашних условиях, не прибегая к правке прошивки и перепрошивке устройства? Вариант 1. Специфический Один из вариантов — использовать приложение производителя, если таковое имеется. Например, размер резервной области можно двигать в фирменном приложении Samsung Magician, параметр Over-Provisioning. Даже сам производитель настоятельно рекомендует резервировать некоторый объем для целей контроллера. ![]() По умолчанию производитель настоятельно рекомендует резервировать около 10% доступного пространства накопителя. При применении настроек фактически этот объем становится недоступным пользователю, взамен Samsung закономерно подтверждает, что будет оптимизирована производительность и срок службы накопителя. Особенный эффект ощутят пользователи, чей объем SSD заканчивается не на ноль — 128GB, 256GB, 512GB и т.д. У Samsung таких накопителей много. Вариант 2. Универсальная пилюля Второй вариант предусматривает универсальный способ выделения резервной области накопителя. Какой? Решаете вы сами. Например, изначально при разметке диска оставить неразмеченной некую область. Именно эта неразмеченная область и будет по умолчанию считаться увеличением резервной области накопителя. ![]() Если же система уже установлена, то можно воспользоваться различными утилитами, работающими с накопителями. Например, бесплатное приложение MiniTool Partition Wizard, скачать которую можно на сайте производителя. ![]() Порядок действий: Заходим в приложение, идентифицируем свой накопитель, нажимаем правой кнопкой на разделе и выбираем пункт Merge/Resize. Далее попадаем в меню раздела накопителя, где ползунком, либо нажимая соответствующие кнопки ниже, определяем вручную размер неразмеченной области в конце накопителя. ![]() Подтверждаем процедуру кнопкой Apply в основном меню программы. Соглашаемся на изменения нажатием «OK». Если накопитель — не системный, то изменения произойдут здесь же. Если же системный, то программа попросит перезагрузку и сделает все необходимое до загрузки операционной системы. Далее система загрузится как обычно, но с переразмеченным разделом. Profit! ![]() Заключение В процессе изучения вопроса резервной области мы пришли к выводу о том, что размер резервной области напрямую влияет не только на живучесть SSD-накопителя, но и на его скоростные операции и их стабильность. Способ увеличения резервной области, изложенный в статье — универсален и применим к любому SSD, независимо от производителя, объема и типа контроллера. Делать или нет предложенные в статье шаги — дело лично каждого, но для достижения максимальной отдачи от своего накопителя рекомендуем увеличить резервную область по своему желанию. Secundos |