English

A Concurrent Unbounded Wait-Free Graph

Distributed, Parallel, and Cluster Computing 2019-05-13 v2

Abstract

In this paper, we propose an efficient concurrent wait-free algorithm to construct an unbounded directed graph for shared memory architecture. To the best of our knowledge that this is the first wait-free algorithm for an unbounded directed graph where insertion and deletion of vertices and/or edges can happen concurrently. To achieve wait-freedom in a dynamic setting, threads help each other to perform the desired tasks using operator descriptors by other threads. To enhance performance, we also developed an optimized wait-free graph based on the principle of fast-path-slow-path. We also prove that all graph operations are wait-free and linearizable. We implemented our algorithms in C++ and tested its performance through several micro-benchmarks. Our experimental results show an average of 9x improvement over the global lock-based implementation.

Keywords

Cite

@article{arxiv.1810.13325,
  title  = {A Concurrent Unbounded Wait-Free Graph},
  author = {Sathya Peri and Chandra Kiran Reddy and Muktikanta Sa},
  journal= {arXiv preprint arXiv:1810.13325},
  year   = {2019}
}

Comments

20 pages, 9 figs. arXiv admin note: text overlap with arXiv:1611.03947

R2 v1 2026-06-23T04:59:11.528Z