< вернуться назад

RAID Offload для NVMe без нагрузки на CPU: Kioxia показала вычисление паритета прямо на SSD

RAID Offload для NVMe без нагрузки на CPU: Kioxia показала вычисление паритета прямо на SSD
#SSD #nvme #RAID Offload #Kioxia
4 минуты
RAID Offload для NVMe без нагрузки на CPU: Kioxia показала вычисление паритета прямо на SSD

Kioxia продемонстрировала подход, при котором каждый NVMe-накопитель берёт на себя вычисление паритета (XOR/кодирование с избыточностью) и передаёт данные страйпов напрямую SSD↔SSD по PCIe, минуя CPU и оперативную память сервера. В прототипе нагрузка на память снизилась более чем на 90%, а загрузка CPU – примерно на 12%. Совместно с Dell эта технология готовится к вынесению на стандартизацию в рамках NVMe.

RAID Offload для NVMe без нагрузки на CPU: Kioxia показала вычисление паритета прямо на SSD - 1

Почему классический RAID для NVMe перегружает CPU и память

С ростом производительности NVMe SSD узким местом стали CPU и шина памяти, особенно при RAID5/6, где паритет требует интенсивных вычислений и больших объёмов копирования данных. Классические варианты — софтверный RAID или аппаратные контроллеры/HBA — либо перегружают ресурсы сервера, либо становятся бутылочным горлышком.

Как работает RAID Offload для NVMe SSD от Kioxia

  • Вычисления и буферизация на SSD: каждый накопитель использует собственный буфер (CMB) и встроенный XOR-движок для расчёта паритета.
  • DMA между SSD: накопители могут напрямую писать данные либо в память хоста, либо в буфер «соседа», что позволяет обмениваться блоками по PCIe без посредничества CPU.
  • Результаты прототипа: в 5-дисковом RAID5 нагрузка на память уменьшилась в 10 раз, а загрузка CPU — на двузначные проценты.
  • Дополнительный сценарий: при фоновом скраббинге накопители выполняют промежуточные XOR-суммы сами, и к хосту передаётся только результат. Это сокращает перемещаемые объёмы данных почти на два порядка.
  • Стандартизация: Kioxia и Dell работают над выносом этой схемы в NVMe как опцию, доступную любому совместимому накопителю.

Принцип работы RAID Offload: вычисление паритета на SSD

  1. Хост инициирует операцию RAID.
  2. Накопители читают свои сегменты страйпа в локальные буферы.
  3. XOR или кодирование выполняется на самом диске.
  4. По PCIe передаётся только необходимый результат (например, блок паритета).
  5. Данные и паритет записываются на диски.

Таким образом, хост управляет процессом, но не участвует в тяжёлых вычислениях и копировании.

Преимущества RAID Offload для NVMe SSD

  • Снижение нагрузки на CPU и DRAM, что особенно важно для серверов с высокими требованиями к вычислительным ресурсам.
  • Масштабируемость: каждый новый диск добавляет не только ёмкость, но и вычислительные ресурсы.
  • Прозрачность внедрения: используется стандартный интерфейс NVMe вместо проприетарных решений.

Ограничения и перспективы внедрения RAID Offload

  • Требования к топологии: для прямого обмена SSD↔SSD нужны PCIe-коммутаторы и поддержка P2P DMA.
  • Работа в аварийных режимах: нужно определить, как обрабатывать ошибки и деградацию массива при распределённых вычислениях.
  • Безопасность: прямой доступ к буферам и DMA требует строгого контроля через IOMMU.
  • Поддержка со стороны индустрии: технология станет массовой только если NVMe-группа согласует общий стандарт, а несколько вендоров внедрят его в свои SSD.

 Мнение BAUM: почему RAID Offload может изменить рынок NVMe

Проблема эффективного RAID для NVMe, похоже, близка к своему решению. Долгое время основными подходами были либо софтверные рейды, создающие избыточную сервисную нагрузку на ресурсы сервера, либо аппаратные tri-mode карточки, которые ограничивали масштабирование и влезали между процессором и накопителем. Сейчас в параллели разрабатываются несколько более удачных подходов, и идея Kioxia выглядит разумно и красиво. В свое время WD анонсировали отказ от проприетарных чипов в накопителях и постепенный переход на открытую архитектуру RISC-V, и в качестве одного из потенциальных применений дополнительной вычислительной мощности как раз предлагались идеи типа расчета контрольных сумм прямо на диске.

Автор: Олег Ларин

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *
Author
Посетитель сайта

Добавить комментарий

Комментариев пока нет

Другие статьи, которые могут быть полезными

ИИ-агент Big Sleep от Google сорвал реальную 0-day атаку в SQLite ИИ-агент Big Sleep от Google DeepMind и Project Zero за сутки до атаки вычислил критическую 0-day-уязвимость CVE-2025-6965 в SQLite...
1047
2
Почему в storage нет единого языка управления — и это нормально В инфраструктуре хранения есть старая проблема, о которой любят говорить все, кто однажды пытался автоматизировать что-то сложнее создания одного...
372
24
Рассмотрим понятие глубины очереди применительно к одиночному диску. Чем больше глубина очереди, тем больше запросов жесткий диск может обработать за единицу времени. Это объясняется тем, что диск выстраивает последовательность обработки...
3367
3