NVIDIA/nvidia-resiliency-ext
NVIDIA Resiliency Extension is a python package for framework developers and users to implement fault-tolerant features. It improves the effective training time by minimizing the downtime due to failures and interruptions.
解决的问题
NVIDIA Resiliency Extension (NVRx) 解决了在大规模 AI 训练期间维持生产力的挑战。它能在发生硬件或软件故障时,防止训练任务完全失败,并将进度损失降至最低,直到相同的故障点为止。
工作原理
NVRx 为基于 PyTorch 的工作负载提供了一套模块化工具,以自动处理故障。它使用系统级的健康检查和故障检测,来识别阻碍效率的挂起 rank 或缓慢的“掉队者”(GPU/CPU 性能问题)。当检测到故障时,它支持在进程内重启训练,而无需重新分配计算节点。它还提供了异步和本地检查点框架,以频繁且高效地保存进度,同时不会拖慢训练过程。
适用人群
从事大规模 AI 训练的研究人员和开发人员,特别是使用 PyTorch、PyTorch Lightning 或 NVIDIA NeMo 的用户,他们需要确保其训练任务稳定且能够抵御硬件故障。
亮点
- 自动重启:在作业内重启训练,避免重新分配 SLURM 节点。
- 故障与掉队者检测:监控 GPU 和 CPU 性能,以识别挂起的 rank 和较慢的节点。
- 高效检查点:支持异步和本地检查点,以减少工作损失。
- 框架集成:与 PyTorch Lightning 和 NVIDIA NeMo 无缝集成。
相关
- 项目
- 项目
- 项目
- 项目
- 项目