Parallel Batch-Dynamic Graph Algorithms
summary
A parallel batch-dynamic k‑core algorithm maintains 2+ε approximation coreness values with amortized O(B log^2 n) work per batch and polylogarithmic span, implemented as a Parallel Level Data Structure (PLDS) and a tuned PLDSOpt. Experiments on mixed insert/delete batches and real graphs (some with 1B+ edges) use 30–48 core machines, show PLDSOpt reaches about 33x parallel speedup (PLDS ~26x), gives 2–3 orders magnitude speedups vs the sequential baseline and up to 25x over an exact parallel algorithm, and the code is public.
AI-written summary · about
chapters (19)
- 0:00Intro
- 0:38Graphs are becoming very large
- 1:19Parallelism and Dynamic Algorithms for High Performance
- 2:36Our Parallel Batch-Dynamic Algorithms
- 8:29Applications of k-core Decomposition
- 9:19Work-Span Model
- 11:54Sequential Level Data Structure (LDS)
- 14:23Difficulties with Parallelization
- 15:26Our Parallel Batch-Dynamic Level Data Structure (PLDS)
- 19:20Coreness Estimate
- 21:23Proof of Our Approximation Factor: Upper Bound
- 25:08Implementation Details
- 28:41Complexity Analysis
- 30:40Experimental Setup
- 31:26Runtimes/Accuracy vs. State-of-the-Art Algorithms
- 36:11Scalability vs. # Hyper-threads
- 37:11Runtime vs. Batch Size
- 37:33Runtime vs. Static Algorithms
- 38:44Conclusion
