The baskets queue

  • Authors:
  • Moshe Hoffman;Ori Shalev;Nir Shavit

  • Affiliations:
  • The School of Computer Science, Tel Aviv University, Israel;The School of Computer Science, Tel Aviv University, Israel;The School of Computer Science, Tel Aviv University, Israel and Sun Microsystems Laboratories

  • Venue:
  • OPODIS'07 Proceedings of the 11th international conference on Principles of distributed systems
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

FIFO Queues have over the years been the subject of significant research. Such queues are used as buffers both in a variety of applications, and in recent years as a key tool in buffering data in high speed communication networks. Overall, the most popular dynamic-memory lock-free FIFO queue algorithm in the literature remains the MS-queue algorithm of Michael and Scott. Unfortunately, this algorithm, as well as many others, offers no more parallelism than that provided by allowing concurrent accesses to the head and tail. In this paper we present the Baskets Queue - a new, highly concurrent lock-free linearizable dynamic memory FIFO queue. The Baskets Queue introduces a new form of parallelism among enqueue operations that creates baskets of mixed-order items instead of the standard totally ordered list. The operations in different baskets can be executed in parallel. Surprisingly however, the end result is a linearizable FIFO queue, and in fact, we show that a basket queue based on the MS-queue outperforms the original MS-queue algorithm in various benchmarks.