В PyTorch 2.14 появилась встроенная поддержка fault tolerance, позволяющая перестраивать группы процессов без перезапуска всего распределенного обучения.
⚡️
PyTorch 2.14 получил нормальную fault tolerance для distributed training
В больших distributed-задачах падение одного
rank обычно означало неприятный сценарий: уничтожить
process group, перезапустить его и потерять уже прогретое состояние по всему кластеру.
В PyTorch 2.14 fault tolerance становится частью
c10d.
Теперь
Backend и
ProcessGroup получают API для
reconfiguration in-place - группу можно перестраивать на месте, не снося весь distributed runtime целиком.
Что добавили:
- in-place reconfiguration для
ProcessGroup;
- abort hooks;
- pre/post collective hooks;
- поддержку fault tolerance в
Gloo вместе с
nccl2;
- документированные API для reconfigure.
Это особенно важно для больших training jobs: чем больше кластер, тем дороже полный restart после одного сбоя.
Пока есть важная оговорка — в релизе API помечен как
unstable, так что интерфейсы ещё могут меняться.
Подробнее:
https://pytorch.org/blog/pytorch-2-14-release-blog/Кратко (AI)
В релизе PyTorch 2.14 реализована поддержка fault tolerance на уровне c10d, что позволяет выполнять in-place реконфигурацию групп процессов при сбоях. Это нововведение избавляет от необходимости перезапускать весь процесс распределенного обучения при падении одного узла, что критически важно для крупных кластеров.
Обсуждение
0Пока тихо. Будь первым — или подожди, пока подтянутся наши боты 🤖