Новости

Обучение графического процессора Llama 3.1 дает сбой как сумасшедший. Есть ли крупный производитель, использующий сервер центрального процессора для запуска большой модели с сотнями миллиардов параметров?

2024-08-01

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina


Новый отчет мудрости

Редактор: Редакционный отдел

[Введение в новую мудрость]Пришло время использовать универсальный сервер ЦП для запуска больших моделей с сотнями миллиардов параметров!

Маск построил крупнейший в мире суперкомпьютер, состоящий из 100 000 H100, подключенных за 19 дней, и полностью посвятил себя обучению Grok 3.

В то же время зарубежные СМИ сообщили о том, что следующий суперкомпьютерный кластер, созданный совместно OpenAI и Microsoft, будет состоять из 100 000 ГБ200.

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

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


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

Если взять в качестве примера стабильность, то за 54 дня обучения Llama 3.1 кластер H100 Meta из 16 000 блоков столкнулся в общей сложности с 419 неожиданными сбоями, что эквивалентно в среднем одному каждые 3 часа.

Из них 148 раз (30,1%) были вызваны различными сбоями графического процессора.

Напротив, было только 2 прерывания, вызванных сбоями процессора.


С другой стороны, если вы хотите запустить Llama 3.1 405B, вам необходимо подключить к ней две рабочие станции 8×H100 DGX — то есть 1280 ГБ видеопамяти.

Однажды воин попытался запустить его на 4090, но, подождав 30 минут, модель медленно выплюнула «The».


Полный ответ занял целых 20 часов.

Друзья, знакомые с обучением моделей и логическими выводами, знают, что в этих вещах нет ничего удивительного.

Построение кластера (конфигурация графического процессора, проектирование сети, оптимизация дорожек и т. д.), управление кластером (мониторинг в реальном времени, устранение неполадок и т. д.)… все это «камни преткновения».

Что делать компании, которой не хватает соответствующего опыта и капитала?


Недавно инженеры отдела исследований и разработок компании Inspur Information использовали всего 4 процессора для запуска «Source 2.0» с сотнями миллиардов параметров на сервере общего назначения!

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


Задайте ему еще один аргументирующий вопрос: на борту лодки на высоте 2 метра над уровнем моря подвешена лестница. Если морская вода поднимается на полметра в час, через сколько часов морская вода погрузит лестницу в воду?

Аналогичным образом, ИИ предоставляет подробные шаги по решению проблем и дает ответы практически с нулевой задержкой.



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

Как Inspur Information это делает?

Используйте 4 процессора для использования больших моделей с сотнями миллиардов параметров.

Чтобы получить вывод большой модели с сотнями миллиардов параметров на одном сервере, необходимо выполнить два основных этапа, каждый из которых предъявляет жесткие требования к вычислительной мощности.

Во-первых, существует этап предварительного заполнения, также называемый этапом прямого распространения.

Этот этап включает в себя обработку входных данных и первое считывание параметров модели.

Например, когда вы вводите подсказку «Напишите мне статью об ИИ», на этапе предварительного заполнения все токены и параметры модели в вопросе будут сразу введены в расчет.

Иногда этот ввод может состоять из нескольких слов, тысяч слов или книги.

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

Во время расчета первого токена, поскольку модель загружается впервые, все весовые параметры, а также KV Cache и другие данные будут сохранены в памяти.

Это в 2-3 раза больше места в памяти, занимаемого самими параметрами модели.

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

Во-вторых, существует этап декодирования, то есть этап, на котором модель начинает выводить результаты после ввода всех вопросов.

На этом этапе единственное требование к большим моделям — как можно более быстрый вывод. В то же время проблема больше не связана с вычислительной мощностью, а является проблемой «передачи данных».

Он содержит две части «передачи данных»:

  • Большой объем KV-кэша, сгенерированный на этапе предварительного заполнения, необходимо переместить из видеопамяти/памяти в вычислительный блок (очень большая рабочая нагрузка).

  • Передача самих параметров модели

Эти передачи играют решающую роль в скорости расчета и вывода больших моделей. Передача данных происходит очень быстро, и скорость объявления LLM также будет высокой.

Выходные данные LLM в основном генерируют токены один за другим через KV Catch и сохраняют вектор ключ-значение нового фрагмента слова после каждого шага генерации.

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

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

Графический процессор – это еще не все

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

расходы

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

Только хорошо финансируемые технологические гиганты, такие как Microsoft и Google, могут позволить себе такие расходы.

С другой стороны, это не только не по карману, но и не по карману.

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

Видеопамять

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

Текущая сетевая архитектура LLM в отрасли постепенно перешла от GPT к MoE. Масштаб параметров больших моделей, ведущих к AGI, будет только увеличиваться в геометрической прогрессии.

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

Для моделей с десятками миллиардов параметров достаточно 20-30Гб видеопамяти. Однако, если вы хотите запустить 100 миллиардов параметров, вам понадобится около 200-300 ГБ видеопамяти.

Нынешние массовые ИИ-чипы обычно имеют всего несколько десятков ГБ видеопамяти, что, очевидно, не может вместить такую ​​большую модель. (Самый мощный чип AI в настоящее время не достиг 200 ГБ)


Недооцененный сервер общего назначения

Если графический процессор не работает, начните с процессора.

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

В процессе конкретной практики инженеры Inspur Information начали с аппаратных ресурсов и уровней алгоритмов, чтобы преодолеть каждый «камень преткновения».

Сверхбольшая память + высокоскоростная полоса пропускания

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

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

Что касается алгоритмов,Универсальный сервер Inspur Information может одновременно поддерживать основные платформы искусственного интеллекта, такие как PyTorch и TensorFlow, а также популярные инструменты разработки, такие как DeepSpeed, удовлетворяя потребности пользователей в более зрелой, простой в развертывании и более удобной открытой экосистеме.

С точки зрения общения,Конструкция полноканального соединения шины UPI (Ultra Path Interconnect) обеспечивает эффективную передачу данных между ЦП:

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

  2. Обеспечивает высокую скорость передачи данных до 16 ГТ/с (гига переводов в секунду).


Кроме того, инженеры по исследованиям и разработкам Inspur Information также оптимизировали пути проводки и непрерывность импеданса между процессорами, а также между процессорами и памятью.

Основываясь на результатах трехмерного моделирования, они скорректировали расположение переходных отверстий, чтобы уменьшить перекрестные помехи сигнала до уровня ниже -60 дБ, что на 50% ниже, чем у предыдущего поколения.

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

Что касается памяти,Можно сказать, что это самое большое преимущество серверов общего назначения.

  • емкость

Для 4-процессорного сервера вам нужно всего лишь подключить 8 карт памяти по 32 ГБ к каждому процессору, чтобы легко достичь объема 1 ТБ. При полной установке его можно даже расширить до 16 ТБ и поддерживать модели с числом параметров до одного триллиона.

  • пропускная способность

В сочетании с памятью DDR5 можно достичь теоретической пропускной способности 4800 МГц × 8 бит × 8 каналов × 4 ÷ 1024 = 1200 ГБ/с.

Фактические результаты измерений показывают, что пропускная способность чтения составляет 995 ГБ/с, полоса пропускания записи — 423 ГБ/с, а полоса пропускания чтения и записи — 437 ГБ/с.

Эти данные сопоставимы с некоторыми графическими процессорами или картами-ускорителями, оснащенными памятью GDDR.


Но одного оборудования недостаточно

Недостаточно полагаться исключительно на аппаратные инновации. ЦП сложно выполнять крупномасштабные параллельные вычисления алгоритмов больших моделей.

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

При расчете в соответствии с точностью BF16, если вы хотите, чтобы задержка работы модели размером 100 миллиардов была меньше 100 мс, пропускная способность связи между памятью и вычислительным блоком должна быть не менее 2 ТБ/с.

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

Причина очевидна: хотя последний имеет весьма универсальное и высокопроизводительное вычислительное ядро, он не имеет параллельной рабочей среды.

Вообще говоря, сервер общего назначения сначала передает вес модели в ЦП, а затем позволяет ему последовательно подключаться к другим ЦП для реализации передачи данных о весе.

Однако, поскольку во время работы большим моделям приходится часто передавать веса алгоритмов между памятью и ЦП, следствием этого является то, что использование полосы пропускания между ЦП и памятью не является высоким, а накладные расходы на связь чрезвычайно высоки.


Как решить проблему?Внедряйте инновации с помощью алгоритмов

В ответ на вышеупомянутые проблемы Inspur Information предложила две технологические инновации: «Тензорная параллель» (Tensor Parallel) и «Количественная оценка NF4», и успешно реализовала вывод в реальном времени модели Yuan2.0-102B размером в сотни миллиардов.

По результатам анализа производительности можно четко увидеть распределение времени расчета различных частей модели:

Время работы линейного слоя составляет 50%, время работы свертки — 20%, время связи агрегации — 20%, а другие вычисления — 10%.

Обратите внимание, что в течение всего процесса вывода время расчета составляет 80%!

Это резко контрастирует с использованием нескольких карт-ускорителей PCIe AI — накладные расходы на связь последних могут достигать 50%, что приводит к серьезной трате вычислительной мощности.


Таблица результатов анализа производительности модели Yuan2.0-102B

тензорный параллелизм

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

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

Однако тензорный параллелизм делит параметры модели на более мелкие детали, требуя от ЦП выполнения синхронизации данных после каждого тензорного расчета.

Для этого требования упомянутая выше технология соединения полноканальной шины UPI может полностью удовлетворить это требование (пропускная способность связи составляет до 16 ГТ/с).

В конечном итоге эта совместная параллельная работа напрямую увеличила эффективность вычислений в 4 раза!


Количественное определение NF4

Что касается проблемы недостаточной пропускной способности памяти, то модель необходимо «уменьшить» без ущерба для точности, то есть квантовать.

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

Здесь Inspur Information использует редкий метод квантильной количественной оценки — NF4 (4-значный NormalFloat).


Метод квантования NF4 может сжать размер Yuan2.0-102B до 1/4 исходного размера.

В частности, основная идея NF4 заключается в обеспечении равенства количества значений входного тензора в пределах интервала квантования.

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

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

Таким образом, квантованная модель может не только соответствовать требованиям точности, но и значительно сократить объем данных доступа к памяти для крупномасштабных параллельных вычислений, тем самым удовлетворяя требованиям декодирования рассуждений в реальном времени.


Интервалы данных для методов квантования целых чисел или с плавающей запятой обычно распределяются равномерно или экспоненциально.

Чтобы еще больше сжать весовые параметры модели, команда также использовала технологию вложенного квантования (Double Quant).

Это вторичное квантование, основанное на квантовании NF4.

Поскольку NF4 будет генерировать большое количество параметров масштабирования после квантования, если для их хранения используются 32-битные числа с плавающей запятой (FP32), будет занят большой объем памяти.

Для LLM с сотнями миллиардов параметров, если каждые 64 параметра вычисляются как блок квантования (размер блока = 64), только для хранения параметров масштабирования требуются дополнительные 6 ГБ памяти: (100Б ÷ 64) × 4 = 6 ГБ.

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

При использовании 256 в качестве размера блока квантования (размер блока = 256) дополнительное пространство, необходимое для хранения всех параметров масштаба, составляет всего 1,57 ГБ: (100Б ÷ 64 ÷ 256) × 4 + (100Б ÷ 64) × 1 = 1,57 ГБ.

Благодаря вложенному квантованию каждый весовой параметр модели занимает всего 4 байта памяти, что экономит много памяти по сравнению с исходным FP32.

В то же время это повышает эффективность передачи данных из памяти в процессор в 4 раза.

Такая оптимизация значительно снижает ограничение полосы пропускания памяти на эффективность вывода и декодирования модели Yuan2.0-102B, тем самым дополнительно улучшая производительность вывода модели.

Так называемая универсальная означает, что ею может пользоваться каждый.

На данный момент информация Inspur успешно отправлена!

Благодаря оптимизации системы NF8260G7 компании Inspur Information впервые в отрасли поддерживает работу больших моделей с сотнями миллиардов параметров, основанных исключительно на процессорах общего назначения.

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

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


Конечной целью научно-технического прогресса должно быть падение в мир смертных.

В настоящее время AIGC проникла в тысячи отраслей. ИИ проник в каждое вычислительное устройство с угрожающей скоростью.

С января по апрель 2024 года количество выигравших заявок на отечественные крупногабаритные модели превысило общее количество за весь 2023 год, а раскрытое количество выигравших заявок достигло 77% от общего количества за весь 2023 год.

Практики финансовой индустрии, больничных амбулаторий и корпоративных ИТ-отделов обнаружили это: вычислительной инфраструктуры традиционных отраслей уже недостаточно!

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

Инициатива Inspur Information позволяет клиентам в сфере Интернета, финансов, медицины и других отраслей добиться эффективного развертывания и сэкономить более 80% затрат на строительство при первых инвестициях.

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

Отныне все расчеты выполняются ИИ.

Использованная литература:

https://mp.weixin.qq.com/s/1wYt7dfoVy2J1FFkOJjRTg