Abstract
We present a new, concurrent, lock-free priority queue that relaxes the delete-min operation to allow deletion of any of the ρ smallest keys instead of only a minimal one, where ρ is a parameter that can be configured at runtime. It is built from a logarithmic number of sorted arrays, similar to log-structured merge-trees (LSM). For keys added and removed by the same thread the behavior is identical to a non-relaxed priority queue. We compare to state-of-the-art lock-free priority queues with both relaxed and non-relaxed semantics, showing high performance and good scalability of our approach.
- Y. Afek, G. Korland, and E. Yanovsky. Quasi-Linearizability: Relaxed consistency for improved concurrency. In Principles of Distributed Systems (OPODIS), volume 6490 of Lecture Notes in Computer Science, pages 395–410, 2010. Google Scholar
Digital Library
- D. Alistarh, J. Kopinsky, J. Li, and N. Shavit. The spraylist: A scalable relaxed priority queue. In 20st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP), 2014. Google Scholar
Digital Library
- P. Erd˝os and A. Rényi. On random graphs. Publicationes Mathematicae Debrecen, 6:290–297, 1959.Google Scholar
- T. A. Henzinger, C. M. Kirsch, H. Payer, A. Sezgin, and A. Sokolova. Quantitative relaxation of concurrent data structures. In 40th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), pages 317–328, 2013. Google Scholar
Digital Library
- J. Lindén and B. Jonsson. A skiplist-based concurrent priority queue with minimal memory contention. In Principles of Distributed Systems (OPODIS), volume 8304 of Lecture Notes in Computer Science, pages 206–220, 2013. Google Scholar
Digital Library
- P. O’Neil, E. Cheng, D. Gawlick, and E. O’Neil. The log-structured merge-tree (LSM-tree). Acta Informatica, 33(4):351–385, 1996. Google Scholar
Digital Library
- M. Wimmer. Variations on Task Scheduling for Shared Memory Systems. PhD thesis, Vienna University of Technology, 2014.Google Scholar
- M. Wimmer, F. Versaci, J. L. Träff, D. Cederman, and P. Tsigas. Data structures for task-based priority scheduling. In 19th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPoPP), pages 379–380, 2014. Google Scholar
Digital Library
Index Terms
The lock-free k-LSM relaxed priority queue
Recommendations
The lock-free k-LSM relaxed priority queue
PPoPP 2015: Proceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel ProgrammingWe present a new, concurrent, lock-free priority queue that relaxes the delete-min operation to allow deletion of any of the ρ smallest keys instead of only a minimal one, where ρ is a parameter that can be configured at runtime. It is built from a ...
An N-Server Cutoff Priority Queue
We consider a multi-priority, nonpreemptive, multi-server queueing system, with Poisson arrivals and negative exponential service times. In order to save available servers for higher priority customers, the system deliberately queues arriving lower ...
Fast and Lock-Free Concurrent Priority Queues for Multi-Thread Systems
IPDPS '03: Proceedings of the 17th International Symposium on Parallel and Distributed ProcessingWe present an efficient and practical lock-free implementation of a concurrent priority queue that is suitable for both fully concurrent (large multi-processor) systems as well as pre-emptive (multi-process) systems. Many algorithms for concurrent ...






Comments