ДаліНаступний посібник
Паралелізм моделі та конвеєра
технічний
Технічний КЕРІВНИЦТВО
Спосіб розділити математику всередині одного шару нейронної мережі на кілька графічних процесорів, щоб модель, завелика для одного пристрою, все ще могла працювати.
Послухайте цей посібникШІ-розказаний · ~2 min
Це важливо, оскільки граничні моделі мають сотні мільярдів параметрів, які жоден графічний процесор не може утримувати або обчислювати достатньо швидко.
Паралелізм тензорів (також званий паралелізмом внутрішньорівневої моделі) розподіляє окремі вагові матриці між графічним процесором, а не розміщує цілі шари на окремих пристроях. У трансформаторі множення великої матриці — проекції уваги та прямий MLP — розділені: наприклад, перша вагова матриця MLP розділена на стовпці, а друга — на рядки, тому кожен графічний процесор обчислює зріз, а єдине повне зменшення об’єднує результати. Увага розподіляється між головами, кожен GPU обробляє підмножину. Оскільки кожен графічний процесор виконує частину кожного рівня одночасно, тензорний паралелізм зменшує пам’ять кожного графічного процесора та прискорює обчислення, але вимагає частого широкосмугового зв’язку між графічним процесором кожного рівня. Ось чому він зазвичай обмежується вузлом, підключеним за допомогою NVLink, і поєднується з конвеєром і паралелізмом даних для дуже великих завдань навчання та обслуговування.
Навчання моделі з параметрами 175B шляхом розподілу вагових матриць кожного шару на 8 GPU в одному вузлі, підключеному за допомогою NVLink, за допомогою Megatron-LM.
Обслуговування моделі чату з параметрами 70B у vLLM із tensor_parallel_size=4, щоб ваги відповідали чотирьом графічним процесорам і відповідали в реальному часі.
Розподіл уваги трансформатора між графічним процесором, щоб кожен пристрій обчислював підмножину, а потім об’єднував виходи для наступного рівня.
Поєднання тензорного паралелізму всередині вузлів і конвеєрного паралелізму між вузлами для навчання моделей з трильйонами параметрів на великих кластерах GPU.
Тензорний паралелізм залишається основоположним, але його все частіше змішують із «тривимірним паралелізмом» (тензор + конвеєр + дані) і поєднують з експертним паралелізмом для моделей Mixture-of-Experts. Такі фреймворки, як Megatron-LM, DeepSpeed і vLLM, автоматизують шардинг. У міру того, як з’єднання GPU (NVLink, NVSwitch) і оптичні мережі стають швидшими, межа вузлів зменшується, створюючи ширші тензорно-паралельні групи. Очікуйте розумнішого автоматичного розпаралелювання, яке вибирає розміри фрагментів і розміри груп, щоб мінімізувати зв’язок для даної топології кластера.
Безплатний розсилок
Три перевірені історії про ШІ щоробочого ранку, написані простою мовою. Безплатно назавжди, без реклами.
Один лист щотижня з понеділка по п'ятницю. Відписатися в один клік. Ми ніколи не продаємо та не передаємо вашу адресу.
Перевір себе
Миттєва зворотна связь на кожну відповідь та сертифікат із перевіреним ідентифікатором, яким можна поділитися, після проходження курсу.
Підтримайте безплатну освіту у сфері ШІ. AI Understanding — це некомерційна організація 501(c)(3) — без реклами, без платних стін, назавжди. Зробіть пожертву
Спосіб розділити математику всередині одного шару нейронної мережі на кілька графічних процесорів, щоб модель, завелика для одного пристрою, все ще могла працювати. Це важливо, оскільки граничні моделі мають сотні мільярдів параметрів, які жоден графічний процесор не може утримувати або обчислювати достатньо швидко.
Тензорний (внутрішньошаровий) паралелізм розбиває вагові матриці всередині шару, тому кожен графічний процесор обчислює частину одного шару, на відміну від конвеєрного паралелізму, який розміщує цілі шари на різних графічних процесорах.
Розбиття першої матриці на стовпці дозволяє кожному GPU застосовувати нелінійність локально; Розбиття другого на рядки означає, що єдиний all-reduce підсумовує часткові виходи, мінімізуючи синхронізацію.
Кожен рівень запускає колективний зв’язок (зменшує всі), тому інтенсивний, чутливий до затримки трафік вимагає швидких внутрішньовузлових зв’язків, таких як NVLink, а не повільніших міжвузлових мереж.
Головки уваги є незалежними, тому вони розподіляються по графічних процесорах — кожен пристрій обчислює деякі головки, а виходи об’єднуються.
All-reduce підсумовує часткові виходи, обчислені на кожному графічному процесорі, щоб вони узгоджувалися з результатом рівня; це відбувається кілька разів на шар під час проходу вперед і назад.
Продовжуйте вчитися
Інші посібники, вибрані для цієї теми
ДаліНаступний посібник
Паралелізм моделі та конвеєра
технічний