In this paper, we present two new FIFO dual queues. Like all dual queues, they arrange for dequeue operations to block when the queue is empty, and to complete in the original order when data becomes available. Compared to alternatives in which dequeues on an empty queue return an error code and force the caller to retry, dual queues provide a valuable guarantee of fairness. Our algorithms, based on Morrison and Afek's LCRQ from PPoPP'13, outperform existing dual queues - notably the one in java.util.concurrent - by a factor of four to six. For both of our algorithms, we present extensions that guarantee lock freedom, albeit at some cost in performance
AbstractConcurrent FIFO queues are a common component of concurrent systems. Using a single shared l...
We have proposed algorithms for lock-free lifo and fifo queue management. This technical report prop...
Abstract. We study wait-free linearizable Queue implementations in asynchronous shared-memory system...
In this paper, we present two new FIFO dual queues. Like all dual queues, they arrange for dequeue o...
In this paper, we introduce two new FIFO dual queues. Like all dual queues, they arrange for dequeue...
Abstract. We introduce fast and scalable algorithms that implement bounded-and unbounded-size lock-f...
Drawing ideas from previous authors, we present a new non-blocking concurrent queue algorithm and a ...
In order to guarantee that each method of a data structure updates the logical state exactly once, a...
Concurrent access to shared data in preemptive multi-tasks environment and in multi-processors archi...
A ring buffer or cyclical queue is a First In, First Out (FIFO) queue that stores elements on a fixe...
We present a new lock-free multiple-producer and multiple-consumer (MPMC) FIFO queue design which is...
Designing and implementing high-performance concurrent data structures whose access performance scal...
Queues are a significant algorithmic component to many systems and applications that enable decoupli...
A lock-free FIFO queue data structure is presented in this paper. The algorithm supports multiple pr...
grantor: University of TorontoWe study non-blocking linearizable implementations of objec...
AbstractConcurrent FIFO queues are a common component of concurrent systems. Using a single shared l...
We have proposed algorithms for lock-free lifo and fifo queue management. This technical report prop...
Abstract. We study wait-free linearizable Queue implementations in asynchronous shared-memory system...
In this paper, we present two new FIFO dual queues. Like all dual queues, they arrange for dequeue o...
In this paper, we introduce two new FIFO dual queues. Like all dual queues, they arrange for dequeue...
Abstract. We introduce fast and scalable algorithms that implement bounded-and unbounded-size lock-f...
Drawing ideas from previous authors, we present a new non-blocking concurrent queue algorithm and a ...
In order to guarantee that each method of a data structure updates the logical state exactly once, a...
Concurrent access to shared data in preemptive multi-tasks environment and in multi-processors archi...
A ring buffer or cyclical queue is a First In, First Out (FIFO) queue that stores elements on a fixe...
We present a new lock-free multiple-producer and multiple-consumer (MPMC) FIFO queue design which is...
Designing and implementing high-performance concurrent data structures whose access performance scal...
Queues are a significant algorithmic component to many systems and applications that enable decoupli...
A lock-free FIFO queue data structure is presented in this paper. The algorithm supports multiple pr...
grantor: University of TorontoWe study non-blocking linearizable implementations of objec...
AbstractConcurrent FIFO queues are a common component of concurrent systems. Using a single shared l...
We have proposed algorithms for lock-free lifo and fifo queue management. This technical report prop...
Abstract. We study wait-free linearizable Queue implementations in asynchronous shared-memory system...