Что такое кэширование SLC?

Современные твердотельные накопители предлагают гораздо лучшее соотношение ГБ к доллару, чем несколько лет назад. Когда твердотельные накопители впервые появились на рынке, их емкость обычно составляла 64 ГБ или 128 ГБ. Они также были дороже, чем многотерабайтные жесткие диски. В течение многих лет предполагалось, что если вы хотите много хранилища и не хотели платить высокие цены, вам нужен был жесткий диск, и вы должны были согласиться на более низкую производительность.

Однако сейчас все немного по-другому. Да, твердотельные накопители по-прежнему дороже за гигабайт, чем жесткие диски, но цены намного ближе. SSD емкостью 2 ТБ в настоящее время является лучшим ценовым предложением для твердотельных накопителей. SSD на 2 ТБ примерно в два раза дороже HDD на 2 ТБ. Теперь за эту дополнительную плату вы можете получить еще более значительное преимущество в производительности.

Это по-прежнему верно, если вам нужно много терабайт памяти. Например, дешевле приобрести жесткие диски, если вам нужен большой RAID-массив. Но предположим, что вы имеете дело только с повседневными компьютерными уровнями домашнего пользователя. В этом случае твердотельного накопителя на один или два терабайта более чем достаточно, и он не сломит банк.

Как цена упала?

Так что же изменилось? Что привело к снижению цены до разумного уровня? Во-первых, технологии просто созрели. Со временем делать такие вещи становится дешевле. Однако некоторые технологические прорывы и инновации действительно изменили правила игры. 3D VNAND позволила значительно увеличить плотность хранения, позволяя размещать ячейки памяти друг над другом, а не сжимать их все ближе и ближе друг к другу в одной плоскости. Это похоже на то, как многоэтажные автостоянки позволяют парковать больше автомобилей на той же площади, что и плоская парковка.

Современные твердотельные накопители теперь обычно используют флэш-память TLC. TLC расшифровывается как Triple-Level Cell, что означает, что каждая ячейка памяти может хранить три бита данных. Это в три раза увеличивает емкость хранения данных при том же количестве ячеек памяти по сравнению с однослойной ячейкой (SLC) в более ранних твердотельных накопителях.

Эти три изменения объясняют большую часть повышения цен на твердотельные накопители. Однако было и много других разработок. Дело в том, что TLC идет с некоторыми довольно большими оговорками.

В чем проблема с TLC?

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

Хотя вы все еще можете считывать данные с TLC со скоростью 16 ГБ на новейших твердотельных накопителях PCIe 5, вы определенно не сможете записывать на них так быстро. Фактически, скорость записи TLC обычно составляет около 2000 МБ. Это все еще намного быстрее, чем жесткий диск, но медленнее, чем твердотельные накопители PCIe 3.

Примечание: TLC — не единственный используемый тип флэш-памяти. Существует относительно небольшое количество твердотельных накопителей с четырехуровневыми ячейками (QLC), и разработка твердотельных накопителей с пятиуровневыми ячейками (PLC) продолжается для 4 и 5 бит данных на ячейку соответственно. Скорость записи памяти QLC в настоящее время составляет около 350 МБ, что медленнее, чем у жестких дисков.

Введите кэш SLC

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

Кэш SLC обычно состоит из двух отдельных частей: статического кэша SLC и динамического кэша псевдо-SLC. Статический кеш, как правило, крошечный, менее 10 ГБ даже на больших дисках емкостью 2 ТБ. Статический кеш доступен всегда, даже когда диск почти заполнен. Динамический кэш различается по размеру, как следует из названия, в зависимости от оставшегося места на диске.

Большие твердотельные накопители имеют большие кэши псевдо-SLC и могут выполнять запись большего объема на пиковых скоростях. Важно отметить, что размер динамического кэша зависит от оставшегося свободного места, а не от общей емкости диска. Размер динамического кэша уменьшается по мере заполнения диска. Многие твердотельные накопители выделяют около трети своего свободного пространства для использования в качестве динамического кэша SLC. Это может быть около 600 ГБ на диске емкостью 2 ТБ.

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

Возможное будущее

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

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

Хотя скорости TLC были относительно высокими, в этом не было необходимости. По мере того, как твердотельные накопители QLC и PLC становятся все более распространенными, они будут иметь дальнейшее снижение скорости записи. Вторичное кэширование MLC может быть способом, которым технология разрабатывается, чтобы облегчить это.

Вывод

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

Объем кэша SLC зависит от оставшегося свободного места на диске. Это означает, что большие и пустые диски могут записывать больше данных на пиковых скоростях, чем меньшие SSD или SSD с меньшей емкостью. Что вы думаете? Дайте нам знать в комментариях ниже.