Nothing Special   »   [go: up one dir, main page]

skip to main content
article

A Lock-Free Priority Queue Design Based on Multi-Dimensional Linked Lists

Published: 01 March 2016 Publication History

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 \(\mathcal {O}(\log N)\)Image (zhang-ieq1-2419651.gif) is missing or otherwise invalid. for key universe of size \(N\)Image (zhang-ieq2-2419651.gif) is missing or otherwise invalid.. 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. In our experimental evaluation using a micro-benchmark, our priority queue achieves an average of \(50\) Image (zhang-ieq3-2419651.gif) is missing or otherwise invalid. percent speedup over the state of the art approaches under high concurrency.

Cited By

View all
  1. A Lock-Free Priority Queue Design Based on Multi-Dimensional Linked Lists

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image IEEE Transactions on Parallel and Distributed Systems
    IEEE Transactions on Parallel and Distributed Systems  Volume 27, Issue 3
    March 2016
    314 pages

    Publisher

    IEEE Press

    Publication History

    Published: 01 March 2016

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 12 Nov 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2022)p2KVSProceedings of the Seventeenth European Conference on Computer Systems10.1145/3492321.3519567(575-591)Online publication date: 28-Mar-2022
    • (2022)Multi-core accelerated CRDT for large-scale and dynamic collaborationThe Journal of Supercomputing10.1007/s11227-022-04308-778:8(10799-10828)Online publication date: 1-May-2022
    • (2022)Quantifiability: a concurrent correctness condition modeled in vector spaceComputing10.1007/s00607-022-01092-3105:5(955-978)Online publication date: 7-Jun-2022
    • (2021)BGPQ: A Heap-Based Priority Queue Design for GPUsProceedings of the 50th International Conference on Parallel Processing10.1145/3472456.3472463(1-10)Online publication date: 9-Aug-2021
    • (2021)PETRAACM Transactions on Architecture and Code Optimization10.1145/344639118:2(1-26)Online publication date: 8-Mar-2021
    • (2021)TSLQueue: An Efficient Lock-Free Design for Priority QueuesEuro-Par 2021: Parallel Processing10.1007/978-3-030-85665-6_24(385-401)Online publication date: 1-Sep-2021
    • (2020)Entropy Measurement of Concurrent DisorderQuantitative Evaluation of Systems10.1007/978-3-030-59854-9_18(239-257)Online publication date: 31-Aug-2020
    • (2019)An adaptive concurrent priority queue for NUMA architecturesProceedings of the 16th ACM International Conference on Computing Frontiers10.1145/3310273.3323164(135-144)Online publication date: 30-Apr-2019
    • (2019)Wait-free Dynamic Transactions for Linked Data StructuresProceedings of the 10th International Workshop on Programming Models and Applications for Multicores and Manycores10.1145/3303084.3309491(41-50)Online publication date: 17-Feb-2019
    • (2019)CCSpecProceedings of the 27th International Conference on Program Comprehension10.1109/ICPC.2019.00041(220-230)Online publication date: 25-May-2019
    • Show More Cited By

    View Options

    View options

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media