AI Infra Interviews logo
← Networking, Interconnects & Storage / 06
medium★ EssentialCrusoeLambdaCoreWeave

A 64-node job's all-reduce runs at a third of the expected bandwidth. Walk me through finding the cause.

A bandwidth regression narrows the search only after the experiment is defined. Work through rank-count normalization, controlled path tests and the difference between collective time and training progress.

Updated Sep 2026 · Learn how AI infrastructure works through explanations, worked examples and diagrams, then practise applying it to interview questions.

TL;DR: Validate the expected number, reproduce the collective under matched conditions, and vary scale and placement to narrow the cause. A third of the previous bandwidth does not identify a faulty link or imply a threefold slower training step. Separate logical bandwidth, normalized bus bandwidth, rank arrival and exposed communication before changing hardware or NCCL settings.

How to approach it

First ask what “expected” means: a vendor limit, an acceptance run, or last week's same workload. Fix the message size, rank count, dtype, mapping and timing boundary before comparing. Then contrast isolated collectives with the application and local pairs with the full group, attaching counter changes to each experiment. Close by verifying correctness and application progress after a targeted change.

A strong answer

A 64-node job can show a sharp communication regression while every device dashboard remains green. That is enough to investigate, but not enough to replace a cable. Start by preserving the failing allocation, logs and launch configuration so the next run remains comparable.

Translate the report into an experiment. Assume eight ranks per node, one per GPU: 64 × 8 = 512 ranks, not 64. Save the collective type, payload bytes, datatype, process/GPU mapping, runtime versions, in-place setting, warm-up and iterations. Check correctness results before trusting performance. Debugging a Slow All-Reduce is the free reference for interpreting the columns.

For a synthetic 256 MiB all-reduce, suppose a matched baseline takes 20 ms and the suspect run takes 60 ms:

S = 256 × 1,048,576 = 268,435,456 bytes per rank
algbw = S / elapsed_seconds / 1e9
baseline = 268,435,456 / 0.020 / 1e9 = 13.4217728 GB/s
suspect  = 268,435,456 / 0.060 / 1e9 =  4.4739243 GB/s

all-reduce busbw factor = 2 × (512 - 1) / 512 = 1.99609375
baseline busbw ≈ 26.79 GB/s; suspect busbw ≈ 8.93 GB/s
sanity: the factor is unchanged. Three times the duration gives one-third the rate.

NVIDIA's performance definitions define this normalization. It does not measure bytes on a particular NIC or establish which collective algorithm ran. A nominal 400 Gb/s port is 50 GB/s before overhead; comparing it to a whole collective needs the actual mapping, shared paths and direction of traffic.

Find the exposed delay. If exactly one non-overlapped collective changes from 20 to 60 ms and the rest of a step remains 980 ms, the step grows from 1,000 to 1,040 ms. Throughput becomes 1,000/1,040 ≈ 96.15% of baseline, a 3.85% decrease. Many collectives or lost overlap can cause a larger impact; measure those dependencies rather than extrapolating from one rate.

Baseline · 1,000 ms step 980 ms other + 20 ms collective Suspect · 1,040 ms step 980 ms other + 60 ms collective 0 520 1,040 ms Assumes no communication overlap.

Use scale as a controlled variable. Run all_reduce_perf with representative sizes using the project's launcher guidance. Compare local GPU pairs and a node, remote pairs, then the full group. Sweep both small and large messages. Preserve software and affinity where possible, record repeats and alternate baseline/suspect runs to reduce time-of-day confounding. These are instructions for a hardware test, not a claim that one was executed for this answer.

ResultNext discriminating experiment
Local pairs slowCompare device paths, clocks and competing work
Some remote pairs slowRe-test an endpoint with another peer/path
Pairs fast, group slowRestore contention; inspect shared links and algorithm selection
Isolated test fast, job slowInspect rank arrival and compute/communication overlap
What did splitting the job change?Full group is slowKeep the mapping and baseline.Record repeated timings.Both halves become fastFewer ranks, different traffic,possibly another algorithm.Restore the missing conditionTest shared-path contention.A fast half clears no whole rack.A split is an experiment,not a hardware certificate.

If each half of the job runs quickly when tested alone, do not immediately clear every node. Splitting the job removed shared traffic and may have changed the collective algorithm. Bring those conditions back in a controlled test to distinguish congestion from an endpoint problem. The expected bandwidth can also change with rank count and message size, even on a well-provisioned fabric.

Inspect the path that actually ran. NCCL_DEBUG=INFO can help identify selected transports, but log wording varies. nvidia-smi topo -m describes device proximity, not achieved bandwidth. Compare host-buffer and GPU-buffer RDMA tests explicitly: a fast host test does not clear the GPU-to-NIC path. NVIDIA's network troubleshooting guide describes port state/rate checks and the relevant point-to-point tests.

Take port error, retry and congestion-counter deltas during the failing interval. A lifetime total may be old; an ECN mark can indicate functioning congestion control rather than a broken switch. Check whether contention follows traffic through a shared uplink or stays with one endpoint when the peer changes.

Do not infer GPUDirect state from “half speed” or a missing nvidia-peermem module. A supported DMA-BUF path is another possibility, documented in NVIDIA's GPU troubleshooting guide. Investigate registration and selected transport evidence for the installed stack. Changes to host isolation or firmware deserve a platform-specific plan, not a blanket tuning command.

Collective Communication Primitives explains why a late rank can make others wait. Align timeline clocks before comparing hosts; inspect local duration measurements when clock alignment is uncertain. Intermittent faults need observations over the incident window, not a clean two-minute sample.

Change the implicated configuration or component, repeat the matched tests, then restore the application's load. Keep an algorithm override only if it is a supported, documented improvement for the required workloads. If small-message latency dominates instead, evaluate fewer/larger collectives and their effect on overlap. A faster isolated collective that delays useful compute may still slow training.

What interviewers probe next

  • "Both halves are fast. Are all nodes healthy?" No. The split removed shared traffic and may have changed algorithm selection. Restore those conditions deliberately.
  • "Only this job is slow. Can hardware be excluded?" No. Its placement or traffic pattern may exercise a path other jobs avoid. Compare matched mappings and timings.
  • "How do you distinguish a cable from a NIC?" Change one approved component or path at a time against a known-good control, preserving mappings and counter evidence. A slow pair alone identifies a path, not one component.

Common mistakes

  • Using node count where the normalization requires participating rank count.
  • Treating normalized bus bandwidth as a physical port counter.
  • Declaring GPUDirect disabled from a ratio or one absent module.
  • Losing the failing baseline through several simultaneous tuning changes.

Key takeaways

  • With eight ranks per node, 64 nodes means 512 ranks and a 1.99609375 all-reduce factor.
  • A 20-to-60 ms collective increase need not triple the full step; identify exposed time.
  • Keep the counter interval, tested memory path and application workload attached to the diagnosis.
You can read the first 10 answers per topic without an account. Signing in increases that to 20, includes lessons marked Plus, and saves your progress so you can return to topics you want to review.no card · Google sign-in · nothing to cancel
HOW DID IT GO?
0
READING SIGNED OUT

Signing in doubles your free answers, from 10 to 20 per topic, and the site starts remembering you: mastery per topic, bookmarks, and a next-focus recommendation. Free, no card.

Sign in free
UP NEXT ON YOUR JOURNEY
FEDITOR'S NOTE

Explain what each experiment can rule out, preserve a matched baseline, and separate normalized bandwidth from physical traffic and exposed delay.

DISCUSSION · 0

No comments yet — be the first to share your approach.