Treinamento distribuído tolerante a falhas no Amazon EKS usando NVRx
aws ·
Este artigo demonstra como integrar a Extensão de Resiliência da NVIDIA (NVRx) ao Amazon EKS para criar treinamento distribuído tolerante a falhas para modelos PyTorch em larga escala. Ele aborda dois principais gargalos: o checkpointing síncrono, que pode bloquear até 40% do tempo de treinamento, e a recuperação lenta de falhas de hardware ou software. A solução utiliza checkpointing assíncrono por meio do TorchAsyncCheckpoint para sobrepor E/S com computação, alcançando mais de 99% de eficiência no treinamento em comparação à linha de base. Para recuperação de falhas, o NVRx oferece reinicialização no processo para falhas leves e ft_launcher para quedas graves, reduzindo os tempos de recuperação de minutos para segundos. Os benchmarks realizados no LLaMA-3.1-8B, variando de 2 a 8 nós, mostram que esses métodos superam significativamente as reinicializações padrão do Kubernetes, que sofrem com cascata de timeouts do NCCL. A arquitetura aproveita o Amazon FSx for Lustre para armazenamento compartilhado e Adaptadores de Fabric Elásticos para rede de alta largura de banda. Essa abordagem permite que as equipes realizem checkpoints com mais frequência sem sacrificar a utilização da GPU, maximizando a eficiência geral do cluster.
aws