Advertisement

Theory of Computing Systems

, Volume 35, Issue 3, pp 349–386 | Cite as

\bf DCAS-Based Concurrent Deques

  • Ole Agesen
  • David L. Detlefs
  • Christine H. Flood
  • Alexander T. Garthwaite
  • Paul A. Martin
  • Mark Moir
  • Nir N. Shavit
  • Guy L. Steele Jr.
Article

Abstract.

The computer industry is currently examining the use of strong synchronization operations such as double compare-and-swap (DCAS) as a means of supporting non-blocking synchronization on future multiprocessor machines. However, before such a strong primitive will be incorporated into hardware design, its utility needs to be proven by developing a body of effective non-blocking data structures using DCAS.

As part of this effort, we present two new linearizable non-blocking implementations of concurrent deques using the DCAS operation. The first uses an array representation, and improves on previous algorithms by allowing uninterrupted concurrent access to both ends of the deque while correctly handling the difficult boundary cases when the deque is empty or full. The second uses a linked-list representation, and is the first non-blocking, dynamically-sized deque implementation. It too allows uninterrupted concurrent access to both ends of the deque. We have proved these algorithms correct with the aid of a mechanical theorem prover; we describe these proofs in the paper.

Keywords

Proof Obligation Transactional Memory Linearization Point Abstraction Function Left Pointer 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag New York 2002

Authors and Affiliations

  • Ole Agesen
    • 1
  • David L. Detlefs
    • 2
  • Christine H. Flood
    • 2
  • Alexander T. Garthwaite
    • 2
  • Paul A. Martin
    • 2
  • Mark Moir
    • 2
  • Nir N. Shavit
    • 3
  • Guy L. Steele Jr.
    • 3
  1. 1.VMware, Inc., 3145 Porter Drive, USA US
  2. 2.Sun Microsystems, 1 Network Drive, USA US
  3. 3.Department of Computer Science, Tel Aviv University, Israel IL

Personalised recommendations