Incident Library
Applied filters ComponentInfiniBand fabricFactorUnreviewed defaultsOrganisationDatabricksClear allEvery case under the filters, with no sentence; newest first.
Suggested filters Search, and the values found in your words appear here.

Graph

  • Root cause
  • Component
  • Symptom
  • Contributing factor
  • Case

Cases1 case

1 to 1 of 1

  1. Symptoms

    Seven hours into a distributed training run on Databricks AI, the job failed with an NCCL timeout.

    Trigger

    A single InfiniBand port used for RDMA NCCL collectives went down once and recovered.

    Root cause
    Component
    Contributing factor
    Detection

    The training job crashed with the NCCL timeout. The continuous health checks, which watched InfiniBand port flapping by count, had not flagged the single flap.

    Remediation
    • Tuned the NCCL_IB_TIMEOUT defaults to be more resilient to short port-down windows
    • Used the port-down signal to crash the job and restart it from a checkpoint instead of waiting for the watchdog
    • Fed the investigation into gpu-monitor, whose RDMA fabric port-down check is thresholded on cumulative downtime rather than flap count
    Action items
    • Tune the NCCL_IB_TIMEOUT defaults to be more resilient
    • Crash and restart the job from a checkpoint on the port-down signal instead of leaving GPUs idle until the watchdog fires
    • Threshold RDMA fabric port-down detection on cumulative downtime, not flap count, in gpu-monitor
    Lessons

    For training impact the signal that matters is cumulative port downtime, not the number of flaps: one long enough flap can crash a multi-day run. NCCL_IB_TIMEOUT, with an effective default of about seven seconds, decides the outcome long before the PyTorch watchdog timeout does. Health checks need to cover the whole node lifecycle: active checks before workloads start, passive checks for silent degradation under load, and periodic multi-node NCCL fabric checks in between.

Check your cluster for this

This case involves InfiniBand fabric and NCCL. kubegap audits a Kubernetes cluster for gaps like these, read-only, from Claude Code or Codex; its checks cite public reports like the ones in this library.

By root cause1