27,852 research outputs found
Locality in Distributed Graph Algorithms
International audienceSurvey of core results in the context of locality in distributed graph algorithms
Locality in Online, Dynamic, Sequential, and Distributed Graph Algorithms
In this work, we give a unifying view of locality in four settings: distributed algorithms, sequential greedy algorithms, dynamic algorithms, and online algorithms. We introduce a new model of computing, called the online-LOCAL model: the adversary presents the nodes of the input graph one by one, in the same way as in classical online algorithms, but for each node we get to see its radius-T neighborhood before choosing the output. Instead of looking ahead in time, we have the power of looking around in space.
We compare the online-LOCAL model with three other models: the LOCAL model of distributed computing, where each node produces its output based on its radius-T neighborhood, the SLOCAL model, which is the sequential counterpart of LOCAL, and the dynamic-LOCAL model, where changes in the dynamic input graph only influence the radius-T neighborhood of the point of change.
The SLOCAL and dynamic-LOCAL models are sandwiched between the LOCAL and online-LOCAL models. In general, all four models are distinct, but we study in particular locally checkable labeling problems (LCLs), which is a family of graph problems extensively studied in the context of distributed graph algorithms. We prove that for LCL problems in paths, cycles, and rooted trees, all four models are roughly equivalent: the locality of any LCL problem falls in the same broad class - O(log* n), ?(log n), or n^?(1) - in all four models. In particular, this result enables one to generalize prior lower-bound results from the LOCAL model to all four models, and it also allows one to simulate e.g. dynamic-LOCAL algorithms efficiently in the LOCAL model.
We also show that this equivalence does not hold in two-dimensional grids or general bipartite graphs. We provide an online-LOCAL algorithm with locality O(log n) for the 3-coloring problem in bipartite graphs - this is a problem with locality ?(n^{1/2}) in the LOCAL model and ?(n^{1/10}) in the SLOCAL model
Distributed graph problems through an automata-theoretic lens
The locality of a graph problem is the smallest distance such that each
node can choose its own part of the solution based on its radius-
neighborhood. In many settings, a graph problem can be solved efficiently with
a distributed or parallel algorithm if and only if it has a small locality.
In this work we seek to automate the study of solvability and locality: given
the description of a graph problem , we would like to determine if
is solvable and what is the asymptotic locality of as a function of the
size of the graph. Put otherwise, we seek to automatically synthesize efficient
distributed and parallel algorithms for solving .
We focus on locally checkable graph problems; these are problems in which a
solution is globally feasible if it looks feasible in all constant-radius
neighborhoods. Prior work on such problems has brought primarily bad news:
questions related to locality are undecidable in general, and even if we focus
on the case of labeled paths and cycles, determining locality is
-hard (Balliu et al., PODC 2019).
We complement prior negative results with efficient algorithms for the cases
of unlabeled paths and cycles and, as an extension, for rooted trees. We
introduce a new automata-theoretic perspective for studying locally checkable
graph problems. We represent a locally checkable problem as a
nondeterministic finite automaton over a unary alphabet. We
identify polynomial-time-computable properties of the automaton
that near-completely capture the solvability and locality of in cycles
and paths, with the exception of one specific case that is
\mbox{co-\mathsf{NP}}-complete
The Reverse Cuthill-McKee Algorithm in Distributed-Memory
Ordering vertices of a graph is key to minimize fill-in and data structure
size in sparse direct solvers, maximize locality in iterative solvers, and
improve performance in graph algorithms. Except for naturally parallelizable
ordering methods such as nested dissection, many important ordering methods
have not been efficiently mapped to distributed-memory architectures. In this
paper, we present the first-ever distributed-memory implementation of the
reverse Cuthill-McKee (RCM) algorithm for reducing the profile of a sparse
matrix. Our parallelization uses a two-dimensional sparse matrix decomposition.
We achieve high performance by decomposing the problem into a small number of
primitives and utilizing optimized implementations of these primitives. Our
implementation shows strong scaling up to 1024 cores for smaller matrices and
up to 4096 cores for larger matrices
Capturing Topology in Graph Pattern Matching
Graph pattern matching is often defined in terms of subgraph isomorphism, an
NP-complete problem. To lower its complexity, various extensions of graph
simulation have been considered instead. These extensions allow pattern
matching to be conducted in cubic-time. However, they fall short of capturing
the topology of data graphs, i.e., graphs may have a structure drastically
different from pattern graphs they match, and the matches found are often too
large to understand and analyze. To rectify these problems, this paper proposes
a notion of strong simulation, a revision of graph simulation, for graph
pattern matching. (1) We identify a set of criteria for preserving the topology
of graphs matched. We show that strong simulation preserves the topology of
data graphs and finds a bounded number of matches. (2) We show that strong
simulation retains the same complexity as earlier extensions of simulation, by
providing a cubic-time algorithm for computing strong simulation. (3) We
present the locality property of strong simulation, which allows us to
effectively conduct pattern matching on distributed graphs. (4) We
experimentally verify the effectiveness and efficiency of these algorithms,
using real-life data and synthetic data.Comment: VLDB201
Towards Universally Optimal Shortest Paths Algorithms in the Hybrid Model
A drawback of the classic approach for complexity analysis of distributed
graph problems is that it mostly informs about the complexity of notorious
classes of ``worst case'' graphs. Algorithms that are used to prove a tight
(existential) bound are essentially optimized to perform well on such worst
case graphs. However, such graphs are often either unlikely or actively avoided
in practice, where benign graph instances usually admit much faster solutions.
To circumnavigate these drawbacks, the concept of universal complexity
analysis in the distributed setting was suggested by [Kutten and Peleg,
PODC'95] and actively pursued by [Haeupler et al., STOC'21]. Here, the aim is
to gauge the complexity of a distributed graph problem depending on the given
graph instance. The challenge is to identify and understand the graph property
that allows to accurately quantify the complexity of a distributed problem on a
given graph.
In the present work, we consider distributed shortest paths problems in the
HYBRID model of distributed computing, where nodes have simultaneous access to
two different modes of communication: one is restricted by locality and the
other is restricted by congestion. We identify the graph parameter of
neighborhood quality and show that it accurately describes a universal bound
for the complexity of certain class of shortest paths problems in the HYBRID
model
- …