NCCL: сначала локальные связи, потом сеть и tuning
NCCL: сначала локальные связи, потом сеть и tuning
Факт. NVIDIA рекомендует сужать проблему до изменения настроек NCCL: сначала встроенная диагностика, GPU-to-GPU/GPU-to-NIC и topology; затем network fabric, latency и bandwidth; после этого runtime/MPI; и только при исправной системе — performance tuning.
Почему важно. Случайный перебор NCCL variables может скрыть причину. Bottleneck часто находится ниже framework: в PCIe/NVLink path, NIC, InfiniBand/RoCE, shared memory или MPI startup.
Как применять: 1. Проверьте GPU health и nvidia-smi topo -m; отдельно подтвердите P2P GPU↔GPU и GPU↔NIC. 2. На multi-node системе сначала измерьте interface, fabric, latency и bandwidth независимо от NCCL workload. 3. Запустите baseline через nccl-tests, затем соберите NCCL_DEBUG=INFO и нужные subsystem filters. 4. Только после исправных system checks меняйте один tuning parameter за раз и сравнивайте с baseline.
Ограничение. Подробный debug создаёт много логов и может раскрывать host/network metadata — не оставляйте его постоянно включённым в production.
На https://verum-ai.uz сейчас указана аренда H200, H100, A100, L40S и RTX 4090. Для distributed workloads такую поэтапную проверку стоит включать в acceptance test.
Источник: NVIDIA NCCL Troubleshooting

