Asynchronous model update lets each training worker apply its computed gradients immediately, without waiting for other workers to synchronize. Workers operate independently, allowing faster devices to continue processing minibatches instead of idling at a synchronization barrier. section 4.2.1
Use the method when throughput and reduced waiting matter, while accounting for its optimization costs:
- Avoids blocking the training iteration when machines or networks have different speeds. section 4.2.1
- Can run more training steps per minute because workers do not wait for gradient updates. section 4.2.1
- May take longer overall and produce less-accurate models because gradients can come from different training iterations. section 4.2.1
Mismatched worker progress
A slow worker may calculate gradients from iteration 5 while faster workers reach iteration 20. Applying these gradients together can degrade gradient quality because they describe different model states. section 4.2.1
Figure 4.1 A synchronous data parallelism concept graph. (a) Deep learning training on a single GPU. (b) Synchronous data parallel training with three GPUs.
Compare the synchronization barrier in synchronous data parallelism with the independent worker workflow of asynchronous updates. section 4.2.1
