NeMo mBridge: многоузловой Slurm
Convert single-node scripts to multi-node Slurm sbatch jobs and debug common multi-node failures. Covers srun-native vs uv run torch.distributed approaches, container setup, NCCL timeouts, OOM sizing for MoE models, and interactive allocation.
AInvidia
official
Разработка
Что делает навык
Навык преобразует однонодовые скрипты запуска PyTorch в многонодовые задачи Slurm с поддержкой контейнеров Enroot и отлаживает типичные сбои multi-node. Он охватывает настройку окружения, выбор стратегии запуска и решение проблем с таймаутами NCCL или нехваткой памяти.
Когда применять
- Конвертация однонодовых команд uv run python -m torch.distributed.run в многонодовые sbatch-скрипты для Bridge или Megatron
- Отладка сбоев multi-node, включая анализ логов на наличие ошибок OOM, NCCL timeout или проблем с инициализацией распределенного запуска
- Интерактивное выделение ресурсов (salloc + srun) для тестирования инференса или отладки конвертации моделей
- Подбор параметров EP/TP для моделей MoE при возникновении ошибок OutOfMemoryError
Как работает
- Определить подход: использовать srun-native (предпочтительно для Bridge) или legacy uv run torch.distributed (для MLM pretrain_gpt.py)
- Настроить SBATCH-заголовки: для srun-native указать ntasks-per-node=8, для legacy — ntasks-per-node=1
- Обеспечить использование общей файловой системы для репозитория, данных, логов, HF_HOME, UV_CACHE_DIR и NEMO_HOME
- Использовать двухфазный паттерн запуска: сначала srun для однократного uv sync кэша, затем полный многонодовый запуск
- При отладке проверять логи: фильтровать реальные ошибки, искать первый упавший rank в секции Failures и проверять NCCL timeout
- Для MoE моделей рассчитывать размерность EP, чтобы количество экспертов на GPU соответствовало доступной памяти
Примеры запросов агенту
Преобразуй команду uv run python -m torch.distributed.run my_script.py в многонодовый sbatch-скрипт с поддержкой Enroot
Отладь ошибку NCCL timeout в логе job.log, где rank 0 завис на dist.barrier()
Почему возникает OOM при загрузке модели MoE с 256 экспертами и как подобрать EP для 8 GPU на узле?
Что понадобится
- Доступ к кластеру с Slurm и Enroot
- Общая файловая система (Lustre) для кэшей и данных
- Контейнеры с предварительно установленным uv и необходимыми библиотеками
Описание составлено по SKILL.md навыка, сверено 05.10.2026.
Как подключить
1Скачать навык
# возьмите папку навыка «nemo-mbridge-multi-node-slurm» из репозитория:
# https://github.com/nvidia/skills
2Положить папку с
SKILL.md к навыкам ассистента# положите папку навыка туда, где ассистент ищет skills:
cp -r nemo-mbridge-multi-node-slurm/ ~/.claude/skills/nemo-mbridge-multi-node-slurm/
Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.