Separate transport capability, collective scheduling, and kernel cost with controlled tests
Design comparable network and device-kernel experiments without treating isolated bandwidth numbers as a complete training bottleneck diagnosis.
On this page
The question for today
What you’ll understand
- Define byte and time conventions for a communication benchmark.
- Compare isolated and concurrent operation measurements under matched work.
- Use a bottleneck hypothesis to select a discriminating experiment.
A long collective range does not prove that a physical network link is slow, and a high-bandwidth link test does not prove that a training collective is healthy. The observed interval may include late inputs, algorithm choices, local memory movement, launch delays, and contention with compute. Kernel measurements have analogous problems when shapes or arithmetic modes differ from the real workload. Controlled experiments narrow these possibilities by preserving the relevant work and changing one cause at a time.
Match the benchmark to the communication operation
Record collective type, participant count, rank placement, topology, message size, dtype, and synchronization protocol. A small-message latency result and a large-message bandwidth result probe different regimes. Initialization and warmup should be separated from steady operations unless startup is the question. Preserve correctness checks: a fast transfer that produces invalid data is not a performance result for the intended operation. Low-level link tests can establish a transport baseline, while a collective test includes algorithm and multi-participant effects absent from a point-to-point measurement.
Define what bytes mean. A payload divided by elapsed time gives one algorithm-bandwidth convention, while a collective's topology-aware bus-bandwidth estimate can include an explicit operation-specific factor. It is not generally the same as measuring every physical link's traffic counter. Mixing decimal GB with binary GiB creates another avoidable discrepancy. Keep benchmark version and its reporting formula with results; do not compare a normalized collective metric directly with one wire's nominal rate without establishing that their byte counts and scope are compatible.
Compare the actual kernel shape and concurrent path
Replay representative compute kernels with the same shapes, strides, arithmetic mode, and important workspace constraints. A large square matrix multiplication may achieve an impressive rate while saying little about the smaller, irregular kernels that dominate a particular model. Device clocks, thermal state, cache state, and interference can change the result. Record whether inputs are already resident and whether launches, transfers, or synchronization are inside timing. Match the experiment to the suspected mechanism rather than selecting a benchmark because it produces the highest advertised arithmetic rate.
Then compare the isolated components with a concurrent replay and the full training schedule. If compute and communication each slow when concurrent, shared execution or memory resources are a plausible hypothesis. If isolated communication is healthy but the training collective begins late, inspect readiness and launch dependencies. If only a low-level link test fails, investigate the fabric baseline before tuning an unrelated matrix kernel. A useful test should make competing hypotheses predict different observable changes, while preserving the mathematical workload and validating its outputs.
Follow evidence through a hierarchy of tests
Build a short evidence chain: transport baseline, matched collective, matched compute, concurrent replay, and end-to-end training. Change placement or one configuration only after a hypothesis predicts which layer should respond. Repeat enough completed windows to distinguish a persistent effect from transient load. Save topology and configuration alongside timing distributions so the experiment can be reproduced. A passing lower layer narrows the search but does not validate every higher-layer interaction; similarly, a slower isolated operation can still improve the completed job if its scheduling exposes less of it.
The roofline lab helps separate device-memory bandwidth from compute ceilings, but its B is not network bandwidth. Reset, set both I=4 FLOP/byte and B=50 decimal GB/s, predict 200 GFLOP/s, then Play. Reset and set both I=4 and B=100 for 400. Reset again and set both I=20 and B=100 to predict the fixed 1000 compute cap. It models no network topology, collective, contention, or measured kernel. Use the unit-checked ceiling as a question about a hypothetical kernel, then gather the real hierarchy of evidence before naming a network or compute bottleneck.
Work it through
A healthy isolated result does not exclude concurrent interference
A benchmark defines payload S=240 MB using decimal units and completes an isolated collective in 12 ms. Its documented normalization factor is 1.5. A matched kernel takes 20 ms alone; in a concurrent replay the kernel takes 25 ms and the collective 18 ms. Inputs and outputs are validated.
Payload bandwidth is 240 MB/0.012 s=20000 MB/s=20 GB/s. The benchmark's estimated normalized bus bandwidth is 1.5×20=30 GB/s; this is not a direct measurement of one physical link.
Compute slowdown is 25/20=1.25, while communication slowdown is 18/12=1.5 in the concurrent replay. The actual operation intervals, rather than isolated durations, belong in its schedule model.
These observations support investigating concurrent interference or scheduling differences. They do not alone identify a particular link, memory path, or execution unit, and they do not determine completed training time without readiness and dependency information.
The test separates a reporting convention from an observed concurrent slowdown and leaves a clear next question about the shared resource or schedule.
The living notebook
Explore the model
Interactive lab · roofline
Device-memory bandwidth and network bandwidth are different inputs
Reset, set both I=4 FLOP/byte and device-memory B=50 decimal GB/s, predict 200 GFLOP/s, then Play. Reset and re-enter both I=4 and B=100 for 400. A third fresh Reset with I=20 and B=100 reaches the fixed 1000 GFLOP/s cap. The synthetic roof models no transport, collective, topology, resource contention, or measured kernel throughput.
- Attainable ceiling
- 640 GFLOP/s
- Ridge intensity
- 12.5 FLOP/byte
- Ceiling regime
- Memory-bound ceiling
Synthetic roofline ceiling min(1000, B·I), in GFLOP/s, with B in decimal GB/s and I in FLOP/byte. Playback traces the roof without changing the selected kernel. This upper-bound model is not a measured throughput prediction, hardware comparison or price model. Parameter changes pause playback and recompute the model at the current elapsed time. Reset restores both parameters and returns time to zero. Playback starts paused. Adjust either parameter, then choose Play or Step.
Look forUse matched, correctly scoped tests to distinguish transport, collective, compute, and concurrent behavior.
Pause & reason
Check your understanding
Your turn
Try it yourself
A defined decimal payload is 96 MB and completed time is 8 ms. The benchmark's stated normalization factor is 1.75. Compute payload bandwidth and normalized estimate, and state why the latter is not automatically one physical link's observed rate.
Take a moment to make a prediction or work it out on paper. Open a hint when you need one.
Give me a hint
Convert milliseconds to seconds before applying the explicitly supplied factor.
Compare with the solution
Payload bandwidth is 96/0.008=12000 MB/s=12 GB/s. The normalized estimate is 1.75×12=21 GB/s. The factor encodes a benchmark convention for the operation and participant arrangement; without matching physical traffic accounting and topology, 21 GB/s is not a direct single-link counter measurement.
Keep the idea
Take it with you
- Match operation, work, topology, units, and timing scope before comparing bandwidth or kernel rates.
- Isolated and concurrent measurements answer different questions about the same components.
- Use a hierarchy of discriminating tests and correlated readiness before assigning a bottleneck.
Read further
Original sources and deeper explanations to follow at your own pace.
Optional progress, saved in this browser when available. Revisit any lesson at any time.
Lesson not marked complete.