Lesson 2: Many machines, one model, and surviving a crash
27 min read·
Module 7 · Lesson 2 · About 55 minutes · Needs: lesson 1 (the 16 bytes per parameter and the ring all-reduce) and Module 4's training loop. Runs on a CPU: two processes stand in for two GPUs.
The situation
Week 7 at Kestrel, day three. Rhys has lesson 1's answer: the late-risk network needs no GPU. His next question is the one every platform lead asks: "When a job does need several machines, how do we split it, and what happens when one of them dies at 03:00?"
The running example is the late-risk network trained on 86,014 parcels by one script, scripts/ddp_train.py, in two processes. It is trained, split, measured, crashed after epoch 2 and resumed.