Техническое РУКОВОДСТВО

Тензорный параллелизм для больших моделей

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

Прослушайте это руководствоОзвучено ИИ · ~2 min

На этой странице2 минуты чтения
  1. Обзор
  2. Глубокое погружение
  3. Реальная реализация
  4. Будущее тензорного параллелизма для больших моделей
  5. Применение на практике
  6. Продолжайте исследовать
  7. Часто задаваемые вопросы

Обзор

Это важно, потому что передовые модели содержат сотни миллиардов параметров, которые ни один графический процессор не может хранить или вычислять достаточно быстро в одиночку.

Глубокое погружение

Тензорный параллелизм (также называемый параллелизмом внутриуровневых моделей) распределяет отдельные весовые матрицы между графическими процессорами, а не размещает целые слои на отдельных устройствах. В преобразователе большие матричные умножения — проекции внимания и MLP с прямой связью — разделяются: например, первая весовая матрица MLP разделена по столбцам, а вторая — по строкам, поэтому каждый графический процессор вычисляет срез, а одно сокращение всех чисел объединяет результаты. Внимание распределяется между головами, причем каждый графический процессор обрабатывает свое подмножество. Поскольку каждый графический процессор выполняет часть каждого уровня одновременно, тензорный параллелизм уменьшает объем памяти каждого графического процессора и ускоряет вычисления, но требует частого обмена данными с высокой пропускной способностью между графическими процессорами на каждом уровне. Вот почему он обычно ограничивается узлом, подключенным через NVLink, и сочетается с конвейером и параллелизмом данных для очень больших заданий по обучению и обслуживанию.

Реальная реализация

Обучение модели со 175B параметрами путем разделения весовых матриц каждого слоя на 8 графических процессоров в одном узле, подключенном к NVLink, с помощью Megatron-LM.

Обслуживание модели чата с 70B параметрами в vLLM с tensor_parallel_size=4, чтобы веса соответствовали четырем графическим процессорам и реагировали в режиме реального времени.

Разделение голов трансформатора внимания между графическими процессорами, чтобы каждое устройство вычисляло подмножество, а затем объединяло выходные данные для следующего уровня.

Сочетание тензорного параллелизма внутри узлов и конвейерного параллелизма между узлами для обучения моделей с триллионом параметров на больших кластерах графических процессоров.

Будущее тензорного параллелизма для больших моделей

Тензорный параллелизм остается основополагающим, но все чаще его смешивают с «3D-параллелизмом» (тензор + конвейер + данные) и объединяют с экспертным параллелизмом для моделей «Смесь экспертов». Такие платформы, как Megatron-LM, DeepSpeed ​​и vLLM, автоматизируют сегментирование. По мере того, как межсоединения графического процессора (NVLink, NVSwitch) и оптические сети становятся быстрее, ограничение на границу узла ослабляется, позволяя создавать более широкие тензорно-параллельные группы. Ожидайте более разумного автоматического распараллеливания, которое выбирает размеры сегментов и групп, чтобы минимизировать обмен данными для данной топологии кластера.

Применение на практике

Почему это важно

  • Стоимость и бюджет. Архитектурные решения влияют на производительность и эксплуатационные расходы на протяжении многих лет.
  • Более четкие решения. Техническое образование помогает командам выбрать правильный стек, а не только самый новый.
  • Контроль качества. Лучший инженерный выбор снижает вероятность возникновения проблем с надежностью на производстве.

Следите за

  • Оптимизация одного теста может скрыть более широкие недостатки системы.
  • Затраты на инфраструктуру и техническое обслуживание часто недооцениваются.
  • Пробелы в безопасности и наблюдаемости могут увеличиваться по мере усложнения систем.

Следующие шаги

  1. Определите целевые показатели задержки, качества и стоимости перед внедрением.
  2. Тестирование при реалистичной нагрузке и условиях данных.
  3. Мониторинг прибора на наличие ошибок, дрейфа и влияния пользователя.
  4. Перед масштабированием подготовьте пути отката и реагирования на инциденты.

Продолжайте исследовать

Бесплатная рассылка

Получайте ежедневный AI-обзор

Три проверенных AI-истории каждое утро буднего дня, написанные простым английским. Бесплатно навсегда, без рекламы.

Одно электронное письмо каждый будний день. Отписаться в один клик. Мы никогда не продаем и не передаем ваш адрес.

Проверьте себя

Take the Tensor Parallelism for Large Models quiz

Мгновенная обратная связь по каждому ответу и общий сертификат с проверяемым идентификатором после прохождения курса.

Начать тест

Поддержите бесплатное образование в области искусственного интеллекта. AI Understanding — это некоммерческая организация 501(c)(3). Никакой рекламы и платного доступа. Сделать пожертвование

Часто задаваемые вопросы

Что такое тензорный параллелизм для больших моделей?

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

Что разделяет тензорный параллелизм между графическими процессорами?

Тензорный (внутриуровневый) параллелизм сегментирует весовые матрицы внутри слоя, поэтому каждый графический процессор вычисляет часть одного и того же слоя — в отличие от конвейерного параллелизма, при котором целые слои размещаются на разных графических процессорах.

Как разделяются две весовые матрицы в MLP-разделении в стиле Мегатрона, чтобы минимизировать общение?

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

Почему тензорный параллелизм обычно сохраняется в пределах одного узла?

Каждый уровень запускает коллективную связь (все-сокращение), поэтому тяжелый, чувствительный к задержкам трафик требует быстрых внутриузловых каналов, таких как NVLink, а не более медленных межузловых сетей.

Как механизм внимания обычно распараллеливается при тензорном параллелизме?

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

Какая коллективная операция обычно объединяет частичные результаты при тензорном параллелизме?

All-reduce суммирует частичные выходные данные, вычисленные на каждом графическом процессоре, чтобы они согласовывались с результатом слоя; это происходит несколько раз для каждого слоя при прямом и обратном проходах.

Продолжайте учиться

Связанные руководства

Другие руководства, выбранные по этой теме

Получите бесплатный AI-сертификатКороткий бесплатный курс и экзамен. Без стоимости, без карты. Около 2,5 часов.Начать бесплатно →