Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Принципы распределенного ML

Согласование работы парка требует решать задачи, которых нет у одной машины. Если часть I построила физическую основу, то часть II закладывает логику распределения: алгоритмы, протоколы и стратегии координации, которые превращают набор независимых ускорителей в единую машину. Переход определяет физика распределенного обучения: она дает рассуждения из первых принципов о том, почему добавление GPU не всегда дает линейное ускорение и почему скрытым узким местом часто оказывается коммуникация, а не вычисления.

В таком масштабе инженерная задача сводится к компромиссу между распараллеливанием и координацией. Разбиение модели снижает нагрузку на память каждого устройства, но увеличивает объем коммуникации, необходимой для синхронизации весов. Масштабирование до тысяч узлов сокращает время обучения, но одновременно снижает среднюю наработку на отказ (MTBF), и отказоустойчивость становится обязательным компонентом системы, а не операционной роскошью. Эти принципы разлагают коммуникационный налог, введенный в части I, и добавляют надежностный налог масштаба.

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

Принцип «универсальный закон масштабирования»

Инвариант: для передовых базовых моделей функция потерь () улучшается как степенная функция вычислений (), размера набора данных () и числа параметров (), где обозначает эмпирический показатель масштабирования. Упрощение «только вычисления», которое используется для иллюстрации убывающей отдачи:

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

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

Принцип «закон парка (закон времени распределенного шага)»

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

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

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

Принцип «компромисс пропускной способности и задержки (модель α-β)»

Инвариант: время коммуникации — функция фиксированной задержки (), размера сообщения () и зависящей от сообщения пропускной способности ().

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

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

Принцип «закон контрольных точек Янга–Дэйли»

Инвариант: оптимальный интервал контрольных точек () уравновешивает стоимость записи контрольной точки () и ожидаемую стоимость повторения потерянной работы из-за системных отказов ().

Следствие: контрольные точки не «бесплатны». С ростом кластера MTBF падает, и контрольные точки приходится делать чаще. Это требует хранилища с высокой пропускной способностью (буферов пиковой нагрузки, burst buffers), чтобы ввод-вывод не доминировал во времени обучения.

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

Принцип «смещение накладных расходов»

Инвариант: оптимизации распределенного ML часто перемещают накладные расходы между вычислениями, коммуникацией и координацией (таксономия C). Уменьшение одного члена может увеличить другой, поэтому в проектных решениях нужно оценивать все три.

Следствие: асинхронное обучение может убрать глобальные барьеры координации (), но способно породить устаревание градиентов, которое проявляется в дополнительных итерациях обучения (). Конвейерный параллелизм может сократить объем коммуникации по сравнению с более мелким разбиением модели, но добавляет время пузырей конвейера (). Таксономия C показывает, где каждое проектное решение платит свои накладные расходы.

С этими инвариантами часть II показывает, как парк координирует работу распределенного обучения: стратегии параллелизма (по данным, тензорный, конвейерный и экспертный), которые распределяют нагрузку между тысячами ускорителей; коллективные операции (AllReduce, AllGather, AllToAll), которые связывают эти ускорители в единый компьютер; механизмы отказоустойчивости, которые поглощают неизбежные отказы масштаба; и слой оркестрации (Slurm, Kubernetes и родственные системы), который выделяет парк под нагрузки. Вместе эти главы развивают алгоритмическую и операционную дисциплину, превращающую физический парк части I в работающую систему распределенного обучения.