Microbatching divides a large training batch into smaller units that move through a pipeline. Earlier handoffs keep downstream GPUs working instead of waiting, reducing the pipeline’s idle bubble. section 3.3.2
Use microbatching with these constraints in mind:
- Increase the microbatch count to improve utilization, especially as the number of pipeline GPUs grows. section 3.3.2
- Expect higher memory demand because cached activations grow linearly with each microbatch. section 3.3.2
- Keep the overall batch size and model memory requirements in view; larger GPUs can provide better utilization than many smaller ones. section 3.3.2
Estimating the idle bubble
For four GPUs and one large batch, the pipeline can leave devices idle 75% of the time. Using four microbatches reduces the reported idle time to about 43%. section 3.3.2
Figure 3.6 The bubble problem. When data runs through a broken-up model, the GPUs holding the model weights are underutilized while they wait for their counterparts to process the data. A simple way to reduce this bubble is to use microbatching.
Use the bubble diagram to see how smaller batches shorten waits between pipeline stages. section 3.3.2














