Отказоустойчивое распределенное обучение на Amazon EKS с использованием NVRx
aws ·
В данной статье показано, как интегрировать NVIDIA Resiliency Extension (NVRx) с Amazon EKS для создания отказоустойчивого распределенного обучения больших моделей PyTorch. Решение решает две основные проблемы: синхронное сохранение контрольных точек, которое может занимать до 40% времени обучения, и медленное восстановление после аппаратных или программных сбоев. Для этого используется асинхронное сохранение через TorchAsyncCheckpoint, что позволяет выполнять операции ввода-вывода параллельно с вычислениями и достигать эффективности обучения более 99% по сравнению с базовым вариантом. При восстановлении после сбоев NVRx предлагает перезапуск в процессе выполнения для мягких ошибок и использование ft_launcher для жестких сбоев, сокращая время восстановления с минут до секунд. Тестирование на модели LLaMA-3.1-8B в конфигурациях от 2 до 8 узлов показало, что эти методы значительно превосходят стандартные перезапуски Kubernetes, которые страдают от каскадных таймаутов NCCL. Архитектура использует Amazon FSx for Lustre для общего хранилища и Elastic Fabric Adapters для высокоскоростной сети. Такой подход позволяет командам чаще сохранять контрольные точки без потери утилизации GPU, максимизируя общую эффективность кластера.
aws