All Reduce
All Reduce in the context of production machine-learning systems.
Lessons
Formal explanations, examples, simulations, and checkpoints.
Choose data, sharded, tensor, or pipeline parallelism
Use choose data, sharded, tensor, or pipeline parallelism to move the distributed training production brief toward a defensible release.
Distributed & fault-tolerant trainingDDP under the hood
Use ddp under the hood to move the distributed training production brief toward a defensible release.
Distributed & fault-tolerant trainingFSDP and ZeRO-style sharding
Use fsdp and zero-style sharding to move the distributed training production brief toward a defensible release.
Distributed & fault-tolerant trainingDistributed checkpoints and fault-tolerant restarts
Use distributed checkpoints and fault-tolerant restarts to move the distributed training production brief toward a defensible release.
Distributed & fault-tolerant trainingHangs, stragglers, and scaling efficiency
Use hangs, stragglers, and scaling efficiency to move the distributed training production brief toward a defensible release.
Courses & assignments
Dependency-authoritative learning units.
Casebook
Reported facts and course reconstructions.
Horovod: make distributed training feel small
Distributed training performance is the overlap of compute, communication, input, and synchronization.
NVIDIA · Training & distributionMegatron: composing parallelism for giant models
Parallelism is a placement problem constrained by bytes, shapes, and topology.