Компания Microchip Technology представила технологию ZeroQ, разработанную для повышения эффективности использования NVMe SSD в крупномасштабных ИИ-системах. По заявлению разработчиков, ZeroQ формирует «зелёную супермагистраль», которая позволяет тысячам ИИ-ядер получать прямой доступ к твердотельным накопителям с интерфейсом PCIe.
В традиционных архитектурах связь CPU с NVMe SSD строится на механизме пар очередей: для каждого ядра хоста формируются очереди отправки (SQ) и завершения (CQ). В SQ размещаются новые запросы, в CQ — готовые результаты. Такой подход минимизирует лишние системные вызовы и копирование данных.
Однако этот механизм, эффективный для обычных CPU, плохо масштабируется на тысячи ИИ-ядер. Возникают задержки, проблемы с сохранением порядка команд и ограничения пропускной способности, что увеличивает энергопотребление и снижает производительность. Дополнительно требуются дорогие NVMe ASIC для управления логикой.
ZeroQ устраняет узкие места архитектуры SQ/CQ, создавая прямой канал обмена данными между ИИ-ядрами и NVMe-накопителями. Все ядра используют единый регистр списка команд (ZeroQ Command List Register) для каждого накопителя, при этом каждое ядро ведёт собственный список команд.
Ядро передаёт 64-битный адрес своего списка команд в регистр ZeroQ. Аппаратный блок извлекает адрес, помещает его в FIFO-очередь внутри SSD и запускает обработку. Один список может содержать несколько операций, что позволяет обрабатывать их параллельно — это эффективнее классической модели SQ/CQ.
В новой концепции драйвер хоста распределяет ресурсы ZeroQ SSD между ИИ-ядрами при инициализации системы на основе настраиваемых политик, а также формирует списки команд ZeroQ. Встроенная микропрограмма SSD выполняет роль оркестратора, распределяя трафик между протоколом ZeroQ и традиционным каналом SQ/CQ, извлекая списки команд из оперативной памяти хоста.
По данным Microchip, архитектура ZeroQ обеспечивает ряд преимуществ: масштабируемость для развёртываний с десятками тысяч ИИ-ядер (в перспективе — до 100 тысяч), перенос нагрузки в память SSD вместо сложной логики на хосте, прямой доступ к накопителю, поддержку больших списков команд и совместимость с PCIe, NVMe и SR-IOV. Также устраняется необходимость в блокировках и синхронизации ядер на стороне хоста.
Microchip отмечает, что по мере роста масштабов ИИ-систем решение подобных проблем становится всё более сложной задачей, и ZeroQ призвана упростить этот процесс.
