Checking your account

You can read the lesson while its saved answers and constructions load. Learning controls will open once that work is ready.

Faster Batches Can Still Make a User Wait

Batching Trades Waiting for Shared Computation

BOTIE

Training software often processes several examples together because a processor can share work across them. An online service receives requests one at a time, and the first person in a group must wait while the others arrive. The batch that makes good use of the hardware can still give that person a slow answer.

The Clipper system, presented in 2017, treated prediction serving as a separate problem from training. Its adaptive batching adjusted how many queued requests a model processed together while respecting a latency objective. The useful change was to make batch size depend on the model's observed performance rather than assuming a larger batch was always better. Current servers such as Triton also expose controls for queue delay and batching.

Our first example follows requests already assigned to one batch. We will distinguish time waiting in the queue from time spent computing. A later scheduler has to make its decision using both, because sharing computation cannot recover time a request has already spent waiting.

Sources for this history