При построении моделей ИИ графические процессоры в суперкомпьютерах обрабатывают огромные объемы данных, постоянно обмениваясь между собой промежуточными результатами. Технология Infiniband для передачи этих данных слишком сложна и дорога, а в случае Ethernet возможная потеря пакетов и их повторная передача приводят к заметным простоям в работе графических ускорителей.
Год 2023-й в истории развития ИТ наверняка запомнится как год быстрого внедрения технологий искусственного интеллекта (ИИ). Среди громких анонсов новых решений, сделанных лидерами рынка ИТ в 2023 г., стоит обратить внимание на сообщения о выпуске сетевого оборудования Ethernet, специально разработанного для суперкомпьютеров, которые используются для приложений ИИ, и усовершенствований технологии Ethernet с учетом требований таких приложений.
Зачем нужен Ethernet для суперкомпьютеров ИИ и почему стандартный Ethernet нуждается в усовершенствовании?
ИИ и Ethernet – в чем проблемы
Основа суперкомпьютеров ИИ – это графический ускоритель, Graphic Processing Unit (GPU), представляющий собой кристалл с несколькими сотнями процессорных ядер. Графический процессор выполняет обработку исходных данных, на основе которых с помощью нейронной сети создается модель ИИ. Поскольку объемы исходных данных очень велики, для ускорения построения модели ИИ их обработка распределяется на сотни и даже тысячи GPU, объединенных в кластер и постоянно обменивающихся между собой результатами обработки контента.
Например, в ноябре 2023 г. Dell и NVIDIA запустили в Израиле суперкомпьютер Israel-1, состоящий из 256 серверов Dell, на которых установлено 2056 графических ускорителей NVIDIA, содержащих примерно 35 млн процессорных ядер.
В индустрии суперкомпьютеров для обмена данными внутри кластеров часто используется технология Infiniband, но эта нишевая технология, развитие которой сейчас фактически определяет одна компания (NVIDIA), слишком сложна и дорога. Учитывая резкий спрос на суперкомпьютеры для приложений ИИ, в качестве интерконнекта, соединяющего GPU и обеспечивающего построение сетевой «фабрики» кластера, более выгодно применять всем знакомый Ethernet (которому в нынешнем году исполнилось полвека). Однако с точки зрения компьютеров ИИ у этой технологии есть серьезные минусы, которые нужно каким-то образом устранить, чтобы использовать ее в суперкомпьютерах.
Ethernet уже сейчас способен обеспечить скорость передачи данных по сети до 800 Гбит/с и на подходе следующее поколение Ethernet, в котором максимальная скорость будет вдвое больше. Тем не менее эта технология не рассчитана на передачу огромных объемов данных с миллиардами параметров, которые сначала загружаются на сотни GPU, а затем графические ускорители периодически обмениваются между собой промежуточными результатами обработки этих данных, также занимающими гигантские объемы. Дело в том, что Ethernet не исключает потери при передачи какой-то части пакетов, и если такая потеря происходит, данные, часть пакетов с которыми была потеряна, передаются заново.
При передаче относительно небольших массивов данных, с которыми работают типичные бизнес-приложения, такая повторная передача мало влияет на производительность приложений, однако в случае GPU она может приводить к значительным паузам в работе графических ускорителей, которым для продолжения расчетов нужны результаты вычислений других GPU суперкомпьютера. А если учесть, что построение («тренировка») модели ИИ на суперкомпьютерах может продолжаться недели и даже месяцы, то очевидно, что из-за потери пакетов запуск модели ИИ в промышленное использование произойдет значительно позже. К тому же простой нескольких десятков и сотен GPU означает и серьезные убытки, поскольку это очень дорогое оборудование.
Еще один недостаток Ethernet при обработке трафика, который создают графические ускорители суперкомпьютера ИИ, состоит в том, что пакеты могут прийти получателю не в том порядке, в котором были отправлены, и в результате какое-то время уйдет на их упорядочивание либо потребуется их повторная передача.
Средства усовершенствования Ethernet
В нынешнем году ряд крупнейших ИТ-компаний, в том числе AMD, Arista, Broadcom, Cisco, HPE, Intel, Meta и Microsoft, создали консорциум Ultra Ethernet Constortium, который будет продвигать усовершенствования Ethernet, чтобы использовать эту технологию в сетевых фабриках суперкомпьютеров ИИ. Кроме того, некоторые компании представили уже собственные решения Ethernet для сетевых фабрик ИИ.
Компания NVIDIA, крупнейший производитель GPU, весной выпустила 400-гигабитную сетевую карту BlueField-3 SuperNIC, которая уже используется в израильском суперкомпьютере Israel-1. BlueField-3 SuperNIC позволяет GPU напрямую обмениваться данными без использования ресурсов центральных процессоров серверов, в которых они установлены (этот механизм называется Remote Direct Memory Access, RDMA), обеспечивает соблюдение порядка приема пакетов, а также применяет специальные алгоритмы, предотвращающие переполнение сетевой фабрики суперкомпьютера трафиком, генерируемым GPU. В Israel-1 также используются разработанные Nvidia коммутаторы Spectum-4 SN5000 с пропускной способностью 51,2 Тбайт/с, обеспечивающие эффективное распределение трафика между узлами сетевой фабрики суперкомпьютера ИИ.
Компания Broadcom представила коммутатор Jericho3-AI, который поддерживает динамическое распределение трафика в сетевой фабрике суперкомпьютера ТИИ, предотвращает переполнение ее пакетами и позволяет масштабировать фабрику до 32 тыс. GPU. Этот коммутатор предлагается в конфигурациях с 800-, 400- и 200-гигабитными портами и способен обеспечить пропускную способность сетевой фабрики до 26 Пбайт/с.