Два года назад компания IBM представила память FlashCore, модуль памяти NVMe SSD для корпоративных СХД IBM FlashSystem. В этом году IBM выпустила FlashCore Module 2, а несколько дней назад этот модуль был подробно представлен на конференции Flash Memory Summit 2020.

Как и предыдущая модель, FCM2 является топовым накопителем SSD корпоративного класса, в котором был применен ряд необычных конструктивных решений.

СХД FlashSystem FMC2

СХД FlashSystem FMC2

В первой модели необычным было то, что в нем не использовались ни суперконденсаторы, ни резервная батарея для защиты от потери питания. Вместо этого была использована магниторезистивная память MRAM (magnetoresistive RAM) компании Everspin в качестве независимого кэша записи. В FCM2 также используются модули MRAM ST-DDR4 емкостью 1 Гбит, которые являются усовершенствованием модуля ST-DDR3 256 Мбит компании Everspin.

Характеристики FMC2

Емкость накопителей

  • 4.8 ТБ
  • 9.6 ТБ
  • 19.2 ТБ
  • 38.4 ТБ

Максимальная емкость СХД

  • 757 ТБ используемой емкости
  • 1.33 ПБ эффективной емкости с компрессией FCM

Улучшения в FMC2 по сравнению с FMC1

  • Пропускная способность чтения увеличена от 22 до 44 %
  • Пропускная способность записи увеличена на 33 %
  • Задержка чтения сокращена на 40 %
  • Задержка чтения сокращена на 30 %
  • Производительность IOPs увеличена на 10-20 %
Выносливость накопителей FMC2 после усовершенствований IBM

Выносливость накопителей FMC2 после усовершенствований IBM

Память MRAM, обладающая высокой плотностью, дает возможность повышать емкость RAM до нужных размеров, однако, она пока все еще слишком дорогая, чтобы полностью заменить DRAM на SSD в системах хранения. Управление FCM2 емкостью несколько терабайт потребует несколько гигабайт RAM. Использование MRAM в качестве буфера записи вместо DRAM вызвано тем, что суперконденсаторы или дополнительные батареи имеют срок службы не более нескольких лет. После того как отказывает система резервирования электропитания в памяти, это может быть чревато большими проблемами. Поэтому IBM посчитало, что MRAM может обеспечить более длительную надежность для системы резервирования электропитания, и она стоит того, чтобы построить на ее базе накопитель с тремя типами памяти в одном.

В FCM1 была использована 64-слойная микросхема 3D TLC NAND. Эта память в то время обычно применялась для корпоративных SSD высокого класса. В FCM2 решили перейти на 96-слойную 3D QLC NAND от компании Micron. Большая плотность и меньшая стоимость одного бита позволила разработчикам памяти увеличить максимальную емкость всего накопителя почти вдвое, до 38.4 Tбайт. Однако поддержание производительности при использовании относительно медленнодействующей (для RAM) SSD представляет собой нелегкую задачу. Новая NAND имеет лишь в три раза большую задержку на запись и в 2-3 раза большую на чтение, чем RAM. Сохранность данных при записи в 3D TLC NAND также ниже. Но FCM2 выдерживает до двух полных перезаписей объема накопителя в день DWPD (Drive Writes Per Day) и поэтому IBM заявляет о том, что им удалось повысить производительность при помощи ряда ухищрений.

В модулях IBM FlashCore использован специализированный контроллер на программируемой матрице FPGA. Его 20-канальный интерфейс NAND дает немного необычные значения емкости по сравнению с обычными 8 или 16-канальными контроллерами SSD. IBM применяет для FlashCore компрессию со скоростью линии на основе технологии аппаратной компрессии, используемой в мейнфреймах IBM Z. Она обеспечивает степень компрессии 2.3 раза при использовании типичных наборов данных. Это позволяет в значительной степени снизить проблемы выносливости SSD с технологией QLC (в FCM1 компрессия также имеется, поэтому для FCM2 здесь нет большого прорыва). FCM2 также может использовать некоторые многослойные структуры QLC NAND как однослойные SLC.

Это не такая простая операция, как может показаться, зная, что кэш записи SLC имеется практически на всех SSD потребительского класса. Вместо этого FCM2 отслеживает режимы и наборы операций ввода-вывода, чтобы предсказывать, какие блоки (chunks) данных будут чаще извлекаться в качестве «горячих» данных и старается записывать их на SLC вместо QLC, в то время как «холодные», относительно редко используемые данные, посылаются на QLC. В корпоративных SSD обычно не используют кэширование SLC вследствие того, что сложно обеспечить хорошее качество обслуживания (QoS) при продолжительных интенсивных нагрузках. Обычно в реальных рабочих накопителях периоды всплесков активности операций чередуются с интервалами относительного бездействия, которые могут быть использованы для сброса содержимого кэша.

В IBM считают, что их интеллектуальное размещение данных может исключить большинство серьезных проблем с QoS и накопители FCM2 могут успешно использовать информацию относительно того, сколько данные «проживут», от приложений, работающих на сервере.