Multi-Queues Can Be State-of-the-Art Priority Schedulers
Anastasiia Postnikova, Nikita Koval, Giorgi Nadiradze, Dan Alistarh

TL;DR
This paper introduces the Stealing Multi-Queue (SMQ), a cache-efficient, analytically-guaranteed priority scheduler that outperforms existing schedulers in graph-processing benchmarks by combining theoretical guarantees with practical efficiency.
Contribution
We propose the SMQ, a novel priority scheduler that integrates queue affinity and task batching, providing both high efficiency and analytical rank guarantees.
Findings
SMQ surpasses Galois and PMOD in performance on graph benchmarks.
Theoretical analysis shows SMQ maintains rank guarantees despite relaxations.
Empirical results confirm the effectiveness of SMQ's design in practice.
Abstract
Designing and implementing efficient parallel priority schedulers is an active research area. An intriguing proposed design is the Multi-Queue: given threads and distinct priority queues, task insertions are performed uniformly at random, while, to delete, a thread picks two queues uniformly at random, and removes the observed task of higher priority. This approach scales well, and has probabilistic rank guarantees: roughly, the rank of each task removed, relative to remaining tasks in all other queues, is in expectation. Yet, the performance of this pattern is below that of well-engineered schedulers, which eschew theoretical guarantees for practical efficiency. We investigate whether it is possible to design and implement a Multi-Queue-based task scheduler that is both highly efficient and has analytical guarantees. We propose a new variant called the Stealing…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Cloud Computing and Resource Management · Distributed systems and fault tolerance
