глоссарий

FSDP

FSDP

FSDP, или Fully Sharded Data Parallel, — способ обучения нейросетей, при котором веса, градиенты и состояния оптимизатора не дублируются на каждом ускорителе, а разрезаются на части и распределяются между GPU. Если раньше каждая видеокарта хранила полную копию модели, то теперь память всех устройств работает как единый пул.

Зачем это важно? Модели становятся огромными, и даже мощная видеокарта с 80 ГБ не вмещает их. FSDP позволяет обучать сети с миллиардами параметров на обычных GPU, обходя ограничения каждого отдельного чипа. Поэтому FSDP сейчас используют почти все, кто обучает большие модели. Без него не обойтись.

Как это работает интуитивно? Представьте пазл: вы не держите все детали в одной комнате, а раскладываете их по соседним. Для сборки фрагмента приносите нужные детали из других комнат, собираете и возвращаете обратно. Так и FSDP: каждый GPU хранит лишь свой кусок параметров, при вычислениях подгружает недостающее у соседей, затем отправляет обновления назад. Связи между картами — это коридоры между комнатами.

Пример: вы хотите обучить языковую модель с 13 миллиардами параметров на восьми видеокартах по 40 ГБ. С FSDP это работает: каждая карта хранит меньше двух миллиардов параметров, остальные временно подтягиваются. Без этого эксперимента не запустился бы.

Итог: FSDP — не ускоритель, а способ максимально эффективно использовать имеющуюся память. Это базовый инструмент для работы с большими моделями.