Вычислительная инфраструктура

Collective Operations

Коллективные операции

актуальноТекущий рабочий стандарт

Направления: Инженерия ИИ · Распределённый ML

AllReduce, Broadcast, AllGather — примитивы, которыми процессы обучения обмениваются тензорами.

S — размер , B — пропускная способность канала, N — число узлов: время почти не растёт с масштабом, если сеть не узкое место

Ключевые тезисы

  • AllReduce складывает всех процессов и раздаёт результат каждому: после него копии моделей снова идентичны.
  • Кольцевой алгоритм передаёт по сети примерно 2·(N−1)/N от размера независимо от числа узлов.
  • NCCL перекрывает обмен с обратным проходом: уходят по мере готовности слоёв, а не в конце шага.

Подробный разбор

1 подтема — объяснения, формулы, примеры и интерактивные графики.

ОперацияЧто делает
Broadcastрассылает тензор одного процесса всем
складывает тензоры всех процессов в один
AllReduceскладывает и раздаёт результат всем — основной примитив обучения
AllGather / ReduceScatterсобирает и раздаёт шарды — основа FSDP

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

На практике

NCCL перекрывает обмен с обратным проходом: слоя уходят в сеть, пока считаются градиенты предыдущего. Поэтому размер бакета (bucket_cap_mb) заметно влияет на итоговую скорость — слишком мелкие бакеты дают много мелких пересылок.

Видеолекции

Тайм-кода именно на эту тему в записях нет. Но глава «Вычислительная инфраструктура» разобрана в курсах целиком — с той оговоркой, что место в записи придётся искать самому.

Связанные темы

Обучение на GPU

GPU Architecture85%

Архитектура GPU · Вычислительная инфраструктура

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

AI Accelerators85%

Ускорители: GPU, TPU, NPU · Вычислительная инфраструктура

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

GPU in PyTorch85%

GPU в PyTorch · Вычислительная инфраструктура

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

Distributed Training85%

Распределённое обучение · Вычислительная инфраструктура

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

Cluster Networking85%

Сеть кластера · Вычислительная инфраструктура

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

Training Throughput85%

Ускорение обучения · Вычислительная инфраструктура

Что делать, когда число GPU фиксировано: снизить точность, накопить градиент, пересчитать активации, разгрузить загрузчик данных.

Mixed Precision85%

Смешанная точность · Оптимизация обучения

Обучение в fp16 или bf16 при накоплении в fp32: двукратная экономия памяти и заметное ускорение.

Batch size85%

Размер батча · Оптимизация обучения

Число объектов на одно обновление весов: влияет на скорость, память и качество обобщения.

Кому эта тема нужна

Профильная компетенция для роли: MLOps-инженер.

Усиливает профиль: Data Engineer, Исследователь.

Спрашивают на собеседовании: YADROИнфраструктура обучения.

Тема в работе целиком

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

Следующий шагТема в работе: Обучение, когда данные не влезают в узелСквозной разбор архитектуры, где эта тема — один из кирпичей: требования, бюджет, развилки и режимы отказа.Перейти →

Глава «Вычислительная инфраструктура» последний раз правилась . Нашли ошибку — напишите.