slc кэш ssd что это
Почему накопители SSD ускоряются после очистки и насколько важен размер кэша — бенчмарки популярных моделей PCIe 4.0
Почему накопители SSD ускоряются после очистки и насколько важен размер кэша — бенчмарки популярных моделей PCIe 4.0
В прошлом году SSD впервые в истории обогнали HDD по объёму продаж. В отличие от винчестеров, здесь сумасшедший технический прогресс. За несколько лет рынок меняется кардинально: интерфейс NVMe вместо SATA, память SLC→MLC→TLC→QLC…
Замена системного диска с HDD на SSD — иногда самый мощный апгрейд, который можно сделать с компьютером. Главный прирост в отклике системы и софта даёт скорость случайного доступа, которая даже у самых дешёвых SSD на пару порядков быстрее, чем у HDD. А современные SSD практически не уступают по скорости оперативной памяти. Основная проблема — живучесть. При интенсивной эксплуатации они слишком быстро выходят из строя.
Давайте посмотрим, что произошло на рынке потребительских SSD за последние десять лет. И как выбор конкретных технологий влияет на производительность.
SSD в целом становятся всё более сложными, поэтому объективная оценка их производительности — не простое занятие. Из-за этого у производителей появляется всё больше способов, как ввести в заблуждение потребителей и спрятать реальную производительность за некой единой «священной» метрикой.
В январе 2021 года издание AnandTech провело тестирование девяти современных моделей SSD на 1 ТБ. Описание этого эксперимента показывает — никакой единой метрики не существует.
Новая флэш-память
Intel X25-M
Много воды утекло с тех пор. Сейчас мы видим десятки терабайтных моделей по гораздо меньшей цене. Но основные принципы работы твёрдотельных накопителей не изменились. И главные проблемы флэш-памяти NAND по-прежнему актуальны:
Вернуть изначальную производительность старых SSD можно было только с помощью утилиты HDD ERASE, источник
Всё это по-прежнему актуально. Современные твёрдотельные накопители намного больше, быстрее и дешевле, но их контроллеры и прошивки не решили названные проблемы до конца. У современных SSD появились и некоторые дополнительные проблемы, которые ещё больше усложняют механизмы их работы и затрудняют объективное тестирование.
Примерно в 2014 году появились накопители с памятью TLC NAND и поддержкой прямого интерфейса NVMe. К настоящему времени обе эти технологии практически захватили рынок: память MLC практически исчезла, а NVMe — дефолтный интерфейс для новых моделей. Более высокая производительность PCIe/NVMe по сравнению с SATA даёт ошеломляющую разницу в бенчмарках, но с точки зрения дизайна бенчмарков на самом деле важнее был переход на TLC. Это связано с тем, что потребительские твёрдотельные накопители TLC в значительной степени зависят от кэширования SLC.
В накопителе чем больше битов мы записываем в ячейку, тем она сложнее (и медленнее). Современные диски записывают 3 бита на ячейку (TLC) или 4 бита (QLC). Оба варианта медленнее для записи, чем запись 1 бита на ячейку (SLC). Поэтому в SSD часть ячеек обрабатывается в «режиме SLC», это позволяет увеличить поток входных данных.
Недостатком является то, что данные из SLC NAND потом надо переписать в блоки, которые работают как MLC/TLC/QLC. Этот процесс часто называют фолдингом, он обычно автоматически выполняется во время простоя накопителя, где задержка не важна. Таким образом освобождается место в кэше SLC для дальнейшего использования.
Обязательное SLC-кэширование в современных SSD
Кэширование SLC создаёт два уровня производительности — один внутри кэша, и один снаружи. Большинство пользователей никогда не видят производительности «снаружи кэша». Реальные потребительские рабочие нагрузки почти никогда не пишут десятки или сотни ГБ непрерывно, особенно на высоких скоростях (быстрее, чем гигабитный Ethernet) — даже запись несжатого видео 4k60 немного меньше 1,5 Гбит/с, в то время как высококачественные NVMe теперь предлагают пиковую скорость записи выше 4 Гбита/с. Но на самом деле включение более реального варианта использования с адекватными перерывами для диска, чтобы освободить кэш SLC во время простоя, делает результаты тестирования более релевантными для многих пользователей.
Размеры кэша SLC также зачастую зависят от объёма свободного места на диске. Например, при заполнении SSD на 75% может остаться только 10% от обычного размера кэша SLC. Тесты, которые работают с почти пустым диском, могут преувеличить преимущества кэширования SLC по сравнению с тем, что испытывают пользователи, когда они фактически используют большую часть рекламируемой ёмкости своего накопителя.
Изменение размера кэша SLC в зависимости от объёма свободного места в Intel SSD 665p
Накопители QLC ещё больше усложнили ситуацию, поскольку они пытаются держать кэш максимально заполненным для ускорения доступа к данным.
Накопители NVMe (и некоторые SATA) также чувствительным к температуре. Накопители M.2, потребляющие более 5 Вт на пике, могут сильно нагреваться, поэтому сейчас многие из них поставляются в комплекте с радиаторами.
Данные SSD: локальность и DRAM
Кроме интерфейса (SATA, PCIe 3.0, PCIe 4.0) и выбора флэш-памяти TLC или QLC NAND, есть ещё несколько важных технологических различий между SSD высокого класса и начального уровня. Например, метод хранения метаданных Flash Translation Layer (FTL) — информации, какое физическое местоположение соответствует каждому логическому адресу (Logical Block Address, LBA).
В течение нескольких лет большинство SSD использовали большую простую таблицу поиска. Несложно посчитать, что для диска 1 ТБ с секторами по 4 КБ требуется таблица отображения FTL почти на 1 ГБ. Это увеличивает стоимость устройства, а производители SSD пытаются снизить свои расходы. Поэтому интерфейс DRAM исчез практически со всех контроллеров начального уровня — и им приходится как-то управлять гигабитной таблицей FTL, не имея возможности загрузить её в память целиком.
У контроллеров обычно есть встроенный кэш небольшого размера, который исчисляется в мегабайтах. Другой вариант — заимствовать часть оперативной памяти процессора через функцию буфера памяти хоста (HMB). Такая возможность есть в интерфейсе NVMe.
Но в любом случае, отсутствие полноценного буфера DRAM сказывается на производительности всех SSD: во-первых, случайные чтения требуют дополнительной операции чтения для извлечения данных из таблицы до того, как запрошенные данные могут быть прочитаны. Во-вторых, накопителям труднее выравнивать нагрузку и управлять сбором мусора, поэтому у них обычно падает производительность при больших нагрузках на запись и почти полном заполнении.
Приводы
Аппаратная начинка и архитектура диска непосредственно влияет на его производительность. Для иллюстрации AnandTech приводит бенчмарки девяти современных SSD ёмкостью 1 ТБ из различных сегментов рынка, то есть разных классов.
Серия тестов AnandTech Storage Bench (ATSB) состоит из трёх циклов: Light, Heavy и Destroyer. В первом режиме замеряется скорость выполнения набора «лёгких» задач, соответствующих относительно лёгкому использованию настольного компьютеров: браузер, текстовый редактор и прочее. В режиме Heavy очередь задач возрастает на порядок, в режиме Destroyer — ещё на порядок. Циклы Light и Heavy прогоняются сначала на полностью пустом диске, а потом на частично заполненном.
На странице с результатами показаны средняя скорость передачи данных, средняя задержка, задержки записи и чтения, а также эти показатели для 99-го перцентиля, и энергопотребление каждого накопителя.
Нужно заметить, что обычный юзер 99% времени использует SSD в лёгком режиме. Интенсивный режим включается только изредка, например, во время инсталляции игр или резервного копирования.
Серый график — показатель нового пустого SSD, чёрный — частично заполненного.
Как обсуждалось ранее, размер кэша MLC начинает серьёзно уменьшаться после заполнения диска на 50%. Это и отражается на результатах.
Средняя скорость передачи данных в режиме лёгкого использования (МБ/с)
Средняя задержка в режиме лёгкого использования
Следующие тесты на среднюю скорость случайного чтения и среднюю скорость последовательной записи также запускались дважды: 1) на абсолютно пустом диске с операциями только в диапазоне первых 32 ГБ пространства; 2) при 80% заполнении без ограничения на операции. Разница между серым и чёрными столбцами отражает влияние кэширования SLC, контроллеров без буфера DRAM или с уменьшенным объёмом буфера.
Средняя скорость случайного чтения (МБ/с)
Средняя скорость последовательной записи (МБ/с)
Скорость передачи данных и средняя задержка — основные показатели для типичного варианта использования SSD. Но есть и другой класс тестов — синтетические. Они не столько отражают производительность привода в реальных задачах, сколько показывают разницу во внутренней архитектуре устройства, выпукло демонстрируя отличия в этой архитектуре. Поэтому разница между показателями может быть кардинальной.
Например, последовательное заполнение привода ставит целью оценить размер кэша SLC. Этот тест выходит далеко за пределы любой реальной рабочей нагрузки, а результаты сильно отличаются для разных приводов.
Последовательное заполнение привода: средняя скорость (МБ/с)
Управление питанием SSD жизненно важно для любой системы на аккумуляторах. Система управления питания поддерживает несколько режимов, в том числе простой режим неактивности (SATA ALPM, NVMe APST и PCIe ASPM), который больше подходит для настольных компьютеров и в таблицах обозначен как ‘Desktop Idle’, и режим глубокого сна, в котором задействуются все энергосберегающие функции, включая DevSleep (‘Laptop Idle’).
Потребление энергии в неактивном режиме (милливатт)
Даже без активации этих функций накопители потребляют в неактивном режиме очень мало: от 194 до 1152 мВт.
Скорость пробуждения (микросекунд)
Заключение
Накопители SSD очень сильно продвинулись за последние 10 лет. В частности, у них кардинально снизилось энергопотребление. В режиме ожидания оно гораздо меньше 1 ватта, а судя по логам, SSD обычно проводит в режиме ожидания 99% времени.
Технический прогресс в этой области действительно потрясающий, а некоторые производители считают, что накопители NVMe можно использовать вместо DRAM в неких специфических задачах. Так делает Intel с модулями Optane. В то же время средняя задержка чтения в PCI 4.0 сильно упала, поэтому обычный пользователь может и не заметить разницы PCI 4.0 по сравнению с Optane.
На правах рекламы
Наши эпичные серверы используют only NVMe сетевое хранилище с тройной репликацией данных. Вы можете использовать сервер для любых задач — разработки, размещения сайтов, использования под VPN и даже получить удалённую машину на Windows! Идей может быть много и любую из них поможем воплотить в реальность!
Особенности работы SSD — что такое SLC-кэш и как он влияет на скорость
Содержание
Содержание
Ты купил современный SSD и довольный устанавливаешь его в свой ПК. Сразу же, на высокой скорости, начинаешь переносить на него данные с других накопителей. И вдруг в какой-то момент скорость записи на SSD падает в несколько раз. Что произошло? Почему падает скорость записи? Все дело в SLC-кэше.
Сегодня существуют твердотельные накопители на четырех типах памяти:
Samsung — единственная компания, которая продолжает называть всю свою память MLC, лишь добавляя количество бит на ячейку. И часто это вводит покупателей в заблуждение. Например, 3-bit MLC, хотя по факту это TLC.
Сегодня самыми распространенным типом памяти в твердотельных накопителях является усовершенствованный 3D NAND TLC. Невысокая цена производства, высокая плотность данных, современные контроллеры и использование технологий SLC-кэширования позволили производителям значительно повысить скорость и ресурс TLC накопителей. Но все ли так хорошо, как кажется на первый взгляд?
Что такое SLC-кэш, и как он реализован
Чтение и запись данных на SSD-накопитель происходит по битам. Запись в ячейки SLC памяти самая быстрая, так как одна ячейка содержит лишь один бит. С TLC-накопителями сложнее. Чтобы записать одну ячейку, необходимо несколько раз считать с нее данные, для того чтобы далее их правильно записать. А дополнительные операции чтения с ячейкой значительно увеличивают время.
И для того, чтобы повысить скорость записи в TLC ячейки, производители прибегли к простой хитрости. В начале записи контроллер сохраняет данные по одному биту на ячейку, что называется режимом SLC. Это значительно увеличивает скорость записи. Продолжая запись, контроллер в фоновом режим уплотняет записанные данные в ячейку, преобразуя ее в трехбитную. Но такая быстрая запись не может быть постоянной. Объем накопителя все же рассчитывается из трех бит на ячейку. Следовательно, после заполнения SLC-кэша, скорость падает и достаточно сильно. SLC-кэш бывает реализован разными способами:
Следовательно, на QLC накопителях в таком режиме максимальная скорость будет на четверть свободного объема накопителя или меньше — все зависит от реализации SLC-кэша. Пример SLC-кэша на Smartbuy Nitro 480GB (SBSSD-480GQ-MX902-25S3). Объем SLC-кэша на QLC накопителе составил всего 23 % от общего свободного объема SSD.
Большинство пользователей не столкнутся с заполнением SLC-кэша при работе с SSD накопителем и вот почему:
Как определить объем SLC-кэша?
SLC-кэш на разных тестах и при разных условиях может показывать разные значения. Все зависит от того, как в данный момент используется накопитель. Поэтому все тесты лучше проводить на абсолютно новом пустом SSD накопителе, при этом не используя его в качестве системного. При установке операционной системы на SSD, даже в покое происходят операции чтения и записи, а следовательно результат будет не совсем точный.
Подготовка SSD накопителя
Если накопитель уже используется как дополнительный, лучше его очистить или отформатировать. Дальше необходимо выполнить команду TRIM через оптимизацию накопителя средствами Windows. Для этого переходим в «Этот компьютер» («Мой компьютер»).
Правой кнопкой мыши нажимаем на наш SSD и выбираем Свойства.
Переходим во вкладку Сервис и нажимаем кнопку Оптимизировать.
После чего выбираем снова наш SSD накопитель и наживаем кнопку Оптимизировать.
После данной операции необходимо дать накопитель «отдохнуть» примерно 15 минут и не выполнять с ним никаких операций.
Первый способ
Для определения SLC-кэша нам понадобятся программы, которые могут непрерывно линейно записывать данные на накопитель. Это можно сделать утилитой AIDA64, в разделе Сервис → Тест диска.
Далее в новом окне AIDA64 Disk Benchmark, в первом выпадающем списке меню выбираем Тест линейной записи (Linear Write), а затем накопитель, который необходимо протестировать.
ВАЖНО! Сразу после начала этого теста все данные с накопителя будут удалены!
Второй способ
Не настолько точный, как тесты утилитами, но тоже наглядный и очень понятный. Для этого нам понадобится второй SSD-накопитель, назовем его «исходный». (исходный SSD накопитель может быть даже системным). Для максимальной точности скорость чтения Исходного SSD должна быть выше, чем скорость записи тестового SSD, на котором будем определять объем SLC-кэша. На исходном накопителе создаем папку с объемными видеофайлами. Даже если у вас есть один видеофайл, просто копируем его несколько раз. Объем папки будет зависеть от объема тестового SSD — папка должна быть кратна 100 ГБ, чтобы можно было легко увидеть объем SLC-кэша. Также объем папки должен быть больше, чем треть общего объема тестового SSD накопителя, чтобы на примере одного копирования мы смогли все увидеть. Не забываем подготовить SSD по инструкции выше. Давайте скопируем папку объемом 100 Гб на SSD накопитель ADATA Falcon 256GB (AFALCON-256G-C) и посмотрим на SLC-кэш.
По графику объем SLC-кэша составил примерно 85 Гб. А вот скорость до заполнения SLC-кэша и после составили 1,05 ГБ/сек и 123 МБ/сек соответственно.
Как сильно скорость SSD накопителя может падать после заполнения SLC-кэша?
Ответить на это вопрос однозначно для всех накопителей не получится. И тому есть несколько причин:
Вот пример недорого SATA SSD накопителя Patriot P210 128GB (P210S128G25)
Скорость после заполнения SLC-кэша падает до 71,5 МБ/сек. И это скорости прямой записи в TLC режиме.
Теперь давайте посмотрим, на что способны топовые NVMe SSD накопители на примере Samsung 970 EVO Plus 1TB (MZ-V7S1T0BW).
Даже после заполнения SLC-кэша скорости падают не значительно и остаются высокими до полного заполнения SSD-накопителя.
Если мы посмотрим на Smartbuy Nitro 240GB с QLC чипами памяти, то тут сразу видно еще более сильное снижение скорости до 22 МБ/сек. Даже не нужно ждать окончания теста — по графику все и так понятно.
Без SLC-кэширования не обходится ни один современный SSD-накопитель. Причем не важно, на каком типе памяти он построен — TLC или QLC. Благодаря SLC-кэшу мы имеет такие высокие скорости. И пусть на разных накопителях разный объем кэша, при обычном использовании мы никогда не увидим значительное снижение скорости, так как просто не сможем заполнить SLC-кэш. Конечно, если вы работаете с видеофайлами, особенно с разрешением 4К, и вам постоянно приходится перемещать их, например при видеомонтаже, то не стоит покупать дешевые SSD накопители. Лучше заранее посмотреть тесты и обзоры и выбрать оптимальный вариант. В большинстве же случаев SLC-кэш так и останется чем-то неизвестным.
Выбираем SSD: обзор вариантов на рынке и советы экспертов (2022)
Страница 3: Технологии памяти и не только
Конечно, SSD различаются не только типом подключения и форм-фактором. Внутри тоже имеются существенные отличия. Мы начнем с технологий флэш-памяти.
Как можно догадаться по названию, разные типы памяти позволяют записывать разное число бит в ячейку. Поэтому для хранения одного и того же объема данных требуется больше ячеек SLC, чем TLC или QLC. Что приводит к соответствующему увеличению цены.
Но производители продолжают оптимизировать контроллеры и чипы памяти, поэтому и расчетный срок службы накопителей увеличивается. Например, в случае WD Red SN700 NVMe SSD емкостью 4 Тбайт производитель указывает расчетную нагрузку записи TBW 5.100 Тбайт, что в 1.275 раз превышает емкость. На практике обычный пользователь ПК вряд ли достигнет подобного уровня, но производители SSD продолжают повышать уровень TBW.
3D-память
Производители флэш-памяти уже несколько лет развивают концепцию 3D NAND, которая позволяет увеличить надежность и производительность. В отличие от планарной флэш-памяти 2D, ячейки памяти формируют трехмерную структуру. А 2D-память осталась уделом бюджетных накопителей.
В случае 3D NAND слои памяти накладываются друг на друга как в «бутерброде». В результате 96 слоев памяти позволяют уместить в 96 раза больше данных, чем в случае TLC SSD на планарной 2D NAND.
Что такое SLC-кэш?
Ключевым компонентом high-end накопителей является система кэширования. И здесь следует различать два типа: кэш DRAM и кэш (псевдо) SLC. В случае кэша DRAM на SSD устанавливается соответствующий чип оперативной памяти помимо NAND, с которым работает контроллер накопителя. Как правило, емкость DRAM составляет один гигабайт на терабайт хранения данных, в этой памяти кэшируются таблицы привязки. Конечно, современная NAND становится все быстрее, задержки продолжают снижаться, но DRAM пока что лидирует по скорости. В результате контроллер получает таблицы из DRAM максимально быстро, чем в случае хранения их на NAND. Бюджетные SSD кэшем DRAM не оснащаются, что следует учитывать.
Современная флэш-память может работать с высокой пропускной способностью, в том числе и TLC NAND, но ее все равно недостаточно, чтобы достичь насыщения интерфейса PCIe. Поэтому SSD оснащаются так называемым кэшем SLC, емкость которого зависит от объема накопителя. Запись в SLC-кэш, как можно догадаться по названию, идет в режиме SLC, то есть по одному биту в каждую ячейку. Емкость при этом расходуется нерационально, зато производительность записи самая высокая. После заполнения доступной емкости SLC-кэша запись производится уже в стандартном режиме TLC/QLC, что снижает производительность. Кроме того, если емкость SSD почти полностью заполнена, то и места для SLC-кэша не остается.
Срок службы SSD: насколько важны TBW и MTBF?
Технология флэш-памяти сказывается на сроке службы SSD. И здесь довольно часто используется термин «TBW».
За ним скрывается общий объем записанных байт (Total bytes to be written). Если верить спецификациям, у WD Red SN700 NVMe SSD емкостью 4 Тбайт мы получаем значение TBW 5.200 Тбайт. Таким образом производитель гарантирует запись 5.200 Тбайт информации на накопитель на протяжении его жизненного цикла. Важно отметить, что речь идет о минимальном значении. То есть SSD не выйдет из строя после достижения данного порога, на практике он выдержит намного большую нагрузку. В нашем форуме читатели приводят различные сведения, которые доказывают надежность SSD выше заявленного производителем результата.
Для профессиональных SSD, таких как WD Red SN700 NVMe SSD, подобный показатель воспринимается само собой разумеющимся, но и потребительские SSD сегодня радуют высокой надежностью. Возьмем для примера сравнительно недорогой WD Blue SN570 NVMe SSD емкостью 1 Тбайт и спецификацией TBW 600 Тбайт. Если вы переносите на SSD каждый день 20 Гбайт информации, то накопителя гарантированно хватит на 80 лет. Если же объем записываемой информации увеличить до 400 Гбайт, то срок службы составит 5 лет. Так что даже для энтузиастов значение TBW не составит проблем. Конечно, все несколько иначе выглядит в серверных сценариях, поскольку здесь профили использования могут отличаться. Но и для подобных сценариев есть оптимизированные решения на основе SSD.
Кроме TBW производители часто указывают надежность SSD в MTBF. Здесь речь идет о часах, которые накопитель может проработать до вероятного выхода из строя (по результатам тестов производителя).