Сверхвысокая пропускная способность, сверхнизкая задержка и сверхвысокая надежность — это требования к сети для обучения больших моделей.
На протяжении многих лет протокол TCP/IP был основой интернет-коммуникаций, но для сетей искусственного интеллекта TCP/IP имеет некоторые фатальные недостатки. Протокол TCP/IP имеет высокую задержку, обычно около десятков микросекунд, а также вызывает серьезную нагрузку на процессор. RDMA может напрямую обращаться к данным памяти через сетевой интерфейс без вмешательства ядра операционной системы. Это обеспечивает высокую пропускную способность сети с низкой задержкой, что особенно подходит для использования в крупномасштабных параллельных компьютерных кластерах.
InfiniBand, RoCEv1, RoCEv2 и iWARP — это четыре реализации технологии RDMA. Тем не менее, RoCEv1 больше не используется, а iWARP встречается редко. Преобладающими сетевыми решениями в отрасли являются InfiniBand и RoCEv2.
Каковы требования к сети для рабочих нагрузок HPC/AI?
Большинство центров обработки данных сегодня используют двухуровневую сетевую архитектуру, а кластеры ИИ представляют собой суперкомпьютеры, созданные для выполнения сложных крупномасштабных задач ИИ. Компьютерные рабочие нагрузки выполняются параллельно на нескольких графических процессорах, что требует высокой загрузки. Таким образом, по сравнению с традиционными сетями центров обработки данных, сети центров обработки данных с искусственным интеллектом сталкиваются с дополнительными сложностями:
- Параллельные вычисления. Рабочие нагрузки ИИ представляют собой единую инфраструктуру нескольких компьютеров, на которых выполняются одни и те же приложения/вычислительные задачи;
- Масштаб. Масштаб задач HPC/ИИ может достигать тысяч вычислительных механизмов (таких как графические процессоры, центральные процессоры, FPGA и т. д.);
- Типы задач. Различные задачи различаются по размеру, продолжительности выполнения, размеру и количеству рассматриваемых наборов данных, типу генерируемого ответа, а также разным языкам, используемым для написания кода приложения, и типу оборудования, на котором оно работает, что все определяет шаблоны трафика внутри сеть, созданная для выполнения рабочих нагрузок HPC/ИИ, постоянно меняется;
- Без потерь: в традиционных центрах обработки данных потерянные сообщения передаются повторно, тогда как в рабочих нагрузках ИИ потерянные сообщения означают, что все вычисления либо неверны, либо зависли. Поэтому центрам обработки данных искусственного интеллекта нужна сеть без потерь.
- Пропускная способность: между серверами должен проходить трафик с высокой пропускной способностью, чтобы приложения могли получать доступ к данным. В современных развертываниях скорость интерфейса каждого вычислительного механизма для искусственного интеллекта или других высокопроизводительных вычислительных возможностей достигает 400 Гбит/с.
Эти сложности создают серьезные проблемы для сетей ИИ, поэтому сети центров обработки данных ИИ должны иметь высокую пропускную способность, низкую задержку, отсутствие дрожания, потери пакетов и долгосрочную стабильность.
От TCP/IP к RDMA
Для таких приложений, как HPC/AI, которым требуется низкая задержка и высокий уровень параллелизма ввода-вывода, существующая программная и аппаратная архитектура TCP/IP не может удовлетворить требованиям приложения. Традиционная сетевая связь TCP/IP использует ядро для отправки сообщений, что требует больших затрат на перемещение и копирование данных. Например, при типичной передаче данных по IP, когда приложение на одном компьютере отправляет данные приложению на другом компьютере, на принимающей стороне происходят следующие операции:
- Ядро должно получить данные.
- Ядро должно определить, какому приложению принадлежат данные.
- Ядро пробуждает приложение.
- Ядро ожидает, пока приложение выполнит системный вызов ядра.
- Приложение копирует данные из области памяти ядра в буфер, предоставленный приложением.
Этот процесс означает, что если хост-адаптер использует прямой доступ к памяти (DMA), большая часть сетевого трафика копируется в основную память системы. Кроме того, компьютер выполняет некоторые переключения контекста для переключения между ядром и приложением. Эти переключения контекста могут привести к увеличению нагрузки на процессор и увеличению трафика, одновременно замедляя выполнение других задач.
TCP/IP-передача
В отличие от традиционной IP-связи, связь RDMA обходит вмешательство ядра в процесс связи, позволяя хосту напрямую обращаться к памяти другого хоста, уменьшая нагрузку на процессор. Протокол RDMA позволяет хост-адаптеру решать, какое приложение должно его получить и где его хранить в памяти этого приложения после того, как пакет попадет в сеть. Хост-адаптер не отправляет пакет ядру для обработки и не копирует его в память пользовательского приложения, а вместо этого напрямую помещает содержимое пакета в буфер приложения.
RDMA-передача
Передача RDMA сокращает количество задействованных циклов ЦП, что помогает повысить пропускную способность и производительность. Другими словами, суть RDMA заключается в том, что для крупномасштабных сценариев распределенных вычислений и хранения данных он позволяет сетевой карте обходить ЦП и напрямую обращаться к памяти удаленного сервера, ускоряя взаимодействие между серверами, уменьшая задержку и используя драгоценные ресурсы ЦП для важных вычислений и логического управления.
По сравнению с традиционными сетями TCP/IP InfiniBand и RoCEv2 обходят стек протоколов ядра, а показатели задержки можно улучшить на несколько порядков. Когда связь внутри одного кластера может быть достигнута за один переход, экспериментальные тесты показывают, что после обхода стека протоколов ядра сквозная задержка на уровне приложения может быть уменьшена с 50 мкс (TCP/IP) до 5 мкс (RoCE). ) или 2us (InfiniBand).
Введение в сети InfiniBand
В сетях InfiniBand для передачи данных вместо Ethernet используются адаптеры или коммутаторы InfiniBand. Задержка между портами определенного типа коммутатора Ethernet составляет 230 нс, тогда как задержка коммутатора InfiniBand с таким же количеством портов составляет 100 нс.
Ключевые компоненты сети InfiniBand включают диспетчер подсети (SM), сетевую карту IB, коммутатор IB и кабель IB. Коммутаторы InfiniBand не поддерживают никаких протоколов маршрутизации, а таблицы пересылки всей сети рассчитываются и распределяются централизованным менеджером подсети. Помимо таблиц пересылки, SM также отвечает за управление разделами, качеством обслуживания и другими конфигурациями в подсети InfiniBand. Для сетей InfiniBand требуются специальные кабели и оптические модули для соединения коммутаторов и подключения коммутаторов к сетевым картам.
Локальная сеть без потерь
В сетях InfiniBand используется механизм кредитных токенов, позволяющий избежать переполнения буфера и потери пакетов. Отправитель инициирует передачу пакета только после подтверждения того, что у получателя достаточно кредитов для приема соответствующего количества пакетов.
Каждое соединение в сети InfiniBand имеет заранее определенный буфер. Отправитель не передает данные, размер которых превышает размер заранее определенного буфера, доступного в получателе. Как только получатель завершает пересылку, он освобождает буфер и непрерывно возвращает отправителю текущий доступный заранее определенный размер буфера. Этот механизм управления потоком на уровне канала гарантирует, что отправитель не отправит слишком много данных, предотвращая переполнение сетевого буфера и потерю пакетов.
Возможность расширения сетевой карты
Адаптивная маршрутизация InfiniBand основана на динамической маршрутизации каждого пакета, обеспечивая оптимальное использование сети в крупномасштабных развертываниях. Существует множество примеров крупномасштабных кластеров графических процессоров, использующих сети InfiniBand, например Baidu Artificial Intelligence Cloud и Microsoft Azure.
Сетевые карты InfiniBand быстро развиваются с точки зрения скорости: HDR 200 Гбит/с уже широко используется в коммерческих целях, а сетевые карты NDR 400 Гбит/с также начинают коммерчески внедряться. В настоящее время на рынке представлены основные сетевые решения InfiniBand и поставщики вспомогательного оборудования, такие как NVIDIA, Intel, Cisco и HPE. Среди них NVIDIA имеет самую высокую долю рынка, превышающую 70%. На следующем рисунке показаны часто используемые Сетевые карты InfiniBand.
Введение в сети RoCEv2
RoCE реализует функциональность RDMA через Ethernet, которая может обходить TCP/IP и использовать аппаратную разгрузку, тем самым снижая загрузку ЦП. RoCE имеет две основные версии: RoCEv1 и RoCEv2. RoCEv1 — это протокол RDMA, реализованный на уровне канала Ethernet. Коммутаторы должны поддерживать методы управления потоком, такие как PFC, чтобы гарантировать надежную передачу на физическом уровне. RoCEv2 реализован на уровне UDP протокола Ethernet TCP/IP и вводит протокол IP для решения проблем масштабируемости.
RoCEv2 поддерживает маршрутизацию RDMA по сетям Ethernet уровня 3. RoCEv2 заменяет сетевой уровень InfiniBand заголовками IP и UDP на канальном уровне Ethernet, что позволяет маршрутизировать RoCE между традиционными маршрутизаторами на основе IP.
Сети InfiniBand в некоторой степени представляют собой сети с централизованным управлением с SM (менеджером подсети), тогда как сети RoCEv2 представляют собой чисто распределенные сети, состоящие из сетевых карт и коммутаторов, которые поддерживают RoCEv1 и обычно имеют двухуровневую архитектуру.
Основными поставщиками сетевых карт RoCE являются NVIDIA, Intel и Broadcom и т. д. Карты PCIe — это основная форма сетевых карт для серверов центров обработки данных. PHY-скорость порта РДМА карты обычно начинаются с 50 Гбит/с, а доступные в настоящее время коммерческие сетевые карты могут достигать скорости до 400 Гбит/с на одном порту.
В настоящее время большинство коммутаторов центров обработки данных поддерживают технологию управления потоком RDMA, которая позволяет обеспечить сквозную связь RDMA в сочетании с сетевыми картами, поддерживающими RoCE. Основными игроками на рынке коммутаторов для центров обработки данных являются Cisco, HPE, Arista и т. д. Основой высокопроизводительных коммутаторов является используемый ими чип пересылки. В настоящее время на рынке представлены чипы серии Tomahawk компании Broadcom, которые широко используются в коммерческих транспортных чипах. Среди них чип серии Tomahawk3 чаще используется в коммутаторах, а переключатели, поддерживающие чип серии Tomahawk4, постепенно увеличиваются на рынке.
InfiniBand против RoCE
По сравнению с InfiniBand, RoCE обладает большей универсальностью и относительно более низкой стоимостью. Его можно использовать не только для построения высокопроизводительных сетей RDMA, но и для традиционного Ethernet. Однако настройка таких параметров, как запас, PFC (управление потоком на основе приоритетов) и ECN (явное уведомление о перегрузке) на коммутаторах может оказаться сложной задачей. В крупномасштабных развертываниях общая пропускная способность сетей RoCE может быть немного ниже, чем у сетей InfiniBand.
- С технической точки зрения InfiniBand использует различные технологии для повышения производительности сетевой пересылки, сокращения времени восстановления после сбоев, повышения масштабируемости и снижения сложности эксплуатации.
- С точки зрения бизнес-производительности InfiniBand имеет меньшую сквозную задержку, чем RoCEv2, поэтому сети, построенные на InfiniBand, имеют преимущество в производительности бизнеса на уровне приложений.
- С точки зрения пропускной способности и задержки такие факторы, как перегрузка и маршрутизация, влияют на высокопроизводительное сетевое соединение.
Перегруженность
InfiniBand использует два разных сообщения Frame Relay для управления перегрузкой: прямое явное уведомление о перегрузке (FECN) и обратное явное уведомление о перегрузке (BECN). Когда сеть перегружена, FECN уведомляет принимающее устройство, а BECN уведомляет отправляющее устройство. InfiniBand сочетает в себе FECN и BECN с адаптивной скоростью маркировки для уменьшения перегрузок. Он обеспечивает грубый контроль перегрузок.
Контроль перегрузки в RoCE использует явное уведомление о перегрузке (ECN), которое является расширением IP и TCP и позволяет уведомлять о перегрузке сети конечной точки без отбрасывания пакетов. ECN помещает метку в заголовок IP, чтобы сообщить отправителю о перегрузке. Для связи с перегрузкой, отличной от ECN, потерянные пакеты необходимо передать повторно. ECN уменьшает потерю пакетов, вызванную перегрузкой TCP-соединения, избегая повторной передачи. Меньшее количество повторных передач может уменьшить задержку и джиттер, тем самым обеспечивая лучшую производительность транзакций и пропускную способность. ECN также обеспечивает более детальный контроль перегрузки, который не имеет явного преимущества перед InfiniBand.
Маршрутизация
При перегрузке сети адаптивная маршрутизация направляет устройства по альтернативным маршрутам, чтобы уменьшить перегрузку и ускорить передачу. RoCE v2 работает поверх IP. На протяжении десятилетий IP маршрутизировался с помощью передовых алгоритмов маршрутизации, а теперь он может прогнозировать перегруженные маршруты с помощью машинного обучения ИИ и автоматически отправлять пакеты по более быстрым маршрутам. С точки зрения маршрутизации Ethernet и RoCE v2 имеют значительные преимущества.
Однако InfiniBand и RoCE не особо помогают справиться с задержкой в хвосте. Задержка хвоста очень важна для синхронизации приложений сообщений HPC.
ОДК планирует определить новый транспортный протокол
В дополнение к InfiniBand и RoCE, отраслью были предложены и другие протоколы.
19 июля был официально создан консорциум Ultra Ethernet (UEC). Цель UEC — выйти за рамки существующих возможностей Ethernet и предоставить высокопроизводительный, распределенный и без потерь транспортный уровень, оптимизированный для высокопроизводительных вычислений и искусственного интеллекта. Среди основателей UEC — AMD, Arista, Broadcom, Cisco, Eviden, HPE, Intel, Meta и Microsoft, все из которых имеют многолетний опыт в области сетей, искусственного интеллекта, облачных вычислений и крупномасштабных высокопроизводительных вычислений.
В UEC считают, что RDMA, определенный несколько десятилетий назад, устарел в условиях требовательного сетевого трафика AI/ML. RDMA передает данные большими блоками трафика, что может привести к дисбалансу канала и перегрузке. Пришло время приступить к созданию современного транспортного протокола, поддерживающего RDMA для новых приложений.
Сообщается, что транспортный протокол UEC находится в стадии разработки с целью обеспечить лучший транспорт Ethernet, чем текущий RDMA (все еще поддерживающий RDMA), сохраняя при этом преимущества Ethernet/IP и обеспечивая производительность, необходимую для приложений AI и HPC. Транспорт UEC — это новая форма околотранспортного уровня, которая имеет некоторые семантические настройки, протокол уведомления о перегрузке и улучшенные функции безопасности. UEC обеспечит более гибкий транспорт, не требующий сети без потерь, что позволит рабочим нагрузкам искусственного интеллекта «многие-ко-многим» требовать многопутевой и внеочередной передачи пакетов и других функций.
Больше возможностей предприятия
Поскольку сеть HPC/AI продолжает развиваться, все больше и больше предприятий запускают свои собственные сетевые протоколы или решения для удовлетворения своих конкретных потребностей.
Tencent Cloud использует в своей сети Starlink собственную разработку Starlink RDMA, которая позволяет графическим процессорам напрямую взаимодействовать друг с другом, экономя ресурсы ЦП и повышая общую производительность и эффективность вычислительных узлов. Благодаря собственному протоколу сквозного сотрудничества TiTa сеть Starlink может достичь 90% нагрузки при нулевой потере пакетов. В протокол TiTa встроен алгоритм контроля перегрузки, который может отслеживать состояние сети в режиме реального времени и оптимизировать связь, делая передачу данных более плавной и снижая задержку.
Alibaba Cloud Panjiu PredFabric использует собственный высокоскоростной сетевой протокол Solar-RDMA, который позволяет процессорам получать доступ к памяти любого другого сервера посредством инструкций загрузки/сохранения, что очень подходит для интерактивной формы нейронных сетей в моделях глубокого обучения. . По сравнению с традиционным режимом время самовосстановления неисправности и задержка хвоста могут быть сокращены на 90%.
В гиперконвергентной сети центров обработки данных Huawei используется оригинальный интеллектуальный алгоритм без потерь iLossless, который взаимодействует с тремя ключевыми технологиями: технологией управления трафиком, технологией управления перегрузкой и технологией интеллектуальной сети хранения данных без потерь, чтобы заранее предотвратить возникновение тупиковой ситуации PFC, уменьшить / устранить перегрузку, и добиться быстрого управления хостами, тем самым создавая сеть Ethernet без потерь и решая проблему потери пакетов из-за перегрузки в традиционных сетях Ethernet.
Растущий рыночный спрос является фундаментальной движущей силой технологического развития. По данным IDC, инвестиции в строительство инфраструктуры искусственного интеллекта достигнут 154 миллиардов долларов США в 2023 году и увеличатся до 300 миллиардов долларов США к 2026 году. В 2022 году рынок сетей искусственного интеллекта достиг 2 миллиардов долларов США, из которых InfiniBand обеспечила 75% выручки. .
Сравнивая InfiniBand и RoCE, мы видим, что оба имеют свои преимущества и сценарии применения. InfiniBand хорошо зарекомендовал себя в области высокопроизводительных вычислений, обеспечивая отличную производительность, низкую задержку и масштабируемость. RoCE легче интегрировать в существующую инфраструктуру Ethernet и он дешевле. Появляющиеся транспортные протоколы, представленные UEC, также представляют собой постоянное развитие и инновации технологий. Только адаптируясь к меняющимся потребностям, мы можем сохранить основную конкурентоспособность.
Сопутствующие товары:
- Mellanox MMA1B00-E100 совместимый модуль приемопередатчика 100G InfiniBand EDR QSFP28 SR4 850nm 100m MTP/MPO MMF DDM $40.00
- Mellanox MMA1T00-HS, совместимый с 200G Infiniband HDR QSFP56 SR4, 850 нм, 100 м, MPO-12, модуль оптического приемопередатчика APC OM3/OM4 FEC PAM4 $200.00
- Mellanox MMS1W50-HM совместимый 200G InfiniBand HDR QSFP56 FR4 PAM4 CWDM4 2 км LC SMF FEC модуль оптического трансивера $650.00
- Совместимый с NVIDIA MMS4X00-NS400 400G OSFP DR4 Flat Top PAM4 1310nm MTP/MPO-12 500m SMF FEC Модуль оптического трансивера $800.00
- Совместимость с NVIDIA MFP7E20-N050, 50 волокон, 164 м (8 футов) с низкими вносимыми потерями, гнездо к гнезду, от MPO12 до 2xMPO12, полярность B от APC до APC LSZH, многомодовый OM4 50/125 $145.00
- Совместимость с NVIDIA MFP7E20-N015, 15 волокон, 49 м (8 футов) с низкими вносимыми потерями, гнездо к гнезду, от MPO12 до 2xMPO12, полярность B от APC до APC LSZH, многомодовый OM3 50/125 $67.00
- NVIDIA MFS1S90-H015E Совместимый активный оптический кабель длиной 15 м (49 футов) от 2x200G QSFP56 до 2x200G QSFP56 PAM4 Breakout Active Optical Cable $830.00
- NVIDIA MMA4Z00-NS-FLT Совместимый двухпортовый OSFP 800 Гбит/с 2x400G SR8 PAM4 850 нм 100 м DOM Двойной модуль оптического трансивера MPO-12 MMF $850.00
- Совместимый с NVIDIA MMS4X00-NM-FLT 800G Twin-port OSFP 2x400G Flat Top PAM4 1310nm 500m DOM Dual MTP/MPO-12 SMF Модуль оптического трансивера $1200.00
- NVIDIA MFS1S50-H015V Совместимый активный оптический кабель 15 м (49 футов) 200G InfiniBand HDR QSFP56 — 2x100G QSFP56 PAM4 Breakout Active Optical Cable $630.00
- NVIDIA MMA4Z00-NS Совместимый двухпортовый OSFP 800 Гбит/с 2x400G SR8 PAM4 850 нм 100 м DOM Двойной модуль оптического трансивера MPO-12 MMF $750.00
- NVIDIA MMS4X00-NM Совместимый двухпортовый OSFP 800 Гбит/с 2x400G PAM4 1310nm 500m DOM Dual MTP/MPO-12 SMF Модуль оптического трансивера $1100.00
- Плата адаптера NVIDIA Mellanox MCX653105A-HDAT-SP ConnectX-6 InfiniBand/VPI, HDR/200GbE, однопортовый QSFP56, PCIe3.0/4.0 x16, высокий кронштейн $1400.00
- Mellanox MCP7H50-H003R26 Совместимый 3-метровый (10 футов) Infiniband HDR 200G QSFP56 — 2x100G QSFP56 PAM4 Пассивный медный кабель с прямым подключением $75.00
- Mellanox MFS1S50-H003E Совместимый активный оптический кабель 3 м (10 футов) 200G HDR QSFP56 — 2x100G QSFP56 PAM4 Breakout Active Optical Cable $605.00
- Плата адаптера NVIDIA Mellanox MCX75510AAS-NEAT ConnectX-7 InfiniBand/VPI, NDR/400G, однопортовый OSFP, PCIe 5.0x 16, высокий кронштейн $1650.00