Brief announcement: Jiffy: A fast, memory efficient, wait-free multi-producers single-consumer queue

Dolev Adas, Roy Friedman

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

In applications such as sharded data processing systems, data flow programming and load sharing applications, multiple concurrent data producers are feeding requests into the same data consumer. This can be naturally realized through concurrent queues, where each consumer pulls its tasks from its dedicated queue. For scalability, wait-free queues are often preferred over lock based structures. The vast majority of wait-free queue implementations, and even lock-free ones, support the multi-producer multi-consumer model. Yet, this comes at a premium, since implementing wait-free multi-producer multi-consumer queues requires utilizing complex helper data structures. The latter increases the memory consumption of such queues and limits their performance and scalability. Additionally, many such designs employ (hardware) cache unfriendly memory access patterns. In this work we study the implementation of wait-free multi-producer single-consumer queues. Specifically, we propose Jiffy, an efficient memory frugal novel wait-free multi-producer single-consumer queue and formally prove its correctness. We then compare the performance and memory requirements of Jiffy with other state of the art lock-free and wait-free queues. We show that indeed Jiffy can maintain good performance with up to 128 threads, delivers better throughput than other constructions we compared against, and consumes less memory.

Original languageEnglish
Title of host publication34th International Symposium on Distributed Computing, DISC 2020
EditorsHagit Attiya
ISBN (Electronic)9783959771689
DOIs
StatePublished - 1 Oct 2020
Event34th International Symposium on Distributed Computing, DISC 2020 - Virtual, Online
Duration: 12 Oct 202016 Oct 2020

Publication series

NameLeibniz International Proceedings in Informatics, LIPIcs
Volume179

Conference

Conference34th International Symposium on Distributed Computing, DISC 2020
CityVirtual, Online
Period12/10/2016/10/20

Keywords

  • Concurrent data-structures
  • MPSC Queues
  • Wait-freedom

All Science Journal Classification (ASJC) codes

  • Software

Fingerprint

Dive into the research topics of 'Brief announcement: Jiffy: A fast, memory efficient, wait-free multi-producers single-consumer queue'. Together they form a unique fingerprint.

Cite this