Drawing ideas from previous authors, we present a new non-blocking concurrent queue algorithm and a new two-lock queue algorithm in which one enqueue and one dequeue can proceed concurrently. Both algorithms are simple, fast, and practical; we were surprised not to find them in the literature. Experiments on a 12-node SGI Challenge multiprocessor indicate that the new non-blocking queue consistently outperforms the best known alternatives; it is the clear algorithm of choice for machines that provide a universal atomic primitive (e.g., compare_and_swap or load_linked/store_conditional). The two-lock concurrent queue outperforms a single lock when several processes are competing simultaneously for access; it appears to be the algorithm of ch...
This thesis deals with how to design and implement efficient, practical and reliable concurrent data...
This paper contains a completely formal (and mechanically proved) development of some algorithms dea...
This thesis deals with how to design and implement efficient, practical and reliable concurrent data...
Link to published version: http://portal.acm.org/ft_gateway.cfm?id=248106&type=pdf&coll=portal&dl=AC...
grantor: University of TorontoWe study non-blocking linearizable implementations of objec...
grantor: University of TorontoWe study non-blocking linearizable implementations of objec...
We present an efficient and practical lock-free implementation of a concurrent priority queue that i...
We present an efficient and practical lock-free implementation of a concurrent priority queue that i...
We present an efficient and practical lock-free implementation of a concurrent priority queue that i...
We present an efficient and practical lock-free implementation of a concurrent priority queue that i...
We present an efficient and practical lock-free implementation of a concurrent priority queue that i...
Most multiprocessors are multiprogrammed to achieve acceptable response time and to increase their u...
A non-blocking FIFO queue algorithm for multiprocessor shared memory systems is presented in this pa...
Link to published version: http://ieeexplore.ieee.org/iel3/4440/12600/00580906.pdf?tp=&arnumber=5809...
Most multiprocessors are multiprogrammed to achieve acceptable response time. Unfortunately, inoppor...
This thesis deals with how to design and implement efficient, practical and reliable concurrent data...
This paper contains a completely formal (and mechanically proved) development of some algorithms dea...
This thesis deals with how to design and implement efficient, practical and reliable concurrent data...
Link to published version: http://portal.acm.org/ft_gateway.cfm?id=248106&type=pdf&coll=portal&dl=AC...
grantor: University of TorontoWe study non-blocking linearizable implementations of objec...
grantor: University of TorontoWe study non-blocking linearizable implementations of objec...
We present an efficient and practical lock-free implementation of a concurrent priority queue that i...
We present an efficient and practical lock-free implementation of a concurrent priority queue that i...
We present an efficient and practical lock-free implementation of a concurrent priority queue that i...
We present an efficient and practical lock-free implementation of a concurrent priority queue that i...
We present an efficient and practical lock-free implementation of a concurrent priority queue that i...
Most multiprocessors are multiprogrammed to achieve acceptable response time and to increase their u...
A non-blocking FIFO queue algorithm for multiprocessor shared memory systems is presented in this pa...
Link to published version: http://ieeexplore.ieee.org/iel3/4440/12600/00580906.pdf?tp=&arnumber=5809...
Most multiprocessors are multiprogrammed to achieve acceptable response time. Unfortunately, inoppor...
This thesis deals with how to design and implement efficient, practical and reliable concurrent data...
This paper contains a completely formal (and mechanically proved) development of some algorithms dea...
This thesis deals with how to design and implement efficient, practical and reliable concurrent data...