Skipper: Maximal Matching with a Single Pass over Edges
Mohsen Koohi Esfahani

TL;DR
Skipper is an asynchronous, single-pass parallel algorithm for maximal matching that reduces overhead, memory usage, and synchronization, achieving significant speedups on large-scale graphs.
Contribution
It introduces Skipper, a novel single-pass, asynchronous parallel maximal matching algorithm that eliminates the need for graph pruning and reduces memory and synchronization overheads.
Findings
Achieves up to 15.6x speedup on large graphs.
Processes each edge only once, reducing memory and computation.
Operates effectively on graphs with up to 224 billion edges.
Abstract
Maximal Matching (MM) is a fundamental graph problem with diverse applications. While state-of-the-art parallel MM algorithms have a total expected work linear in number of edges, they require randomization, iterative graph processing, and graph pruning after each iteration. These overheads increase execution time and demand additional memory, reducing applicability to large-scale graphs. In this paper, we introduce Skipper, an asynchronous Maximal Matching algorithm that resolves conflicts instantaneously using a parallel reservation strategy, which merges both reservation and committing steps into a single step. Skipper processes each edge only once, definitively determining whether the edge is selected as a match. Skipper does not require graph pruning and minimizes memory space utilization, requiring only a single byte of memory space per vertex. Furthermore, Skipper operates in…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAlgorithms and Data Compression · semigroups and automata theory · Machine Learning and Algorithms
