skip to main content
DOE Patents title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Fast concurrent array-based stacks, queues and deques using fetch-and-increment-bounded, fetch-and-decrement-bounded and store-on-twin synchronization primitives

Abstract

Implementation primitives for concurrent array-based stacks, queues, double-ended queues (deques) and wrapped deques are provided. In one aspect, each element of the stack, queue, deque or wrapped deque data structure has its own ticket lock, allowing multiple threads to concurrently use multiple elements of the data structure and thus achieving high performance. In another aspect, new synchronization primitives FetchAndIncrementBounded (Counter, Bound) and FetchAndDecrementBounded (Counter, Bound) are implemented. These primitives can be implemented in hardware and thus promise a very fast throughput for queues, stacks and double-ended queues.

Inventors:
; ; ; ; ; ;
Issue Date:
Research Org.:
International Business Machines Corp., Armonk, NY (United States)
Sponsoring Org.:
USDOE
OSTI Identifier:
1158797
Patent Number(s):
8,838,944
Application Number:
12/564,535
Assignee:
International Business Machines Corporation (Armonk, NY)
DOE Contract Number:  
B554331
Resource Type:
Patent
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS AND COMPUTING

Citation Formats

Chen, Dong, Gara, Alana, Heidelberger, Philip, Kumar, Sameer, Ohmacht, Martin, Steinmacher-Burow, Burkhard, and Wisniewski, Robert. Fast concurrent array-based stacks, queues and deques using fetch-and-increment-bounded, fetch-and-decrement-bounded and store-on-twin synchronization primitives. United States: N. p., 2014. Web.
Chen, Dong, Gara, Alana, Heidelberger, Philip, Kumar, Sameer, Ohmacht, Martin, Steinmacher-Burow, Burkhard, & Wisniewski, Robert. Fast concurrent array-based stacks, queues and deques using fetch-and-increment-bounded, fetch-and-decrement-bounded and store-on-twin synchronization primitives. United States.
Chen, Dong, Gara, Alana, Heidelberger, Philip, Kumar, Sameer, Ohmacht, Martin, Steinmacher-Burow, Burkhard, and Wisniewski, Robert. Tue . "Fast concurrent array-based stacks, queues and deques using fetch-and-increment-bounded, fetch-and-decrement-bounded and store-on-twin synchronization primitives". United States. https://www.osti.gov/servlets/purl/1158797.
@article{osti_1158797,
title = {Fast concurrent array-based stacks, queues and deques using fetch-and-increment-bounded, fetch-and-decrement-bounded and store-on-twin synchronization primitives},
author = {Chen, Dong and Gara, Alana and Heidelberger, Philip and Kumar, Sameer and Ohmacht, Martin and Steinmacher-Burow, Burkhard and Wisniewski, Robert},
abstractNote = {Implementation primitives for concurrent array-based stacks, queues, double-ended queues (deques) and wrapped deques are provided. In one aspect, each element of the stack, queue, deque or wrapped deque data structure has its own ticket lock, allowing multiple threads to concurrently use multiple elements of the data structure and thus achieving high performance. In another aspect, new synchronization primitives FetchAndIncrementBounded (Counter, Bound) and FetchAndDecrementBounded (Counter, Bound) are implemented. These primitives can be implemented in hardware and thus promise a very fast throughput for queues, stacks and double-ended queues.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {2014},
month = {9}
}

Patent:

Save / Share:

Works referenced in this record:

A fetch-and-op implementation for parallel computers
journal, May 1988

  • Lipovski, G. J.; Vaughan, P.
  • ACM SIGARCH Computer Architecture News, Vol. 16, Issue 2
  • DOI: 10.1145/633625.52443

Nonblocking Algorithms and Preemption-Safe Locking on Multiprogrammed Shared Memory Multiprocessors
journal, May 1998

  • Michael, Maged M.; Scott, Michael L.
  • Journal of Parallel and Distributed Computing, Vol. 51, Issue 1
  • DOI: 10.1006/jpdc.1998.1446

Fast synchronization on shared-memory multiprocessors: An architectural approach
journal, October 2005

  • Fang, Zhen; Zhang, Lixin; Carter, John B.
  • Journal of Parallel and Distributed Computing, Vol. 65, Issue 10, p. 1158-1170
  • DOI: 10.1016/j.jpdc.2005.04.013

Algorithms for scalable synchronization on shared-memory multiprocessors
journal, February 1991

  • Mellor-Crummey, John M.; Scott, Michael L.
  • ACM Transactions on Computer Systems, Vol. 9, Issue 1
  • DOI: 10.1145/103727.103729

A simple, fast and scalable non-blocking concurrent FIFO queue for shared memory multiprocessor systems
conference, January 2001

  • Tsigas, Philippas; Zhang, Yi
  • Proceedings of the thirteenth annual ACM symposium on Parallel algorithms and architectures - SPAA '01
  • DOI: 10.1145/378580.378611

Thread scheduling for multiprogrammed multiprocessors
conference, January 1998

  • Arora, Nimar S.; Blumofe, Robert D.; Plaxton, C. Greg
  • Proceedings of the tenth annual ACM symposium on Parallel algorithms and architectures - SPAA '98
  • DOI: 10.1145/277651.277678

Wait-free synchronization
journal, January 1991

  • Herlihy, Maurice
  • ACM Transactions on Programming Languages and Systems, Vol. 13, Issue 1
  • DOI: 10.1145/114005.102808

Axioms for concurrent objects
conference, January 1987

  • Herlihy, M. P.; Wing, J. M.
  • Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages - POPL '87
  • DOI: 10.1145/41625.41627

Active memory operations
conference, January 2007

  • Fang, Zhen; Zhang, Lixin; Carter, John B.
  • Proceedings of the 21st annual international conference on Supercomputing - ICS '07
  • DOI: 10.1145/1274971.1275004

Dynamic circular work-stealing deque
conference, January 2005

  • Chase, David; Lev, Yossi
  • Proceedings of the 17th annual ACM symposium on Parallelism in algorithms and architectures - SPAA'05
  • DOI: 10.1145/1073970.1073974

An efficient algorithm for concurrent priority queue heaps
journal, November 1996

  • Hunt, Galen C.; Michael, Maged M.; Parthasarathy, Srinivasan
  • Information Processing Letters, Vol. 60, Issue 3, p. 151-157
  • DOI: 10.1016/S0020-0190(96)00148-2