Почему NVIDIA делает переключатели? Как это связано с генеративным ИИ?

Больше всего внимания на Computex было приковано к новым DGX GH200 и MGX от NVIDIA — оба являются продуктами NVIDIA для ИИ системного уровня, независимо от того, являются ли они эталонными проектами или полноценными серверами. Те чипы, платы и системы, связанные с процессорами и графическими процессорами, всегда были горячими темами для NVIDIA, поскольку искусственный интеллект и высокопроизводительные вычисления настолько популярны.

Но на самом деле, в контексте ИИ HPC, особенно генеративный ИИ, или то, что многие люди сейчас называют вычислениями «крупной модели», и сети также очень важны. Другими словами, требуется большое количество серверов для совместной работы для решения проблем, а для расширения вычислительной мощности систем и узлов необходим крупномасштабный кластер. Таким образом, проблемы с производительностью связаны не только с вычислительной мощностью ЦП, графических процессоров и чипов ИИ в узле.

Ранее Google упоминал, что в общей инфраструктуре ИИ важность архитектуры системного уровня даже выше, чем у микроархитектуры чипа TPU. Конечно, этот «системный уровень» может не обязательно охватывать сеть между узлами, но очевидно, что когда группа микросхем работает вместе для выполнения вычислений, система и сеть становятся узкими местами производительности.

Вот почему DPU так важен, а не субъективный способ продавать или конкурировать с существующими продуктами на рынке. DPU и другие сетевые продукты NVIDIA больше похожи на дополнения к их собственным продуктам, субъективно не похожие на конкуренцию с другими или с существующими продуктами на рынке. С этой точки зрения аппаратные продукты NVIDIA представляют собой полноценную экосистему по горизонтали: например, DPU субъективно не предназначен для конкуренции с кем-либо, но является частью их существующих продуктов.

Computex

На выставке Computex NVIDIA представила сетевые продукты, основанные на платформе Spectrum-X Ethernet. NVIDIA утверждает, что это первый в мире высокопроизводительный продукт Ethernet, разработанный специально для ИИ, особенно для «генеративных рабочих нагрузок ИИ, которым требуется новый тип Ethernet». В прошлом мы мало говорили о сетевых продуктах NVIDIA, в том числе о ее блоке обработки данных (DPU). С введением Spectrum-X в этой статье делается попытка обсудить этот продукт Ethernet, а также логику сетевых продуктов NVIDIA.

Почему NVIDIA хочет создать «переключатель»?

Двумя основными компонентами платформы Spectrum-X являются Ethernet-коммутатор Spectrum-4 и DPU BlueField-3. Часть о DPU не очень объяснена; другая часть, связанная с коммутатором Spectrum, фактическая GTC В прошлом году NVIDIA выпустила коммутатор Spectrum-4 400Gbps. Уровень чипа основан на ASIC Spectrum — Хуан Ренсюнь продемонстрировал чип на презентации Computex, который представляет собой крупного парня, который включает в себя 100 миллиардов транзисторов, 90x90 мм, 800 шариков припоя в нижней части корпуса чипа и потребляемую мощность 500 Вт.

Хуан Ренсюнь показал чип

Объявление о «первой высокопроизводительной архитектуре Ethernet», созданной специально для искусственного интеллекта, системе Ethernet-коммутатора Spectrum-4, теперь доступно для операторов связи.

Как показано на рисунке, система имеет в общей сложности 128 портов с пропускной способностью 51.2 ТБ/с, что в два раза больше, чем у традиционных коммутаторов Ethernet. По словам компании, эта новая технология позволит сетевым инженерам, специалистам по обработке данных ИИ и поставщикам облачных услуг получать результаты и принимать решения быстрее, а также позволит создавать генеративные облака ИИ. Высокая пропускная способность и низкая задержка имеют решающее значение для устранения узких мест производительности при масштабировании GPU между узлами. Весь коммутатор потребляет 2800 Вт мощности.

система имеет в общей сложности 128 портов

На прошлогоднем GTC NVIDIA объяснила, что коммутатор не предназначен для конкуренции с обычными сетевыми коммутаторами в обработке рутинного трафика «мышиного потока», а вместо этого фокусируется на обработке трафика «слоновьего потока», используя аппаратные продукты для крупномасштабных ИИ, цифровых близнецы и приложения для моделирования.

«Традиционные коммутаторы слишком медленные для обработки текущих генеративных рабочих нагрузок ИИ. Более того, мы все еще находимся в начале революции ИИ. Традиционных коммутаторов может быть достаточно для стандартных облаков, но они не могут обеспечить требуемую производительность для облачных нагрузок ИИ, включающих генеративный ИИ», — сказал Гилад Шейнер, старший вице-президент NVIDIA по сетевым технологиям, во время своего основного выступления.

Во время предварительного брифинга репортер специально спросил, конкурирует ли NVIDIA Spectrum напрямую с коммутаторами от Arista и других компаний. Шейнер ответил, что конкуренции нет: «Другие коммутаторы Ethernet на рынке используются для создания обычных товарных облаков или трафика север-юг, который включает доступ пользователей и управление облаком. Однако в настоящее время на рынке нет решения, которое могло бы удовлетворить требования генеративного ИИ для Ethernet. Являясь первой в мире сетью Ethernet для трафика с востока на запад в генеративном искусственном интеллекте, Spectrum-4 создал совершенно новое решение Ethernet, специально предназначенное для этой цели». Шейнер также упомянул на брифинге, что существующие коммутационные продукты Broadcom не конкурируют со Spectrum-4. NVIDIA подчеркивает, что Spectrum-X создает сеть Ethernet без потерь, что может быть особенно важно для объяснения платформы Spectrum-X.

InfiniBand против Ethernet

Ethernet развивался с течением времени. Lossless специфичен, потому что Ethernet изначально был разработан для сетевых сред с потерями. Другими словами, в этой сети допускается потеря пакетов. Для обеспечения надежности верхнему уровню IP-сети требуется протокол TCP. То есть, если во время передачи пакетов происходит потеря пакетов, протокол TCP позволяет отправителю повторно передать потерянные пакеты. Однако из-за этих механизмов исправления ошибок увеличивается задержка, что может вызвать проблемы для определенных типов приложений. Кроме того, чтобы справляться с внезапными всплесками трафика в сети, коммутаторам необходимо выделять дополнительные ресурсы кэша для временного хранения информации, поэтому микросхемы коммутаторов Ethernet крупнее и дороже, чем микросхемы InfiniBand с аналогичными характеристиками.

Однако «сети с потерями неприемлемы для центров обработки данных высокопроизводительных вычислений (HPC)». Хуан Ренсюнь заявил: «Общая стоимость выполнения рабочей нагрузки HPC очень высока, и любые потери в сети трудно выдержать». Кроме того, из-за таких требований, как изоляция производительности, сети с потерями действительно трудно переносить. NVIDIA использует стандарт сетевой связи под названием InfiniBand. InfiniBand обычно используется в приложениях высокопроизводительных вычислений, требующих высокой пропускной способности и низкой задержки. В отличие от Ethernet, который является более универсальным, InfiniBand лучше подходит для приложений, интенсивно использующих данные.

InfiniBand не является эксклюзивным продуктом NVIDIA. Первоначально он был разработан рядом компаний, в том числе Intel, IBM и Microsoft, и даже существовал специализированный альянс под названием IBTA. Mellanox начал продвигать продукты InfiniBand примерно в 2000 году. Согласно введению Википедии, первоначальной целью InfiniBand была замена PCI в вводе-выводе и Ethernet во взаимосвязанных машинных залах и кластерах.

К сожалению, InfiniBand разрабатывался в период лопнувшего пузыря доткомов, и его развитие было подавлено. У всех участников, таких как Intel и Microsoft, был новый выбор. Однако по списку суперкомпьютеров TOP500 в 2009 году уже было 181 внутреннее соединение на основе InfiniBand (остальные были Ethernet), и к 2014 году более половины из них использовали InfiniBand, хотя 10-гигабитный Ethernet быстро догнал его в следующие два года. Когда NVIDIA приобрела Mellanox в 2019 году, Mellanox уже стала основным поставщиком коммуникационных продуктов InfiniBand на рынке.

С точки зрения дизайна, Ethernet, появившийся в 1980-х годах, был связан только с достижением информационной совместимости между несколькими системами. В отличие от этого, InfiniBand был создан для устранения узких мест в передаче данных кластера в сценариях высокопроизводительных вычислений, например, с точки зрения задержки, а его схема обработки коммутации уровня 2 довольно прямолинейна, что может значительно сократить задержку пересылки. Поэтому он естественным образом подходит для высокопроизводительных вычислений, центров обработки данных и суперкомпьютерных кластеров: высокая пропускная способность, низкая задержка и высокая надежность.

высокая пропускная способность, низкая задержка и высокая надежность

С точки зрения надежности InfiniBand сам по себе имеет полное определение протокола для сетевых уровней 1-4: он предотвращает потерю пакетов с помощью сквозных механизмов управления потоком, что само по себе обеспечивает отсутствие потерь. Еще одно существенное различие между ними заключается в том, что InfiniBand основан на структуре коммутируемой сети, а Ethernet основан на общем канале с общей средой. Теоретически первый способ лучше позволяет избежать проблем с сетевыми конфликтами.

Если InfiniBand настолько хорош, почему Nvidia хочет развивать Ethernet? Исходя из интуиции, рыночная база Ethernet, универсальность и гибкость должны быть важными факторами. В своем выступлении Хуанг говорил о том, что «мы хотим внедрить генеративный ИИ в каждый центр обработки данных», что требует прямой совместимости; «Многие предприятия внедряют Ethernet», и «им сложно получить возможности InfiniBand, поэтому мы выводим эту возможность на рынок Ethernet. Это бизнес-логика развертывания Spectrum-4. Но мы думаем, что это далеко не все.

NVIDIA работает как над продуктами Ethernet, так и над продуктами InfiniBand, причем первая из них — это платформа Spectrum Ethernet, а вторая называется Quantum InfiniBand. Если вы посмотрите на официальную страницу, то увидите, что решения InfiniBand «обеспечивают непревзойденную производительность при меньших затратах и ​​сложности поверх облачных инфраструктур HPC, AI и суперкластера», в то время как Spectrum — это ускоренная коммутация Ethernet для AI и облака. Очевидно, что эти две технологии в некоторой степени конкурируют.

Почему Ethernet?

В своем выступлении Хуанг научно объяснил различные типы центров обработки данных — фактически, на прошлогодней конференции GTC NVIDIA четко разделила центры обработки данных на шесть категорий. И в сценарии ИИ, который мы сегодня обсуждаем, центры обработки данных можно разделить на две основные категории. Одна категория — это та, которая должна отвечать за целую кучу различных нагрузок приложений, где может быть много арендаторов и слабые зависимости между нагрузками.

Но есть и другая категория, обычно такая как суперкомпьютеры или популярные в настоящее время суперкомпьютеры с искусственным интеллектом, которые имеют очень мало арендаторов (всего 1 «голое железо») и сильно связанные нагрузки — требующие высокой пропускной способности для больших вычислительных задач. Разница в инфраструктуре, необходимой для этих двух типов центров обработки данных, значительна. Судя по интуиции, самая примитивная среда Ethernet с потерями не подходила бы для последнего требования. Причины этого уже были рассмотрены в предыдущей статье.

SemiAnalysis недавно написал статью, в которой конкретно говорилось о многих проблемах с InfiniBand — в основном технических, которые могут быть использованы NVIDIA в качестве ориентира для одновременной разработки Ethernet. Некоторые из них извлечены здесь для справки. На самом деле и InfiniBand, и сами Ethernet постоянно развиваются.

Управление потоком InfiniBand использует механизм управления потоком на основе кредита. Каждой ссылке предварительно назначаются определенные кредиты, отражающие такие атрибуты, как пропускная способность канала. Когда пакет получен и обработан, принимающая сторона возвращает кредит отправляющей стороне. В идеале такая система гарантирует, что сеть не будет перегружена, поскольку отправителю нужно будет дождаться возврата кредитов, прежде чем отправлять новые пакеты.

Почему Ethernet

Но есть проблемы с таким механизмом. Например, если узел-отправитель отправляет данные узлу-получателю с большей скоростью, чем узел-получатель может обработать данные, буфер узла-получателя может переполниться. Узел-получатель не может вернуть кредиты узлу-отправителю, и в результате узел-отправитель не может отправить больше пакетов данных, поскольку кредиты исчерпаны. Если принимающий узел не может вернуть кредиты, а отправляющий узел также является принимающим узлом для других узлов, невозможность вернуть кредиты в случае перегрузки полосы пропускания может привести к распространению обратного давления на большую площадь. Другие проблемы включают взаимоблокировки и количество ошибок, вызванных различными компонентами.

Некоторые присущие InfiniBand проблемы усугубляются по мере увеличения масштаба и сложности системы. В настоящее время крупнейшее коммерчески реализованное решение InfiniBand, вероятно, принадлежит компании Meta, где в исследовательском кластере развернуто в общей сложности 16,000 16,000 сетевых карт и 100 XNUMX графических процессоров AXNUMX.

Этот масштаб, несомненно, огромен, но SemiAnalysis утверждает, что для обучения GPT-4 потребуется еще больший масштаб, а будущие разработки «больших моделей», вероятно, потребуют расширения кластера. Теоретически InfiniBand может продолжать расширять свою общую емкость, но он будет все больше страдать от последствий внутренних проблем. С точки зрения логического вывода InfiniBand по-прежнему может выиграть от задержки и производительности, но для логического вывода разные запросы будут непрерывно передаваться с разной скоростью. Более того, будущие архитектуры потребуют включения нескольких крупных моделей в пакеты разного размера в рамках одного и того же крупномасштабного кластера, что потребует непрерывных изменений управления потоком на основе кредита.

Механизм управления кредитным потоком сложно быстро реагировать на изменения сетевой среды. Если в сети имеется большой объем разнообразного трафика, состояние буфера принимающего узла может быстро меняться. Если сеть становится перегруженной, отправляющий узел все еще обрабатывает более раннюю кредитную информацию, что делает проблему еще более сложной. Более того, если узел-отправитель постоянно ожидает кредитов и переключается между двумя состояниями передачи данных, это может легко вызвать колебания производительности.

Что касается практичности, нынешний Quantum-2 от NVIDIA обеспечивает пропускную способность 25.6 ТБ/с, что, по крайней мере, в численном выражении ниже, чем 4 ТБ/с у Spectrum-51.2. Более быстрые чипы и инфраструктура Quantum не будут доступны до следующего года, что создает другой темп. Кроме того, с точки зрения затрат, для достижения того же масштаба (8000+ GPU) при обычном развертывании GPU требуется дополнительный уровень коммутации и значительно больше кабелей (дорогостоящие оптические кабели). Таким образом, типичная стоимость развертывания сети InfiniBand значительно выше, чем Ethernet. (ДПУ и NIC расходы здесь не учитываются.)

С точки зрения заказчика, рынок Ethernet намного больше рынка InfiniBand, что также помогает снизить затраты на развертывание. Существуют и другие специфические сопоставимые факторы, такие как традиционные интерфейсные системы обслуживания на основе Ethernet и проблема привязки поставщика к InfiniBand для клиентов. Очевидно, что Ethernet предоставляет больше возможностей для выбора, а эластичность его развертывания и масштабируемость также могут быть выше. С технической точки зрения представляется, что будущее развертывание инфраструктуры оптической передачи для Ethernet имеет потенциальную ценность.

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

Квант-2

Наконец, давайте поговорим об упомянутом в начале вопросе о том, что изначально Ethernet был сетью с потерями. Но на самом деле с развитием таких технологий, как RoCE (RDMA over Converged Ethernet), некоторые преимущества InfiniBand также были перенесены в Ethernet. По сути, расширение технологий — это в какой-то степени интеграция преимуществ различных технологий, включая высокую производительность и отсутствие потерь InfiniBand, универсальность, экономичность и гибкость Ethernet и т. д.

RoCE, упомянутый в характеристиках платформы Spectrum-X, обеспечивает отсутствие потерь в сетях Ethernet, полагаясь на управление потоком на основе приоритетов (PFC) на NIC на стороне конечной точки, а не на коммутаторах. Кроме того, RoCE++ имеет несколько новых оптимизированных расширений, таких как ASCK, который обрабатывает проблемы с потерей пакетов и порядком прибытия, позволяя принимающей стороне уведомлять передающую сторону о повторной передаче только потерянных или поврежденных пакетов, обеспечивая более высокое использование полосы пропускания; есть также ECN, механизм управления потоком и оптимизация ошибок, которые способствуют повышению эффективности и надежности. Кроме того, чтобы облегчить проблемы масштабируемости сетевых адаптеров конечных точек в стандартном Ethernet с сетями RoCE, можно использовать режим Bluefield NIC, а общая стоимость DPU все еще может быть снижена за счет Ethernet и некоторых новых технологий.

В своем программном выступлении Хуан Ренсюнь особо упомянул Spectrum-X, который в основном привносит в Ethernet две важные характеристики: адаптивную маршрутизацию и контроль перегрузки. Кроме того, NVIDIA ранее сотрудничала с IDC, чтобы выпустить официальный отчет о коммерческой ценности решений для коммутации Ethernet.

В крупномасштабных приложениях ИИ, возможно, Ethernet станет неизбежным выбором в будущем. Поэтому в продвижении Spectrum-X позиция NVIDIA специально подготовлена ​​для генеративных ИИ-облаков, «первого» решения для восточно-западного трафика генеративного ИИ. Однако причин может быть больше, чем универсальность Ethernet. При нагрузках AI HPC есть определенная вероятность возможности комплексного перехода на Ethernet.

Разработка разных стандартов сама по себе является процессом постоянной проверки и дополнения недостатков друг друга, впитывания сути. Как и в случае с InfiniBand, существуют различные решения для устранения присущих дефектов, а некоторые расширенные атрибуты InfiniBand также очень полезны для его применения в ИИ. Это проблема сравнения между выбором и развитием технологий. Мы можем подождать и посмотреть, склонится ли NVIDIA в будущем к развитию InfiniBand или Ethernet, даже если у этих двух есть свои сценарии применения.

Оставьте комментарий

Наверх