Skip to content

Track D — Distributed & Cluster Computing

One GPU is a solved problem. This track is about what happens when the work no longer fits on one — when correctness and speed start depending on a wire rather than a kernel. It goes below the sharding strategies in Track B to the substrate they run on: message passing, collective libraries, the interconnect itself, and the network topology that decides where your scaling curve bends.

The organizing question is the one nobody answers honestly: at what scale does this stop working, and what breaks first?

%%{init: {'theme': 'base', 'themeVariables': {'primaryColor': '#F8FAFC', 'primaryBorderColor': '#DB2777', 'lineColor': '#64748B'}}}%%
flowchart TD
  D01["D01 Scaling limits"] --> D02["D02 MPI"]
  D01 --> D03["D03 NCCL and RCCL"]
  D02 --> D03
  D03 --> D04["D04 The wire"]
  D04 --> D05["D05 Topology"]
  D05 --> D06["D06 Real systems"]

  classDef trackD fill:#DB2777,stroke:#0F172A,color:#fff
  class D01,D02,D03,D04,D05,D06 trackD
Modules — Track D syllabus (6 modules)
ID Module What you build Status
D01 Scaling limits & the cost of talking A scaling-wall calculator: Amdahl, Gustafson, alpha-beta DRAFT
D02 Message passing (MPI / OpenMPI) Ring all-reduce written by hand, against a real MPI_Allreduce DRAFT
D03 GPU collectives (NCCL / RCCL) A bus-bandwidth harness that reproduces rccl-tests numbers DRAFT
D04 The wire: RDMA, NVLink, xGMI, InfiniBand A link-tier prober and a zero-copy vs staged path comparison DRAFT
D05 Topology & scale boundaries A topology cost model: fat-tree vs dragonfly vs torus DRAFT
D06 Real systems at scale The consolidated scale-boundary ladder, 8 to 100k ranks DRAFT

Suggested order. D01 first, always — it is the theory spine and the other five quote its vocabulary. D02 and D03 are a pair: MPI is the general model, NCCL/RCCL is what actually moves your gradients, and the interesting content is where they disagree. D04 and D05 are the substrate, and D06 is where every earlier module's scale-boundary table gets consolidated into one ladder.

Prerequisite: A01 for GPU literacy. B01 is strongly recommended before D04, which extends its intra-node link analysis across the network.

Relationship to B07. B07 owns the ML question — how to split a model across devices — and derives the ring all-reduce cost model in the course of answering it. Track D owns the systems question underneath: what a collective actually is, which library implements it, what it runs over, and where it stops scaling. The two cross-reference rather than repeat; where B07 already derives something, Track D links it.

A note on the labs. The multi-node numbers in this track are analytic models, not measurements — they say so in their own output banners — because this repo publishes no number it cannot reproduce, and no multi-node cluster is attached to it. Single-node multi-GPU labs (rccl-tests, topology probes, single-host MPI) do produce real transcripts, cached under outputs/. Every analytic tool runs on the Python standard library alone. See CURRICULUM.md for the full dependency graph.