• Corpus ID: 211817819

Dynamic Graph Operations: A Consistent Non-blocking Approach

@article{Chatterjee2020DynamicGO,
  title={Dynamic Graph Operations: A Consistent Non-blocking Approach},
  author={Bapi Chatterjee and Sathya Peri and Muktikanta Sa},
  journal={ArXiv},
  year={2020},
  volume={abs/2003.01697}
}
Graph algorithms enormously contribute to the domains such as blockchains, social networks, biological networks, telecommunication networks, and several others. The ever-increasing demand of data-volume, as well as speed of such applications, have essentially transported these applications from their comfort zone: static setting, to a challenging territory of dynamic updates. At the same time, mainstreaming of multi-core processors have entailed that the dynamic applications should be able to… 
2 Citations
Non-Blocking Dynamic Unbounded Graphs with Worst-Case Amortized Bounds
TLDR
A novel concurrent graph data structure that provides breadth-first search, single-source shortest-path, and betweenness centrality with concurrent dynamic updates of both edges and vertices and it is proved that the presented concurrent algorithms are non-blocking and linearizable.
Brief Announcement: Non-Blocking Dynamic Unbounded Graphs with Worst-Case Amortized Bounds
TLDR
A novel concurrent graph data structure that provides breadth-first search, single-source shortest-path, and betweenness centrality with concurrent dynamic updates of both edges and vertices with non-blocking and linearizable algorithms is reported.

References

SHOWING 1-10 OF 50 REFERENCES
A simple and practical concurrent non-blocking unbounded graph with linearizable reachability queries
TLDR
The experimental results show that the proposed algorithm scales well with the number of threads and on an average provides 5 to 7x performance improvement over a concurrent graph implementation using coarse-grained locking.
Wait-Free Concurrent Graph Objects with Dynamic Traversals
TLDR
This paper introduces an innovative concurrent graph model that provides addition and removal of any edge of the graph, as well as atomic traversals of a part (or the entirety), and presents Dense, a concurrent graph implementation that aims at mitigating the two aforementioned implementation drawbacks.
Congra: Towards Efficient Processing of Concurrent Graph Queries on Shared-Memory Machines
TLDR
This work investigates the management of multiple graph processing queries on shared-memory machines, and proposes Congra, a dynamic graph scheduler that intelligently manages multiple concurrent graph queries for better system throughput and resource efficiency.
Ligra: a lightweight graph processing framework for shared memory
TLDR
This paper presents a lightweight graph processing framework that is specific for shared-memory parallel/multicore machines, which makes graph traversal algorithms easy to write and significantly more efficient than previously reported results using graph frameworks on machines with many more cores.
Efficient Parallel Graph Exploration on Multi-Core CPU and GPU
TLDR
A new method for implementing the parallel BFS algorithm on multi-core CPUs which exploits a fundamental property of randomly shaped real-world graph instances and shows improved performance over the current state-of-the-art implementation and increases its advantage as the size of the graph increases.
Time-evolving graph processing at scale
TLDR
GraphTau is introduced, a time-evolving graph processing framework built on top of Apache Spark, a widely used distributed dataflow system that achieves high performance and fault tolerant graph stream processing via a number of optimizations.
PowerGraph: Distributed Graph-Parallel Computation on Natural Graphs
TLDR
This paper describes the challenges of computation on natural graphs in the context of existing graph-parallel abstractions and introduces the PowerGraph abstraction which exploits the internal structure of graph programs to address these challenges.
STINGER: High performance data structure for streaming graphs
TLDR
This paper presents high performance, scalable and portable software that includes a graph data structure that enables these applications, STINGER, and demonstrates a process of algorithmic and architectural optimizations that enable high performance on the Cray XMT family and Intel multicore servers.
Large scale graph processing systems: survey and an experimental evaluation
TLDR
A comprehensive survey over the state-of-the-art of large scale graph processing platforms, namely, GraphChi, Apache Giraph, GPS, GraphLab and GraphX, and an extensive experimental study of five popular systems in this domain.
A non-blocking internal binary search tree
TLDR
Experimental evidence shows this parallel binary search tree algorithm built using single-word reads, writes, and compare-and-swap to be fast when compared with alternative solutions and scalable to large numbers of concurrently executing threads.
...
1
2
3
4
5
...