FiberMall предоставляет комплексные решения InfiniBand

После того, как ChatGPT взорвался в области технологий, люди обсуждали, каким будет «следующий шаг» ИИ, и многие ученые упоминали мультимодальность. Недавно OpenAI выпустила мультимодальную предварительно обученную большую модель GPT-4. GPT-4 достигает высоких результатов в следующих аспектах: мощное распознавание графов, ограничение на ввод текста увеличено до 25,000 XNUMX слов, значительное улучшение точности ответов, возможность генерировать тексты песен, творческий текст и реализовывать изменения стиля.

Такие эффективные итерации неотделимы от обучения крупномасштабных моделей ИИ, которое требует больших вычислительных ресурсов и высокоскоростных сетей передачи данных. Среди них сквозная сеть IB (InfiniBand) — это высокопроизводительная вычислительная сеть, которая особенно подходит для высокопроизводительных вычислений и обучения моделей ИИ. В этой статье мы расскажем, что такое обучение модели AIGC, зачем нужна сквозная сеть IB и как использовать модель ChatGPT для обучения AIGC.

Что такое АЙГК?

AIGC, AI Generated Content, относится к автоматически сгенерированному искусственному интеллекту контенту, который можно использовать для рисования, письма, видео и многих других типов создания контента. 2022 AIGC развивается с высокой скоростью, которая продолжает совершенствовать модель глубокого обучения, продвижение модели с открытым исходным кодом и возможность коммерциализации исследования больших моделей, что становится развитием AIGC «ускорение». Возьмем, к примеру, ChatGPT, чат-бот, который может писать эссе, создавать романы и программировать, и он находится в сети всего 2 месяца, и у него 100 миллионов пользователей в месяц. Из-за своей неожиданной «интеллектуальности» AIGC считается «следующим разрушителем технологической отрасли», «большой революцией в производительности контента».

АЙГК

Модель большого языка (LLM) и ChatGPT

Крупноязыковая модель — это технология искусственного интеллекта, которая может усваивать и понимать естественный язык. Обычно он основан на алгоритмах глубокого обучения, которые изучают большие объемы текстовых данных для приобретения лингвистических знаний и могут генерировать текст на естественном языке, например разговоры, статьи и т. д. ChatGPT — это чат-бот на основе большой языковой модели, использующий GPT (Generative Pre -обученный трансформер), разработанный OpenAI для создания лингвистически выразительного текста на естественном языке и взаимодействия с пользователями путем предварительной подготовки и точной настройки больших объемов текстовых данных. Таким образом, можно сказать, что ChatGPT — это чат-бот, основанный на технологии моделирования больших языков. Он использует мощные возможности понимания языка и генерации больших языковых моделей, что позволяет генерировать и понимать текст на естественном языке в разговорах. С развитием методов глубокого обучения возможности и масштаб больших языковых моделей продолжают расти. В то время как исходные языковые модели (например, модели N-грамм) могли учитывать только ограниченную контекстную информацию, современные большие языковые модели (например, BERT, GPT-3 и т. д.) способны рассматривать гораздо более длинную контекстную информацию и обладают более сильными возможностями обобщения и генерации. Большие языковые модели обычно обучаются с использованием глубоких нейронных сетей, таких как рекуррентные нейронные сети (RNN), долговременная и кратковременная память (LSTM), вентилируемые рекуррентные блоки (GRU) и преобразователь. При обучении модели обучаются неконтролируемым или полуконтролируемым образом с использованием крупномасштабного набора текстовых данных. Например, модели BERT обучаются с помощью таких задач, как маски предсказания, следующие предложения и т. д., в то время как GPT-3 использует крупномасштабный подход к обучению с самоконтролем. Крупномасштабные языковые модели имеют широкий спектр приложений в области обработки естественного языка, таких как машинный перевод, генерация естественного языка, системы вопросов и ответов, классификация текстов, анализ настроений и т. д.

Каковы текущие узкие места в обучении LLM?

При обучении больших языковых моделей необходимы высокоскоростные и надежные сети для передачи больших объемов данных. Например, OpenAI выпустила первую версию модели GPT (GPT-1), которая имела размер модели 117 миллионов параметров. После этого OpenAI последовательно выпустила более крупные модели, такие как GPT-2 и GPT-3 со 150 миллионами и 1.75 триллионами параметров соответственно. Такие большие параметры совершенно невозможно обучить на одной машине и требуют высокой зависимости от вычислительных кластеров GPU. Текущее узкое место заключается в том, как решить проблему эффективной связи между узлами в обучающем кластере.

Текущие узкие места в обучении LLM

Одним из наиболее часто используемых алгоритмов связи с графическими процессорами является Ring-Allreduce, основная идея которого состоит в том, чтобы графические процессоры образовывали кольцо и позволяли потоку данных внутри кольца. Графические процессоры в кольце организованы по логике, в которой каждый графический процессор имеет одного левого и одного правого соседа, и он будет отправлять данные только своему правому соседу и получать данные от своего левого соседа. Алгоритм состоит из двух шагов: сначала разбросать-уменьшить, а затем собрать все. На этапе уменьшения разброса графические процессоры будут обмениваться данными, чтобы каждый графический процессор мог получить блок конечного результата. На этапе сбора данных графические процессоры поменяют местами эти блоки, чтобы все графические процессоры получили полный окончательный результат.

Кольцо-Allreduce

В первые дни внутри одной машины не было NVLink, в сети не было RDMA, а пропускная способность была относительно низкой. Не было большой разницы в пропускной способности между одномашинным и многомашинным распространением, так что этого было достаточно, чтобы построить большое кольцо. Но теперь, когда у нас есть NVLink внутри одной машины, использовать тот же метод нецелесообразно. Поскольку пропускная способность сети намного ниже, чем у NVLink, если мы снова будем использовать большое кольцо, это приведет к тому, что высокая пропускная способность NVLink серьезно опустится до уровня сети. Во-вторых, теперь это среда с несколькими сетевыми картами. Также невозможно в полной мере воспользоваться несколькими сетевые адаптеры если используется только одно кольцо. Поэтому в таком сценарии рекомендуется двухступенчатое кольцо. Во-первых, синхронизация данных выполняется между графическими процессорами на одной машине с использованием преимущества высокой пропускной способности NVLink. Затем графические процессоры между несколькими машинами используют несколько сетевых карт для создания нескольких колец для синхронизации данных из разных сегментов. Наконец, графические процессоры внутри одной машины снова синхронизируются, завершая синхронизацию данных всех графических процессоров, и здесь мы должны упомянуть NCCL.

НККЛ

Коллективная коммуникационная библиотека NVIDIA (NCCL) реализует примитивы связи с несколькими GPU и несколькими узлами, оптимизированные для GPU и сетей NVIDIA.

мультиузел с несколькими графическими процессорами

1 GPU->мультиузел с несколькими GPU

NCCL предоставляет подпрограммы для всех сборов, всех уменьшений, широковещательной рассылки, сокращения, уменьшения разброса и двухточечной отправки и получения. Эти подпрограммы оптимизированы для высокой пропускной способности и малой задержки в сетях внутри узла и в сетях NVIDIA Mellanox через высокоскоростные межсоединения PCIe и NVLink.

Зачем использовать сквозную сеть InfiniBand?

Ethernet является широко используемым сетевым протоколом, но его скорость передачи и задержка не соответствуют требованиям обучения больших моделей. Напротив, сквозная сеть InfiniBand представляет собой высокопроизводительную вычислительную сеть, способную обеспечивать скорость передачи до 400 Гбит/с и микросекундную задержку, что значительно превышает производительность Ethernet. Это делает сети InfiniBand предпочтительной сетевой технологией для обучения крупномасштабных моделей. Кроме того, сквозная сеть InfiniBand поддерживает механизмы резервирования данных и исправления ошибок, обеспечивающие надежную передачу данных. Это особенно важно при обучении крупномасштабных моделей, потому что при работе с таким большим количеством данных ошибки передачи данных или потеря данных могут привести к прерыванию или даже сбою процесса обучения. С резким увеличением числа сетевых узлов и ростом вычислительной мощности для высокопроизводительных вычислений как никогда важно устранить узкие места в производительности и улучшить управление системой. InfiniBand считается многообещающей технологией ввода-вывода, которая может улучшить производительность узких мест существующих архитектур ввода-вывода, как показано на рисунке. InfiniBand — это широко распространенный протокол межсоединений с низкой задержкой и высокой пропускной способностью с низкими затратами на обработку, идеально подходящий для передачи нескольких типов трафика (кластеризация, связь, хранение и управление) по одному соединению. В 1999 году IBTA (торговая ассоциация InfiniBand) разработала стандарты, относящиеся к InfiniBand, которые определяют архитектуру ввода/вывода для взаимосвязанных серверов, устройств инфраструктуры связи, систем хранения и встроенных систем в спецификации InfiniBand™. InfiniBand — это зрелая, проверенная технология, которая широко используется в высокопроизводительных вычислительных кластерах.

Схема архитектуры межсоединения InfiniBand

Схема архитектуры межсоединения InfiniBand

Согласно протоколу межсоединений InfiniBand, каждый узел должен иметь адаптер хост-канала (HCA) для установки и поддержания связи с хост-устройствами. Коммутаторы содержат несколько портов и пересылают пакеты данных с одного порта на другой, завершая передачу данных внутри подсетей.

Subnet Manager (SM) используется для настройки локальной подсети и обеспечения ее непрерывной работы с помощью Subnet Manager Packet (SMP) и Subnet Manager Agent (SMA) на каждом устройстве InfiniBand. Subnet Manager обнаруживает и инициализирует сеть, назначает уникальные идентификаторы всем устройствам, определяет MTU (минимальный блок передачи) и генерирует таблицы маршрутизации коммутатора на основе выбранных алгоритмов маршрутизации. SM также выполняет периодические оптические сканирования подсети для обнаружения любых изменений топологии и соответствующим образом настраивает сеть. Сети InfiniBand предлагают более высокую пропускную способность, меньшую задержку и большую масштабируемость, чем другие сетевые протоколы связи. Кроме того, поскольку InfiniBand обеспечивает управление потоком на основе кредитов (когда узел-отправитель отправляет не больше данных, чем количество кредитов, размещенных в приемном буфере на другом конце канала), транспортному уровню не требуется механизм потери пакетов, такой как алгоритм окна TCP, для определения оптимального количества передаваемых пакетов. Это позволяет сетям InfiniBand обеспечивать чрезвычайно высокую скорость передачи данных для приложений с очень низкой задержкой и очень низкой загрузкой ЦП. InfiniBand передает данные с одного конца канала на другой с помощью РДМА технология (Remote Direct Memory Access), протокол, передающий данные напрямую между приложениями по сети без участия операционной системы, потребляя при этом очень мало ресурсов ЦП с обеих сторон (передача с нулевым копированием). Приложение на одном конце просто читает сообщение прямо из памяти, и сообщение успешно передано. Снижение нагрузки на ЦП повышает способность сети быстро передавать данные и позволяет приложениям быстрее получать данные.

Комплексные сетевые решения FiberMall InfiniBand

FiberMall предлагает комплексное решение на базе коммутаторов NVIDIA Quantum-2, смарт-карт ConnectX InfiniBand и гибких 400Gb / s InfiniBand, основанный на нашем понимании тенденций высокоскоростных сетей и обширном опыте реализации проектов высокопроизводительных вычислений и искусственного интеллекта, позволяет снизить затраты и сложность, обеспечивая при этом превосходную производительность высокопроизводительных вычислений (HPC), искусственного интеллекта и гипермасштабируемой облачной инфраструктуры при одновременном снижении затрат и сложности.

Сетевые решения InfiniBand для центров обработки данных FiberMall

Сетевые решения InfiniBand для центров обработки данных FiberMall

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

Наверх