Top.Mail.Ru
DPU — сопроцессоры обработки данных | Блог Serverflow Скачать
прайс-лист
Бесплатная
доставка по РФ
Бонус за
обратную связь
Интернет-магазин
Серверного оборудования
8 (800) 222-70-01 Консультация IT-специалиста Сравнение

DPU — сопроцессоры обработки данных

~ 23 мин
2452
Простой
Статьи
DPU — сопроцессоры обработки данных

Введение

Мощности центральных процессоров в современных вычислительных системах расходуются, прямо скажем, не всегда рационально. CPU с сотнями ядер, стоящие как крыло самолета, тратят свои мощности на откровенно черновую работу — бесконечное перекладывание пакетов, шифрование трафика на лету, обслуживание виртуальных сетевых функций. Само собой, эта работа очень важна, и без нее ЦОД просто встанет, но жертвовать на нее ядра очень расточительно — для CPU это просто паразитная нагрузка, которая может сжирать до 30% вычислительных ресурсов чипа. Возникает вопрос: а нельзя ли все это хозяйство куда-нибудь вынести? Разумеется, можно. Индустрия осознала, что гонять трафик через ядра проца идея так себе, и начала искать способы делегировать эти задачи специализированному железу. Так появились всем известные SmartNIC, а затем и совершенно новый класс устройств — сопроцессоры DPU (Data Processing Unit), которые позволяют разгрузить центральный процессор (offloading), взяв нагрузку по обработке трафика на себя. В этой статье специалисты ServerFlow расскажут вам, что такое DPU, как они устроены изнутри, чем они кардинально отличаются от SmartNIC, кто сегодня делает погоду на этом рынке и в каких задачах эти устройства действительно незаменимы.

Что такое DPU?

DPU (Data Processing Unit) — это специализированный программируемый сопроцессор, цель которого заключается в обработке потоков данных и разгрузке центрального процессора от работы с трафиком и других задач, которые не связаны с исполнением бизнес-логики приложений или хостингом системы. DPU буквально как чернорабочий взваливает на свои плечи все простые, но ресурсоемкие и времязатратные задачи, такие как коммутацию трафика, межсетевое экранирование, управление томами NVMe по протоколу NVMe-over-Fabrics или даже оркестрацию контейнерных сред.

AMD Pensando DSC2-25
DPU-карта AMD Pensando DSC2-25.

Из чего состоит DPU?

Сам по себе DPU представляет из себя SoC-чип, но не обычный — если большинство систем-на-кристалле включают себя целую кучу компонентов, то у DPU набор логики ограничивается CPU-частью на базе Arm-ядер и дополнительными аппаратными блоками для ускорения шифрования/обработки трафика. То есть, DPU — это не просто какой-то жестко прошитый ASIC с фиксированной логикой, а полноценное, самостоятельное вычислительное устройство, которое имеет даже выделенную оперативную память, что позволяет ему выполнять тот или иной код, запускать приложения и поддерживать собственную, изолированную ОС.

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

Сам SoC-чип DPU обычно поставляется в виде карты расширения с интерфейсом PCIe для подключения к системе и высокоскоростными сетевыми портами для подключения к серверам, коммутаторам или СХД. В общем, если вы подумали, что DPU это просто сетевая карта с Arm-процессором на борту, то вы окажетесь абсолютно правы, ведь DPU-сопроцессоры напрямую продолжают концепцию SmartNIC и являются их логической эволюцией. У DPU есть буквально все, что есть у полноценного компьютера — память, процессор, сеть, IPMI и прочая логика.

Компоненты DPU-ускорителя
Основные компоненты и архитектура классического DPU-ускорителя. Источник: vInfrastructure.

Основные характеристики DPU

С учетом специфики работы DPU, ключевой характеристикой этого класса устройств, подобно сетевым картам, является пропускная способность. Современные модели DPU обеспечивают скорость от 200 Гбит/с до 1,6 Тбит/с. Однако голая цифра на порте — это еще не все. Критически важным требованием является способность обрабатывать трафик на полной скорости линии, так называемый line rate. Другими словами, DPU должен успевать обрабатывать поток пакетов минимального размера без задержек. Достигается такая эффективность как раз таки за счет аппаратных конвейеров обработки пакетов, интегрированных в архитектуру SoC, и тщательно оптимизированных на аппаратном уровне путей передачи данных.

Вычислительная начинка DPU — это всегда ядра на архитектуре Arm. В передовых DPU текущих поколений используется преимущественно Arm Neoverse N1 или N2, а в более ранних устройствах можно встретить Cortex-A78. Количество ядер варьируется от 16 до 64 штук, что сопоставимо с полноценными серверными процессорами начального уровня. Объем выделенной оперативной памяти тоже не так мал, как кажется — от 32 до 128 ГБ энергоэффективной LPDDR5, либо традиционной DDR4 или DDR5 в ранних моделях. Наличие такого пула оперативки позволяет разворачивать на DPU полноценные операционные системы и довольно сложное ПО, не обращаясь за ресурсами к хосту.

Интерфейс подключения к хост-системе — это, разумеется, шина PCI Express. Современные DPU освоили стандарт PCIe 5.0 и используют его в конфигурациях с x16 или даже x32 линий, чтобы обеспечить достаточную пропускную способность для эффективной обработки сетевого трафика и команд управления. Более того, на горизонте уже маячат решения с поддержкой PCIe 6.0, которые обещают двукратный прирост пропускной способности по сравнению с пятым поколением. Отдельного упоминания заслуживают аппаратные движки — специализированные блоки, заточенные под конкретные задачи. В этот джентльменский набор входят криптографические ускорители с поддержкой алгоритмов AES, SHA и RSA, движки для сжатия и дедупликации данных на лету, аппаратные реализации эмуляции NVMe-устройств, движки для обработки RDMA-трафика и подсистемы сбора телеметрии.

Наконец, программируемость DPU, которая достигается именно благодаря наличию полноценных процессорных ядер и поддержке фреймворков для разработки, что отличает этот тип сопроцессоров от примитивных ASIC и FPGA. Разработчики могут свободно создавать и разворачивать на DPU кастомные сетевые функции, уникальные политики безопасности и произвольные сервисы обработки данных. Фреймворки вроде DOCA от NVIDIA позволяют описывать желаемое поведение сетевого конвейера на высокоуровневом языке, а затем компилировать это описание непосредственно в конфигурацию аппаратных ресурсов чипа, получая производительность ASIC при сохранении гибкости поддерживаемого ПО.

AMD Pensando DSC2-25 и Nvidia Connect X6 200Gb/s
DPU-карты AMD Pensando DSC2-25 и Nvidia Connect X6 200Gb/s.

Основные производители DPU

DPU — это не игрушка для энтузиастов, а серьезное решение для корпоративных клиентов. А где водятся корпоративные клиенты, там плавают и 3 акулы IT-индустрии: Nvidia, AMD и Intel. Вот какие DPU решения предлагают эти гиганты:

NVIDIA

Флагманским DPU в арсенале NVIDIA на ближайшие годы станет решение BlueField-4, которое займет свое место в передовых ИИ-системах на базе грядущих ИИ-ускорителей Rubin. Это устройство — гибрид, объединяющий мощнейший процессор Grace, сетевой контроллер ConnectX последнего поколения и значительный объем энергоэффективной памяти.
  • Сетевая подсистема: контроллер ConnectX-9 SuperNIC с пропускной способностью 1,6 Тбит/с и поддержкой стандарта 800G Ethernet. Обеспечивается аппаратное ускорение протокола RoCEv2, InfiniBand и сверхнизкие задержки при передаче данных.
  • Вычислительная подсистема: 64-ядерный процессор NVIDIA Grace на базе архитектуры Arm Neoverse V2 со 114 МБ кэша L3. Производительность вычислительной подсистемы возросла в шесть раз по сравнению с предыдущим поколением BlueField-3 для экосистем Blackwell и Blackwell Ultra.
  • Подсистема памяти: 128 ГБ LPDDR5 и встроенный твердотельный накопитель емкостью 512 ГБ для хранения кода операционной системы и рабочих данных инфраструктурных сервисов.
  • Интерфейс подключения: PCIe 6.0 в конфигурации x16 линий.
  • Аппаратные ускорители: криптографические движки, движки эмуляции NVMe-over-Fabrics, блоки GPUDirect Storage для прямой передачи данных из сетевых хранилищ в память графических процессоров и аппаратное ускорение RoCEv2.
NVIDIA BlueField-4
Nvidia BlueField-4. Источник: Nvidia.

AMD

Ответ AMD на DPU BlueField-4 — DPU-карты Pensando Salina 400, ориентированное на стандартные Ethernet-сети корпоративных дата-центров и облачных платформ на базе серверов AMD EPYC.
  • Сетевая подсистема: 400 Гбит/с с поддержкой протоколов RoCEv2 и традиционного RDMA (без требований к Ultra Ethernet). Программируемый P4-движок обрабатывает до 80 миллионов пакетов в секунду и устанавливает до 2 миллионов новых соединений в секунду.
  • Вычислительная подсистема: P4-движок второго поколения, включающий 128 ядер MPU (Match Processing Unit). Архитектура содержит Table Engine для аппаратной генерации ключей хеш-таблиц, поддержку атомарных операций во встроенной памяти SRAM и аппаратное преобразование виртуальных адресов в физические. Когерентность кеша с хост-системой отсутствует, что снижает сложность интеграции.
  • Подсистема памяти: встроенная SRAM объемом 64 МБ (для таблиц состояний и очередей).
  • Интерфейс подключения: PCIe Gen5 x16. В отличие от старших моделей, не использует InfinityFabric — подключение к процессорам EPYC и ускорителям Instinct выполняется через стандартные коммутаторы PCIe или Ethernet.
  • Аппаратные ускорители: программируемый P4-конвейер с фиксированными шаблонами обработки, аппаратная поддержка RoCEv2 с базовыми параметрами, статическая балансировка нагрузки на основе хеширования (без адаптации к состоянию сети).
AMD Pensando Salina 400
AMD Pensando Salina 400. Источник: AMD.

Intel

Intel IPU E2200, известный под кодовым именем Mount Morgan, представляет собой инфраструктурный процессор (тот же DPU, но под маркетинговым соусом Intel), нацеленный на разгрузку и ускорение рабочих нагрузок в дата-центрах на платформе Intel Xeon. Интересно, что линейка устройств IPU вышла еще в далеком 2021 году, поэтому Intel с уверенностью можно назвать пионером в области DPU-сопроцессоров, несмотря на то, что первые IPU базировались именно на FPGA-схемах Agilex и лишь потом эволюционировали в полноценные SoC с Arm-ядрами.
  • Сетевая подсистема: интерфейс с суммарной пропускной способностью 400 Гбит/с (двукратное увеличение по сравнению с E2100) и поддержкой протокола RoCE v2.
  • Вычислительная подсистема: до 24 ядер Arm Neoverse N2, 32 МБ кеша L3 (в предыдущем E2100 Mount Evans было 16 ядер).
  • Подсистема памяти: четыре канала LPDDR5-6400 до 64 ГБ.
  • Интерфейс подключения: PCIe 5.0 в конфигурации x16 линий
  • Аппаратные ускорители: P4-программируемый процессор пакетов FXP, встроенный криптографический движок с поддержкой IPsec и PSP с настройкой для каждого потока, модуль Traffic Shaper (алгоритм Timing Wheel), выделенный блок Look-Aside для компрессии и шифрования.
Intel IPU E2200
Intel IPU E2200. Источник: Intel.

Другие производители

Рынок DPU не ограничивается тремя гигантами. Ряд других компаний разрабатывали или продолжают разрабатывать собственные решения, часть из которых была вытеснена или переориентирована на другие рыночные ниши. Наиболее заметные игроки:
  • Broadcom Stingray PS250 — устаревшая линейка на SoC BCM58800 с 8 ядрами Cortex-A72, контроллером NetXtreme E-Series 100G (суммарно 200 Гбит/с) и тремя каналами DDR4-2400. Ставка сделана на глубокую аппаратную разгрузку NVMe-oF и сетевых функций. Удивительно, но Stingray PS250 активно используется в облачной инфраструктуре Baidu.
  • Marvell Octeon 10 — линейка DPU на базе Arm Neoverse N2 с поддержкой до 400G Ethernet, встроенными крипто-движками и аппаратными акселераторами для 5G и сетевой безопасности. Позиционируется как решение для операторов связи и периферийных вычислений.
  • Kalray Coolidge2 — французская разработка на базе массива ядер 80 ядер KV3 (на архитектуре VLIW) и пропускной способностью до 200 Гбит/с. Ориентирована на детерминированную обработку данных с низкой задержкой в аэрокосмической и автомобильной отраслях, хотя изначально претендовала на сегмент ЦОД.
  • Xsight Labs — израильский стартап, представивший чип X2 с 400 Гбит/с Ethernet, программируемым конвейером и акцентом на сверхнизкое энергопотребление (до 60 Вт на 400G). Решение нацелено на гиперскейлеров и облачных провайдеров, стремящихся снизить свои операционные расходы.

Сценарии использования DPU

DPU находят применение в различных сегментах рынка информационных технологий, обеспечивая решение специфических задач по разгрузке центральных процессоров и повышению эффективности инфраструктуры. Основные сценарии использования:
  • Облачные среды и гиперскейлеры. DPU используются для полной разгрузки хостового центрального процессора от инфраструктурных задач, включая виртуализацию сетевых функций, управление распределенными хранилищами, обеспечение изоляции арендаторов и реализацию политик безопасности. DPU применяют крупнейшие облачные провайдеры, в числе которых технологии AWS Nitro, Microsoft Azure Boost DPU и Alibaba Cloud X-Dragon. Использование DPU позволяет предоставлять bare-metal серверы в облачной среде с уровнем управляемости и безопасности, сопоставимым с виртуальными машинами.
  • Корпоративные ЦОД. DPU применяются для консолидации инфраструктурных сервисов на выделенном устройстве. К таким сервисам относятся распределенный межсетевой экран, балансировка сетевой нагрузки, шифрование трафика и организация доступа к удаленным томам NVMe-over-Fabrics. Выполнение данных функций на DPU позволяет снизить нагрузку на центральные процессоры серверов и упростить управление инфраструктурой.
  • ИИ-инфраструктуры. DPU решают задачу обеспечения высокоскоростного доступа к данным для графических ускорителей. Технология GPUDirect Storage, реализованная в DPU Nvidia, обеспечивает прямую передачу данных из сетевых хранилищ в память GPU. Кроме того, DPU используются для построения высокоскоростных коммуникационных сетей на базе протокола RoCEv2 или InfiniBand, соединяющих тысячи графических ускорителей в единую вычислительную систему.
У вас мог возникнуть резонный вопрос: а есть ли смысл от DPU для обычного серверного энтузиаста или небольшой компании с парой вычислительных нод в стойке? Если говорить прямо — смысла никакого. DPU в единичном сервере, скорее всего, станет для вас просто дорогой игрушкой. Получить, условно, NVIDIA ConnectX-8 или ConnectX-9 с дополнительным мощным Arm-процессором на борту и не использовать и десятой доли его возможностей по офлоаду и оркестрации — удовольствие сомнительное. Экономический эффект от DPU раскрывается именно на масштабе ЦОД, когда счет идет на стойки и кластеры, а нагрузка от трафика на процессор действительно велика.

настройки IPMI на DPU
Процесс настройки IPMI-доступа с хостингом на DPU.

Выводы

DPU в современных реалиях гигаваттных ЦОД — это не просто полезная опция, а жизненно необходимая технология, без которой невозможно построить действительно эффективную вычислительную инфраструктуру, где процессоры выполняют полезную работу, а не заняты перекладыванием пакетов. Высвобождение драгоценных ядер CPU, радикальное повышение безопасности за счет аппаратной изоляции и значительное снижение энергопотребления инфраструктурного слоя делают DPU обязательным компонентом любой серьезной облачной или корпоративной платформы. Но помните, что DPU — решение не для всех. Но если ваши задачи уже переросли любительский уровень и вы задумываетесь о построении эффективной и безопасной серверной инфраструктуры, специалисты компании ServerFlow всегда готовы помочь вам с выбором как DPU, так и любого другого серверного оборудования, а также настроят весь необходимый под ваши задачи, чтобы приобретенный сервер был готов к выполнению задач с первого дня.
Автор: Serverflow Serverflow
Поделиться

Комментарии 0

Написать комментарий
Сейчас тут ничего нет. Ваш комментарий может стать первым.
Написать отзыв
До 6 фото, размером до 12Мб каждое
Мы получили ваш отзыв!

Он появится на сайте после модерации.

Написать комментарий

Комментарий появится на сайте после предварительной модерации

До 6 фото, размером до 12Мб каждое
Мы получили ваш отзыв!

Он появится на сайте после модерации.

Мы свяжемся с вами утром

График работы: Пн-Пт 10:00-18:30 (по МСК)

Обработаем вашу заявку
в ближайший рабочий день

График работы: Пн-Пт 10:00-18:30 (по МСК)