DOE PAGES title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: A lock-free priority queue design based on multi-dimensional linked lists

Abstract

The throughput of concurrent priority queues is pivotal to multiprocessor applications such as discrete event simulation, best-first search and task scheduling. Existing lock-free priority queues are mostly based on skiplists, which probabilistically create shortcuts in an ordered list for fast insertion of elements. The use of skiplists eliminates the need of global rebalancing in balanced search trees and ensures logarithmic sequential search time on average, but the worst-case performance is linear with respect to the input size. In this paper, we propose a quiescently consistent lock-free priority queue based on a multi-dimensional list that guarantees worst-case search time of O(logN) for key universe of size N. The novel multi-dimensional list (MDList) is composed of nodes that contain multiple links to child nodes arranged by their dimensionality. The insertion operation works by first injectively mapping the scalar key to a high-dimensional vector, then uniquely locating the target position by using the vector as coordinates. Nodes in MDList are ordered by their coordinate prefixes and the ordering property of the data structure is readily maintained during insertion without rebalancing nor randomization. Furthermore, in our experimental evaluation using a micro-benchmark, our priority queue achieves an average of 50% speedup over the state ofmore » the art approaches under high concurrency.« less

Authors:
 [1];  [1]
  1. Univ. of Central Florida, Orlando, FL (United States)
Publication Date:
Research Org.:
Sandia National Lab. (SNL-NM), Albuquerque, NM (United States)
Sponsoring Org.:
USDOE National Nuclear Security Administration (NNSA)
OSTI Identifier:
1237474
Report Number(s):
SAND-2015-2904J
Journal ID: ISSN 1045-9219; 583295
Grant/Contract Number:  
AC04-94AL85000
Resource Type:
Accepted Manuscript
Journal Name:
IEEE Transactions on Parallel and Distributed Systems
Additional Journal Information:
Journal Volume: 27; Journal Issue: 3; Journal ID: ISSN 1045-9219
Publisher:
IEEE
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS AND COMPUTING; concurrent data structure; priority queue; lock-freedom; multi-dimensional list; skiplist

Citation Formats

Dechev, Damian, and Zhang, Deli. A lock-free priority queue design based on multi-dimensional linked lists. United States: N. p., 2015. Web. doi:10.1109/TPDS.2015.2419651.
Dechev, Damian, & Zhang, Deli. A lock-free priority queue design based on multi-dimensional linked lists. United States. https://doi.org/10.1109/TPDS.2015.2419651
Dechev, Damian, and Zhang, Deli. Fri . "A lock-free priority queue design based on multi-dimensional linked lists". United States. https://doi.org/10.1109/TPDS.2015.2419651. https://www.osti.gov/servlets/purl/1237474.
@article{osti_1237474,
title = {A lock-free priority queue design based on multi-dimensional linked lists},
author = {Dechev, Damian and Zhang, Deli},
abstractNote = {The throughput of concurrent priority queues is pivotal to multiprocessor applications such as discrete event simulation, best-first search and task scheduling. Existing lock-free priority queues are mostly based on skiplists, which probabilistically create shortcuts in an ordered list for fast insertion of elements. The use of skiplists eliminates the need of global rebalancing in balanced search trees and ensures logarithmic sequential search time on average, but the worst-case performance is linear with respect to the input size. In this paper, we propose a quiescently consistent lock-free priority queue based on a multi-dimensional list that guarantees worst-case search time of O(logN) for key universe of size N. The novel multi-dimensional list (MDList) is composed of nodes that contain multiple links to child nodes arranged by their dimensionality. The insertion operation works by first injectively mapping the scalar key to a high-dimensional vector, then uniquely locating the target position by using the vector as coordinates. Nodes in MDList are ordered by their coordinate prefixes and the ordering property of the data structure is readily maintained during insertion without rebalancing nor randomization. Furthermore, in our experimental evaluation using a micro-benchmark, our priority queue achieves an average of 50% speedup over the state of the art approaches under high concurrency.},
doi = {10.1109/TPDS.2015.2419651},
journal = {IEEE Transactions on Parallel and Distributed Systems},
number = 3,
volume = 27,
place = {United States},
year = {Fri Apr 03 00:00:00 EDT 2015},
month = {Fri Apr 03 00:00:00 EDT 2015}
}

Journal Article:
Free Publicly Available Full Text
Publisher's Version of Record

Citation Metrics:
Cited by: 18 works
Citation information provided by
Web of Science

Save / Share:

Works referencing / citing this record:

Wait-free Dynamic Transactions for Linked Data Structures
conference, January 2019

  • LaBorde, Pierre; Lebanoff, Lance; Peterson, Christina
  • Proceedings of the 10th International Workshop on Programming Models and Applications for Multicores and Manycores - PMAM'19
  • DOI: 10.1145/3303084.3309491