liveBook · Manning

Asynchronous model update

As explained in Designing Deep Learning Systems: A guide for software engineers

A distributed optimization method in which workers apply model updates without waiting for other workers to synchronize.

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

How Designing Deep Learning Systems: A guide for software engineers covers it

How deep it goes
Defines the workflow and trade-offs, then stops short of implementation details for gradient copying or update coordination.
Examples
Contrasts workers at iterations 5 and 20 to demonstrate stale gradients and degraded gradient quality.
What it assumes
Assumes distributed training, workers, gradients, model parameters, and minibatches, while contrasting asynchronous behavior with synchronization barriers.
What you can do after
Evaluate asynchronous training against synchronous updates using worker utilization, training time, and model accuracy trade-offs.
How it connects
Connects distributed training with data parallelism, gradient synchronization, minibatches, and synchronous model updates.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Designing Deep Learning Systems: A guide for software engineers. The section links point to the parts of the book it draws on.