Paper summary
When switching jobs costs more than it saves
Choosing when to pause GPU training can reduce wasted work and help jobs finish sooner.
Giving a short training job priority requires pausing a running job and loading a new model. If another job takes its place before training starts, that loading work is wasted. Lazer weighs a job’s priority against the cost of switching to it.
Two sources of avoidable delay
Scheduling at fixed intervals can prevent repeated switches, but makes newly arrived jobs wait. The challenge is to reduce both wasted loading, called futile preemption, and queueing delay.
The paper therefore measures job completion time (JCT) from arrival to completion, including waiting, loading, training, and saving work. The target is earlier job completion, including time spent waiting and moving models.
Choose the jobs, then choose when to switch
Lazer first identifies lower-priority jobs that could release enough GPUs for an arriving job. It then uses Bayesian optimization to choose a delay of 0–100 seconds, informed by recent arrivals, estimated remaining training time, and loading and saving costs.
Selected running jobs keep training during the delay. When it ends, the orchestrator chooses preemption candidates again using their updated states. A completion handler separately assigns freed GPUs to waiting jobs. Deferring one preemption does not block scheduling for newly arriving jobs.
View full-size figureWhat the experiments show
To test whether this policy reduces completion time on real hardware, the authors use four servers with 16 heterogeneous NVIDIA GPUs and 40 GbE. They run 100 jobs sampled from the Earth trace while preserving its arrival-time distribution, with a dedicated scheduler CPU and separate model-storage server.
Each ratio divides the comparison scheduler’s JCT by Lazer’s; larger values favor Lazer. P95 is the 95th percentile of job completion time.
In this testbed, futile-preemption time is zero at both P50 and P95. The timing decisions add overhead, however: average scheduler decision latency is 7.1 ms, versus 3.8 ms for SJF and SRTF.
What larger trace simulations add
The authors separately replay the full Earth, Saturn, and Uranus traces in simulation. On Uranus, P95 JCT is 6,999.9 minutes for SJF and 29.9 minutes for Lazer, a comparison the paper reports as 233.3×. This comparison measures simulated tail job-completion time.
| Comparison scheduler | Median JCT / Lazer | P95 JCT / Lazer |
|---|---|---|
| SJF | 1.3× | 1.16× |
| SRTF | 1.5× | 1.2× |
| Pollux | 2.1× | 1.4× |
| Muri | 5.3× | 2.9× |
| Optimus | 8.8× | 3.8× |
Key takeaways
- Preemption can waste work before useful training starts. Avoiding interrupted model loads with fixed scheduling intervals also creates waiting, exposing a tradeoff in when to switch.
- Timing is part of the scheduling decision. Lazer predicts a deferral from job and cluster conditions while selected jobs continue running.
- Less wasted loading can accompany shorter waits. On the 16-GPU, 100-job testbed, median JCT and waiting time improve by 8.8× and 22.2× over Optimus, with zero futile-preemption time at P50 and P95.