Тестирование NVMe SSD Kioxia CD6 и CM6

Заказ звонка

*
*
Защита от автоматических сообщений
CAPTCHA
Введите слово на картинке*

Тестирование NVMe SSD Kioxia CD6 и CM6

18.03.21

Полтора года назад мы тестировали NVMe-накопители Toshiba CD5 и CM5-R. За прошедшее время изменилась не только продуктовая линейка компании, но и сама компания сменила название — в октябре 2019 года Toshiba Memory Corporation теперь называется Kioxia Corporation.

Серверные твердотельные накопители Kioxia

Kioxia делит свои серверные SSD на корпоративные (Enterprise) и SSD для дата-центров (Data Center SSD). Каких либо принципиальных различий между этими линейками нет, везде есть защита от сбоев по питанию (PLP) и модели с ресурсом на 1 и 3 DWPD. В линейке Enterprise присутствуют более производительные накопители, и есть хорошо себя зарекомендовавшие PM5 с интерфейсом SAS и большим ресурсом до 10 DWPD. Рассмотрим продуктовый ряд подробнее:

Enterprise SSD

  • CM6-R и CM6-V. Наиболее высокопроизводительные накопители в линейке на основе 96-слойной NAND-памяти BiCS FLASH 3D TLC: NVMe, поддержка двухпортового подключения (два линка ×2). объём до 30,72 ГБ, ресурс 1 и 3 DWPD (CM6-R и CM6-V, соответственно). Появилась поддержка спецификации NVMe 1.4 и интерфейса PCIe 4.0.
  • CM5-R, CM5-R card, CM5-V и CM5-V card. Предыдущая, но всё ещё актуальная линейка на основе 64-слойной BiCS FLASH. PCIe 3, те же 1 и 3 DWPD, объём до 15,36 ТБ. Выпускаются в форм-факторах U.2 и низкопрофильной платы расширения.
  • PM6. Новая серия накопителей с интерфейсом SAS4 (24 Гбит) с 96-слойной памятью, которая скоро поступит в производство. В дополнение к моделям на 1 и 3 DWPD в серии PM6 будут модели с увеличенной резервной областью и ресурсом 10 DWPD. Интерфейс SAS вытесняется из небольших серверов, но ещё долгое время будет оставаться актуальным в серверах с большим количеством отсеков для размещения HDD и специализированных системах хранения. SAS SSD необходимы для обеспечения совместимости с такими СХД.
  • PM5-R, PM5-V и
  • PM5-M. Текущая линейка накопителей с интерфейсом SAS3. Объём до 15,36 ТБ, ресурс 1, 3 и 10 DWPD.S
Характеристики всех накопителей линейки Enterprise собраны в отдельный документ.

Data Center SSD

  • CD6-R, CD6-V. Накопители с теми же инновациями, что и в серии CM6: PCIe 4.0, NVMe 1.4, новый быстрый контроллер и 96-слойная память. В сравнении с CM6 отсутствует поддержка двухпортового режима и заявлена меньшая производительность (приблизительно на треть).
  • XD5 M.2 и XD5 U.2. Накопители, ориентированные на нагрузку с преимущественным чтением. Производительность в сравнении со старшими моделями невысока, но это продиктовано необходимостью уложиться в ограничения форм-фактора по габаритам и тепловыделению. Модели U.2 фактически представляют собой M.2 в 2,5" корпусе.
  • HK6-R и HK6-V. Серии накопителей с интерфейсом SATA, ресурсом 1 и 3 DWPD, объёмом до 7,68 ТБ. Предыдущие поколения SATA SSD от Toshiba, несмотря на невысокую стоимость, неизменно демонстрировали высокую стабильность производительности, полное отсутствие проблем с совместимостью и высокий уровень надёжности.
Характеристики всех накопителей линейки Data Center собраны в отдельный документ.

Kioxia CM6-V и CD6-V

В нашем распоряжении оказались накопители Kioxia KCM61VUL1T60, KCM61VUL3T20 и KCD61VUL3T20, это CM6-V 1,6, 3,2 ТБ и CD6-V объёмом 3,2 ТБ. Сравнивать их производительность напрямую будет корректно только для пары накопителей одного объёма, но для некоторых тестов мы использовали CM6-V 1,6 ТБ. Для начала стоит рассказать о нововведениях:

U.3

Новые накопители внешне ничем не отличаются от предыдущих моделей NVMe-накопителей форм-фактора 2,5": металлический корпус толщиной 15 мм и похожий на SAS разъём. Только на этот раз это не U.2, а U.3. Необходимость внедрения U.3 связана с проблемой совместимости накопителей с интерфейсами SATA, SAS и PCIe с бэкплейнами и кабелями. U.2 эту проблему вроде бы решал — разъёмы были физически идентичными, существуют бэкплейны с универсальными разъёмами, позволяющими подключить накопитель NVMe или SATA/SAS. Тем не менее, полной прозрачной совместимости не было: для подключения NVMe-накопителей к такому бэкплейну нужны специальные дополнительные кабели, подключаемые в отдельные разъёмы на бэкплейне, а с другой стороны — к разным контроллерам.

Первым шагом на пути улучшения универсальной совместимости стало появление трёхрежимных (Tri-mode) контроллеров Broadcom серии 9400 с поддержкой SATA, SAS и NVMe. При это всё ещё сохранялась проблема кабелей. Например, из-за отсутствия единого стандарта на кабели с разъёмами SFF-8643 для подключения NVMe с упомянутыми контроллерами необходимо использовать только кабели производства Broadcom. Линейка HBA и RAID-контроллеров 9500 уже поддерживает U.3.

В стандарте U.3 были переназначены группы контактов для двух линков PCIe — теперь они совмещены с SAS. При этом новый стандарт SFF-TA-1001 предполагает обратную совместимость, то есть способность накопителей U.3 работать в разъёмах U.2. В случае с накопителями Kioxia это действительно так, но лишь частично (подробности будут ниже). Стандарт UBM (Universal Backplane Manager) предусматривает размещение на бэкплейне специального контроллера, который будет конфигурировать режим работы отдельных линий в зависимости от подключённых накопителей. Предусмотрена и конвергенция решений с экспандерами: на бэкплейне размещаются одновременно SAS-экспандер и PCIe-свитч.

PCIe 4.0

Пропускная способность 4 линий PCIe 3 из-за различных накладных расходов и в зависимости от нагрузки составляет около 3200–3400 МиБ/с. Накопители предыдущего поколения позволяли позволяли получить как раз около 3000 МиБ/с на последовательном доступе, то есть необходимость перехода на более производительный интерфейс была видна ещё 2–3 года назад.

Kioxia заявляет для CM6-V скорость последовательного чтения блоками 128 КиБ в 6900 МБ/с. Обратите внимание, что это именно десятичные мегабайты, о чём производитель упоминает в сноске. При пересчёте в двоичные получается 6,43 ГиБ/с. Это уже сильно превышает возможности четырёх линий PCIe 3. Если в форм-факторе плат расширения мы можем сделать и 8 (пример — Samsung PM1725b), и 16 линий, то в 2,5" больше 4 линий разместить нельзя.

NVMe 1.4

Полный список нововведений в данной спецификации можно найти на официальном сайте рабочей группы NVM Express. Перечислим некоторые из них:

  • IO Determinism. Позволяет хосту согласовать с накопителем обработку запросов и фоновую сборку мусора, чтобы получить гарантированную задержку не выше определённого предела.
  • Asymmetric Namespace Access. Ассиметричный доступ к неймспейсам. Имеет значение при доступе нескольких хостов или контроллеров к одному неймспейсу. Проще говоря, ANA отвечает за тот же функционал, что и ALUA в системах хранения данных на основе протоколов, инкапсулирующих SCSI.
  • Namespace Write Protect. Возможность защитить определённый неймспейс от записи.
  • Rebuild Assist. Позволяет ускорить восстановление массивов за счёт того, что накопитель может передать хосту данные об адресах невосстановимых блоков.
  • IO Performance and Endurance Hints. Позволяет накопителю сообщить об оптимальных размерах блоков записи и удаления, а так же о необходимых смещениях. Ситуация с твердотельными накопителями похожа на ту, что возникает на жестких дисках с Advanced Format — накопитель презентуется хосту как блочное устройство с определённым размером сектора, который не совпадает с размером блока на физическом уровне.

Характеристики Kioxia CM6-V 3,2 ТБ (KCM61VUL3T20)

  • Объём: 3200 ГБ
  • Форм-фактор: U.2 15 мм
  • Интерфейс: PCI-E 4 ×4, NVMe 1.4
  • Заявленная производительность
    • Последовательный доступ (максимум): чтение — 6900 МБ/с, запись — 4200 МБ/с
    • Случайный доступ (блок 4 КиБ): чтение — 1 300 000 IOPS, запись — 350 000 IOPS
  • Эмулируемый размер сектора: 512 (по умолчанию), 4096 байт
  • Ресурс: 3 DWPD на 5 лет
  • Гарантийный срок: 5 лет

Официальная спецификация.

Характеристики Kioxia CM6-V 1,6 ТБ (KCM61VUL1T60)

  • Объём: 1600 ГБ
  • Форм-фактор: U.2 15 мм
  • Интерфейс: PCI-E 4 ×4, NVMe 1.4
  • Заявленная производительность
    • Последовательный доступ (максимум): чтение — 6900 МБ/с, запись — 2800 МБ/с
    • Случайный доступ (блок 4 КиБ): чтение — 1 300 000 IOPS, запись — 215 000 IOPS
  • Эмулируемый размер сектора: 512 (по умолчанию), 4096 байт
  • Ресурс: 3 DWPD на 5 лет
  • Гарантийный срок: 5 лет

Официальная спецификация.

Характеристики Kioxia CD6-V 3,2 ТБ (KCD61VUL3T20)

  • Объём: 3200 ГБ
  • Форм-фактор: U.2 15 мм
  • Интерфейс: PCI-E 4 ×4, NVMe 1.4
  • Заявленная производительность
    • Последовательный доступ (максимум): чтение — 6200 МБ/с, запись — 2350 МБ/с
    • Случайный доступ (блок 4 КиБ): чтение — 1 000 000 IOPS, запись — 160 000 IOPS
  • Эмулируемый размер сектора: 512 (по умолчанию), 4096 байт
  • Ресурс: 3 DWPD на 5 лет
  • Гарантийный срок: 5 лет

Официальная спецификация.

Мы разобрали один из накопителей, CM6-V. Внутри можно увидеть электролитические конденсаторы, необходимые для работы системы защиты от аварийного отключения питания, чипы NAND и DRAM, через термоинтерфейс передающие тепло на тонкую верхнюю крышку корпуса:

На нижней стороне платы помимо всё тех же DRAM и NAND находится контроллер. Для охлаждения используется массивная нижняя крышка из алюминиевого сплава:

Тестирование

Условия тестирования

Конфигурация тестового стенда:
  • Процессор AMD EPYC 7252 (8 ядер, 3,2 ГГц)
  • 32 ГБ памяти
  • Системная плата Supermicro H12SSL-C (1x Socket SP3)
  • Arch Linux
  • Для генерации нагрузки применялся FIO версии 3.25
Накопители подключались через переходник SFF8639—PCIe SmartBuy PE-132.
. Перед тестированием на обоих накопителях были обновлены прошивки до версии 0105.

Использованы модифицированные тесты из SNIA Solid State Storage Performance Test Specification v2.0.2. Данная спецификация описывает алгоритмы различных тестов и формат отчетов для серверных и «настольных» твердотельных накопителей. Ниже приведены параметры тестов и отличия от SNIA PTS:

  • IOPS Test. Измеряется количество IOPS (операций ввода-вывода в секунду) для блоков различного размера (1024 КиБ, 128 КиБ, 64 КиБ, 32 КиБ, 16 КиБ, 8 КиБ, 4 КиБ, 0,5 КиБ) и случайного доступа с различным соотношением чтение/запись (100/0, 95/5, 65/35, 50/50, 35/65, 5/95, 0/100). Параметры: 16 потока с глубиной очереди 32 (для накопителей SATA и SAS мы используем 16 потоков с QD 8). Отличие от спецификации — из теста был исключён блок 0,5 КиБ (512 байт).
  • Throughput Test. Тестируется пропускная способность при последовательном доступе: чтение и запись блоками 1 МиБ и 128 КиБ.
  • Latency Test. Измеряется значение средней и максимальной задержки для различных размеров блока (8 КиБ, 4 КиБ, 0,5 КиБ) и соотношений чтение/запись (100/0, 65/35, 0/100) при минимальной глубине очереди (1 поток с QD=1). Введён дополнительный тест, показывающий зависимость величины задержки от IOPS при наращивании нагрузки:
    • исключён блок 0,5 КиБ
    • вместо однопоточной нагрузки с очередями 1 и 32 нагрузка варьируется по количеству потоков (1—16) и глубине очереди (1—32).
    • вместо соотношения 65/35 используется 70/30
    • для выбранного значения количества потоков строятся графики зависимости задержки (99%, 99,9% и среднего значения) от IOPS для всех блоков и соотношений чтение/запись
  • Write Saturation Test. Тестируется изменение производительности (IOPS и задержка) при непрерывной нагрузке (600 раундов по 1 минуте) на случайную запись блоками 4 КиБ. Цель — добиться перехода SSD в режим насыщения, при котором контроллеру приходится непрерывно заниматься сборкой мусора для подготовки пригодных для записи блоков NAND.
  • Host Idle Recovery. Тестируется эффективность работы алгоритмов сборки мусора. После перехода в режим насыщения: непрерывная нагрузка на случайную запись чередуется с облегчённой нагрузкой (5 секунд + паузы 5, 10, 15, 25, 50 секунд). Отличие от спецификации — вместо рекомендованной спецификацией предварительной нагрузки длительностью менее 30 раундов (минут) используется 600 раундов (минут) для обеспечения гарантированного перехода SSD в режим насыщения.

Для первых трех тестов проводится серия замеров из 25 раундов длительностью 1 минута каждый. Перед тестом производится зануление (в данном случае — secure erase при помощи утилиты hdparm), затем — предварительная нагрузка: последовательная запись блоками 128 КиБ до достижения 2-кратной емкости. Далее выбирается по одной из величин окно установившегося состояния (5 раундов), которое проверяется построением графика. Критерии установившегося состояния: линейная аппроксимация в пределах окна не должна выходить за границы 90%/110% среднего значения.

SNIA PTS: IOPS test (IOPS при варьировании размера блока и соотношения чтение/запись)

CM6 1,6 ТБ

CM6 3,2 ТБ

CD6

Данный тест проводится после предварительной нагрузки на запись (preconditioning), как и предусмотрено спецификацией SNIA. Новые накопители Kioxia действительно демонстрируют выдающиеся результаты на чтение блоками 4 КиБ: более 1,4 миллиона IOPS для CM6 и более 1 миллиона для CD6. Результаты на запись традиционно выше заявленных, так как данный тест не предусматривает выхода в режим насыщения.

SNIA PTS: throughtput test

Пропускная способность при последовательном доступе блоками 128 КиБ и 1 МиБ, 1 поток с глубиной очереди 256.

CM6 1,6 ТБ

  • 128 КиБ последовательное чтение: 6649 МиБ/с
  • 128 КиБ последовательная запись: 2730 МиБ/с
  • 1 МиБ последовательное чтение: 6615 МиБ/с
  • 1 МиБ последовательная запись: 2730 МиБ/с

CM6 3,2 ТБ

  • 128 КиБ последовательное чтение: 6651 МиБ/с
  • 128 КиБ последовательная запись: 4048 МиБ/с
  • 1 МиБ последовательное чтение: 5958 МиБ/с
  • 1 МиБ последовательная запись: 4059 МиБ/с

CD6

  • 128 КиБ последовательное чтение: 5361 МиБ/с
  • 128 КиБ последовательная запись:2340 МиБ/с
  • 1 МиБ последовательное чтение: 5175 МиБ/с
  • 1 МиБ последовательная запись: 2317 МиБ/с

Заявленные характеристики производительности последовательного доступа вполне подтвердились (напомним, что Kioxia здесь использует десятичные мегабайты) для обоих накопителей. Также мы видим, что для скорость чтения значительно превышает возможности PCIe 3 ×4, так что новым накопителям действительно нужен переход на PCIe 4.

Latency vs IOPS test

Сначала приведём данные стандартного теста SNIA для QD=1. Значения задержки указаны в микросекундах.

CM6 3,2 ТБ

Блок Чтение/запись IOPS Средняя задержка Перцентиль 99,99% Максимум
512 100 12062 78,8 148,5 1344,6
512 65 16753 90,3 511,6 955,3
512 0 63769 11,1 32,1 151,8
4096 100 11956 79,4 149 187,5
4096 65 16308 92,3 526,2 957,3
4096 0 56006 12 38,8 82,9
8192 100 11645 81 158,7 1329,6
8192 65 15514 95,9 628,5 2239,1
8192 0 48663 12,8 35,5 861,5

CD6

Блок Чтение/запись IOPS Средняя задержка Перцентиль 99,99% Максимум
512 100 10744 89,6 169,5 212,5
512 65 14933 101,7 486,9 877,1
512 0 64007 11,1 32,2 231,0
4096 100 10571 90,6 168,4 927,2
4096 65 14735 102,8 497,2 915,5
4096 0 56323 11,9 38,0 89,5
8192 100 10356 92,2 184,8 1006,9
8192 65 13951 107,1 510,2 905,0
8192 0 49206 12,6 34,7 886,4

При небольшой нагрузке CD6 и CM6 демонстрируют практически идентичную производительность.

После основного цикла нагрузки тест предусматривает 20-минутный раунд с нагрузкой на запись блоками 4 КиБ и построением гистограммы задержки. Мы дополнительно повторили этот тест для чтения. Распределение выглядит так:

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

Test 03-2

Данные усреднялись по пяти из 25-ти раундов длительностью 60 секунд (5 «прогревочных» + 60-секундная нагрузка) каждый. Для графиков выбрана серия значений с глубиной очереди от 1 до 64 при 1–32 потоках.

Для Kioxia CM6 было интересно проследить влияние профилей энергопотребления на производительность. Список поддерживаемых профилей можно получить при помощи NVMe CLI или smartmontools. Вот фрагмент вывода nvme id-ctrl /dev/nvme0:

nvme id-ctrl /dev/nvme0

ps    0 : mp:27.50W operational enlat:500000 exlat:500000 rrt:0 rrl:0
          rwt:0 rwl:0 idle_power:6.00W active_power:25.00W
ps    1 : mp:19.80W operational enlat:500000 exlat:500000 rrt:0 rrl:0
          rwt:1 rwl:1 idle_power:6.00W active_power:18.00W
ps    2 : mp:17.60W operational enlat:500000 exlat:500000 rrt:0 rrl:0
          rwt:2 rwl:2 idle_power:6.00W active_power:16.00W
ps    3 : mp:15.40W operational enlat:500000 exlat:500000 rrt:1 rrl:1
          rwt:3 rwl:3 idle_power:6.00W active_power:14.00W
ps    4 : mp:12.10W operational enlat:500000 exlat:500000 rrt:2 rrl:2
          rwt:4 rwl:4 idle_power:6.00W active_power:11.00W
ps    5 : mp:9.90W operational enlat:500000 exlat:500000 rrt:3 rrl:3
          rwt:5 rwl:5 idle_power:6.00W active_power:9.00W
ps    6 : mp:5.00W non-operational enlat:500000 exlat:500000 rrt:6 rrl:6
          rwt:6 rwl:6 idle_power:5.00W active_power:-
Для этого теста был выбран CM6 объёмом 1,6 ТБ. Как мы видим, у данного накопителя есть профиль с обычным для NVMe-накопителей максимальным потреблением в 25 Вт и ещё 5 профилей, где потребление накопителя ограничено вплоть до 9 Вт. Последний профиль помечен как non-operational, он предназначен для спящего режима. Включим профиль номер 5 (9 Вт):
sudo nvme set-feature /dev/nvme0 -f 2 /dev/nvme0n1 -v 0x5
set-feature:02 (Power Management), value:0x000005

Посмотрим на результаты теста с размером блока 4 КиБ и соотношением чтение/запись 70/30:

Средняя задержка:

99,99-перцентиль задержки:

Кажется, при небольших нагрузках расхождение не столь существенно, но если взглянуть на QoS задержки, то видно, что CM6 «на диете» не может обеспечить стабильно низкий уровень задержки. Тем не менее, есть ещё и другие профили, и бывают ситуации, когда производительностью можно пожертвовать, сэкономив значительное количество электроэнергии, необходимой для питания и охлаждения большого количества таких накопителей.

SNIA PTS: Write Saturation Test (насыщение при случайной записи блоками 4КиБ)

Под нагрузкой накопители снижают IOPS'ы до заявленных производителем значений:

Если обратить внимание на задержку, то CD6-V ведёт себя несколько лучше, чем CM6-V на 3,2 ТБ демонстрируя меньшую среднюю задержку, и меньший уровень пиковых значений:
CM6-V 1,6 ТБ

CM6-V 3,2 ТБ
CD6-V 1,6 ТБ

Host Idle Recovery

Описание данного теста приведено выше. Данный тест требует большого количества времени, поэтому мы успели запустить его только на CM6. Тест хорошо показывает различие в алгоритмах сборки мусора. Если мы сравним результаты с WD SN640, то увидим, что накопитель от Kioxia явно использует менее агрессивную сборку мусора. Даже на последнем этапе с паузами по 50 секунд определённое количество запросов всё ещё обрабатывается с большей задержкой. Для того, чтобы более точно оценить распределение значений IOPS или задержки для данного теста требуется построение гистограммы вместо диаграммы рассеяния, рекомендуемой спецификацией SNIA PTS.

Заключение

Kioxia CM6 и CD6 демонстрируют выдающуюся производительность в синтетических тестах благодаря переходу на 96-слойную NAND BiCS FLASH и новому контроллеру. Поддержка PCIe 4.0 позволила новым накопителям преодолеть ограничение пропускной способности последовательного доступа.

К сожалению, нам пока не удалось решить проблему совместимости этих накопителей с Tri-mode контроллерами Broadcom серии 9400, рассчитанными на подключение накопителей U.2. Последняя прошивка предусматривает набор специальных команд для принудительного переключения накопителей из режима U.3 в U.2, но это не помогло. Но серьёзным недостатком это считать не стоит, так как для накопителей нового поколения уже доступны контроллеры серии 9500.

Вернуться к списку

Контакты:

  • Адрес: 115487, г. Москва, ул. Нагатинская, дом 16 (Метро "Нагатинская")
  • Телефон: (495) 747-3113
  • Факс: (495) 747-3112
  • Гарантийный отдел: (495) 747-3113 (доб. 333, 304)
  • Отдел продаж: (495) 747-3113
© 2006-2024 True System inc