Что такое кэш SLC? Как он повышает производительность SSD?

Кэш SLC (Single-Level Cell Cache) также широко известен как псевдо-SLC-кэш или имитированный SLC-кэш. Это не отдельный аппаратный кэш-чип на печатной плате SSD. На самом деле это программная оптимизация, реализуемая прошивкой контроллера. Проще говоря, часть пространства для хранения данных в накопителях высокой плотности Флэш-память NAND такие как TLC и QLC, временно переключаются в режим хранения «один бит на ячейку», чтобы имитировать способность к высокоскоростной записи, присущую флэш-памяти SLC.

Что такое SLC-кэш? Заголовок статьи, изображение Что такое SLC-кэш? Как он повышает производительность SSD

Эта технология была разработана в ответ на необходимость поиска компромисса между емкостью и производительностью в отрасли флэш-памяти. По мере увеличения количества битов, хранящихся в каждой ячейке, стоимость на единицу емкости продолжает снижаться, однако при этом снижаются и собственная скорость записи, и ресурс памяти. Благодаря “временному имитированию” SLC кэш SLC позволяет флэш-памяти высокой плотности обеспечивать пиковую производительность, близкую к показателям высокопроизводительной SLC-флэш-памяти, без дополнительных затрат на аппаратное обеспечение. Таким образом, он стал ключевым решением для обеспечения баланса между стоимостью и пользовательским опытом. В настоящее время кэш SLC стал стандартной функцией во всей отрасли — от SSD начального уровня на базе QLC до высокопроизводительных корпоративных продуктов.

Как работает кэш SLC

Чтобы понять, как работает кэш SLC, сначала необходимо разобраться в основных характеристиках флэш-памяти NAND. Производительность флэш-памяти NAND напрямую зависит от количества битов данных, хранящихся в каждой ячейке памяти: чем меньше у ячейки состояний заряда, тем проще процесс записи и тем выше скорость.

  • В флэш-памяти типа Native SLC в каждой ячейке хранится 1 бит данных, и она имеет только два состояния заряда. Её схема записи является самой простой, поэтому она обеспечивает наибольшую скорость и самый длительный срок службы, однако у неё самая низкая плотность записи и самая высокая цена.
  • Флеш-память типа TLC хранит 3 бита данных в каждой ячейке и имеет 8 состояний заряда. Её плотность записи в три раза превышает плотность записи SLC, однако скорость записи и срок службы у неё значительно ниже.
  • Флэш-память QLC хранит 4 бита данных в каждой ячейке и имеет 16 состояний заряда. Она обеспечивает ещё более высокую плотность записи, однако её собственная производительность записи при этом ещё ниже.

Основную логику работы кэша SLC можно сформулировать следующим образом: “сначала принимать данные на высокой скорости, а затем перемещать их на более низкой скорости”. Весь процесс автоматически управляется Контроллер SSD, поэтому пользователи этого не замечают. Когда хост-устройство отправляет запрос на запись на SSD, данные сначала записываются в область кэша, настроенную на работу в режиме SLC. Поскольку задержка записи в однобитовом режиме чрезвычайно мала, этот этап проходит очень быстро, благодаря чему пользователи наблюдают заявленную высокую скорость записи. Когда SSD находится в режиме простоя или когда оставшееся пространство в SLC-кэше достигает заданного порогового значения, контроллер в фоновом режиме переносит данные из кэша в обычный формат TLC или QLC и перемещает их в основную область хранения. Это освобождает место в кэше для последующих операций записи. От этого выигрывают и операции чтения: если запрашиваемые данные всё ещё временно хранятся в SLC-кеше, их можно прочитать с более высокой скоростью.

Баннер статьи MD600 1500x600 1 Что такое кэш SLC? Как он повышает производительность SSD

Три типа реализации кэша SLC

Статический кэш SLC

Статический кэш SLC — это самый ранний способ реализации. В процессе производства встроенное ПО навсегда резервирует фиксированную часть пространства флэш-памяти в качестве кэша SLC. Его объём не изменяется в зависимости от объёма свободного места на накопителе. Преимуществом данного подхода является стабильная и предсказуемая производительность, а алгоритм управления — простой и надежный. Поэтому он широко используется в таких областях, как промышленное управление и встроенные устройства, где стабильность имеет первостепенное значение. Однако у него есть и очевидные недостатки. Фиксированный раздел постоянно занимает место в системе хранения и, как правило, имеет относительно небольшой размер — обычно от нескольких ГБ до нескольких десятков ГБ. Поэтому при длительной записи больших файлов она может быстро исчерпаться. Кроме того, поскольку фиксированная область подвергается частым операциям записи в течение длительного периода времени, она может изнашиваться быстрее, чем другие области.

Динамический кэш SLC

Динамический кэш SLC является основным решением для современных SSD-накопителей потребительского класса. В этом случае заранее не выделяется фиксированный раздел. Вместо этого размер кэша динамически регулируется в зависимости от объёма свободного места на накопителе. Когда накопитель пуст, размер кэша может быть максимальным. По мере заполнения накопителя размер кэша постепенно уменьшается.

Главным преимуществом динамического кэша является высокая эффективность использования пространства. SSD большой емкости может иметь сотни ГБ кэш-пространства в пустом состоянии, что обеспечивает превосходную производительность при пиковых нагрузках записи. Однако стабильность производительности при этом снижается. Когда свободное пространство становится ограниченным, объём кэша может резко сократиться, а производительность записи — значительно колебаться. Такой подход предъявляет более высокие требования к алгоритмам контроллера и качеству флэш-памяти. Неэффективное планирование может легко привести к частым операциям освобождения кэша и колебаниям производительности.

Гибридный кэш SLC

Гибридный SLC-кеш сочетает в себе преимущества первых двух подходов и является основным выбором для SSD среднего и высокого класса. Он сохраняет небольшой фиксированный участок SLC в качестве базовой гарантии производительности, обеспечивая доступность части кэша даже при полном заполнении накопителя. В то же время, при наличии достаточного свободного места кэш динамически расширяется для обеспечения дополнительной емкости, что позволяет сбалансировать пиковую производительность и стабильность работы.

Некоторые из новейших SSD-накопителей с технологией QLC прошли дальнейшую эволюцию за счет добавления промежуточного слоя с технологией TLC. Данные сначала записываются в режиме SLC. Когда пространство SLC исчерпывается, запись переключается в режим TLC, а в периоды простоя данные окончательно перемещаются в основную зону хранения QLC. Такая многоуровневая архитектура кэша ещё больше сглаживает разрыв в производительности и делает повседневное использование продуктов на базе QLC более близким к продуктам на базе TLC.

Основная ценность кэша SLC

Кэш SLC стал стандартной отраслевой функцией, поскольку он улучшает реальные характеристики SSD по нескольким параметрам, практически не увеличивая при этом затрат на аппаратное обеспечение.

Значительно повышает производительность при пакетной записи

В повседневном использовании большинство операций записи представляют собой небольшие и кратковременные всплески активности, такие как запуск системы, загрузка программного обеспечения, сохранение документов и копирование небольших файлов. В таких сценариях объем данных, как правило, не превышает емкости кэша SLC, поэтому пользователи на протяжении всей операции получают высокую скорость записи, близкую к скорости нативных SLC-накопителей. Можно сказать, что кэш SLC является ключевой причиной, по которой SSD-накопители TLC и QLC могут обеспечивать высокое качество работы.

Снижает задержку записи и повышает оперативность

Задержка при программировании в режиме SLC значительно ниже, чем в режимах TLC и QLC, что особенно заметно при произвольной записи. Большое количество операций произвольной записи блоков размером 4 КБ, возникающих в ходе повседневной работы системы, обрабатывается через кэш SLC, что значительно повышает скорость отклика. Это напрямую приводит к более плавной работе системы, более быстрому запуску программного обеспечения и более оперативным файловым операциям. Данная оптимизация приобретает еще большее значение для SSD начального уровня, не оснащенных выделенным кэшем DRAM.

Косвенно продлевает срок службы флэш-памяти

Ячейки флэш-памяти в режиме SLC обладают гораздо большей стойкостью к программированию и стиранию, чем ячейки в режимах TLC и QLC. Частые записи небольших объемов данных сначала могут агрегироваться в кэше SLC, а затем записываться в основную область хранения более крупными группами, что сокращает количество прямых операций записи/стирания в областях TLC или QLC и снижает общий износ. Хотя перенос данных в фоновом режиме вызывает некоторое усиление записи, общий эффект для срока службы по-прежнему остается положительным.

Поддерживает новые сценарии, такие как ПК с искусственным интеллектом

По мере распространения ПК с ИИ твердотельные накопители (SSD) перестают быть просто устройствами хранения данных и начинают выполнять роль “квазипамяти”, что требует частого обмена данными с оперативной памятью для параметров моделей. Высокая скорость чтения и записи кэша SLC может значительно сократить время загрузки крупных языковых моделей. Согласно данным тестирования компании Micron, размещение модели искусственного интеллекта в области SLC для загрузки может сократить время загрузки модели примерно на 30%–44%. Это также стимулирует производителей продолжать оптимизацию алгоритмов планирования работы SLC-кеша.

Ограничения кэша SLC

Кэш SLC не является универсальным решением. Его наиболее известной особенностью является резкое падение производительности после исчерпания кэша, которое обычно называют “падением скорости». Когда непрерывная запись больших файлов превышает общий объём кэша SLC, SSD больше не может принимать новые данные в режиме SLC. В этом случае скорость записи сразу падает до уровня, характерного для TLC или QLC. У SSD с TLC скорость обычно снижается с нескольких тысяч MB/с до нескольких сотен MB/с, хотя точные цифры сильно варьируются в зависимости от конструкции контроллера и микросхем флэш-памяти. У SSD-накопителей с QLC-памятью падение скорости может быть ещё более значительным, а скорость записи за пределами кэша у некоторых моделей низкого ценового сегмента может оказаться даже ниже, чем у традиционных жёстких дисков. Такое резкое падение производительности также называют “производительным обрывом” (performance cliff).”

Этот эффект наиболее заметен на SSD-накопителях, использующих динамический кэш, когда свободное место ограничено. Как только заполненность накопителя превышает 80%, доступное пространство динамического кэша может резко сократиться. В этот момент даже запись файла среднего размера может исчерпать объём кэша и привести к падению скорости. Это одна из важных причин, по которой многие пользователи считают, что SSD-накопитель работает медленнее по мере увеличения нагрузки.

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

Кэш SLC против нативной флэш-памяти SLC

Многие пользователи путают кэш SLC с собственной флэш-памятью SLC, однако эти технологии принципиально различаются и имеют огромные различия по стоимости и производительности.

На физическом уровне, Кэш SLC использует обычные флэш-чипы типа TLC или QLC и лишь временно изменяет их режим работы с помощью прошивки. Напротив, встроенная флэш-память SLC физически рассчитана на поддержку только одного бита на ячейку и представляет собой специализированную высокопроизводительную флэш-память.

Особенно заметны различия в стоимости и мощности. Кэш-память SLC не влечет за собой дополнительных затрат на аппаратное обеспечение и не требует дополнительного места на печатной плате. Стоимость нативной флэш-памяти SLC в расчете на единицу емкости в несколько раз превышает стоимость памяти TLC, что делает её чрезвычайно дорогой при одинаковой емкости.

Самым важным отличием является стабильная производительность. Кэш SLC обеспечивает высокую скорость работы только в пределах объёма кэша; как только кэш заполняется, падение скорости становится неизбежным. Нативная флэш-память SLC способна поддерживать высокую скорость записи на протяжении всего срока эксплуатации и не демонстрирует резкого падения производительности. Что касается ресурса, то имитированный режим SLC более долговечен, чем нативная TLC, но всё же уступает по долговечности физической флэш-памяти SLC.

Сегодня флэш-память SLC в основном используется в системах промышленного управления, военных приложениях и корпоративных средах с высокой нагрузкой, где предъявляются чрезвычайно высокие требования к надежности и ресурсу записи. Технология кэширования SLC, напротив, представляет собой общее решение для оптимизации устройств потребительского сегмента и массового рынка твердотельные накопители для предприятий.

Технологические тенденции

По мере того как флэш-память становится всё более плотной, технология SLC-кэша также продолжает развиваться. На сегодняшний день основными направлениями развития являются интеллектуальное планирование и многоуровневые архитектуры кэша.

Что касается алгоритмов планирования, в центре внимания исследователей находится динамическое управление кэшем SLC на основе обучения с подкреплением. Отслеживая в режиме реального времени характер нагрузки ввода-вывода и внутреннее состояние SSD, алгоритмы могут автоматически регулировать объём кэша и пороговые значения для разделения «горячих» и «холодных» данных, обеспечивая более высокую производительность при различных нагрузках. По сравнению с традиционными методами планирования, использующими фиксированные параметры, интеллектуальные алгоритмы позволяют более эффективно справляться со сложными и изменяющимися реальными сценариями использования.

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

Кэш SLC — это оптимальный баланс между стоимостью и производительностью, найденный в отрасли флэш-памяти. Благодаря исключительно программному подходу он позволяет флэш-памяти высокой плотности обеспечивать превосходный пользовательский опыт в повседневной эксплуатации, что делает его весьма типичной стратегией оптимизации в развитии технологии SSD. Обычным пользователям нет необходимости стремиться к чрезмерно большому объему кэша SLC. Достаточно выбрать вариант с учётом типичных размеров файлов и особенностей использования в рамках вашей рабочей нагрузки.

滚动至顶部

Свяжитесь с нами

Заполните форму ниже, и мы свяжемся с вами в ближайшее время.

Продукт контактной формы