32,118 research outputs found
Theoretically Efficient Parallel Graph Algorithms Can Be Fast and Scalable
There has been significant recent interest in parallel graph processing due
to the need to quickly analyze the large graphs available today. Many graph
codes have been designed for distributed memory or external memory. However,
today even the largest publicly-available real-world graph (the Hyperlink Web
graph with over 3.5 billion vertices and 128 billion edges) can fit in the
memory of a single commodity multicore server. Nevertheless, most experimental
work in the literature report results on much smaller graphs, and the ones for
the Hyperlink graph use distributed or external memory. Therefore, it is
natural to ask whether we can efficiently solve a broad class of graph problems
on this graph in memory.
This paper shows that theoretically-efficient parallel graph algorithms can
scale to the largest publicly-available graphs using a single machine with a
terabyte of RAM, processing them in minutes. We give implementations of
theoretically-efficient parallel algorithms for 20 important graph problems. We
also present the optimizations and techniques that we used in our
implementations, which were crucial in enabling us to process these large
graphs quickly. We show that the running times of our implementations
outperform existing state-of-the-art implementations on the largest real-world
graphs. For many of the problems that we consider, this is the first time they
have been solved on graphs at this scale. We have made the implementations
developed in this work publicly-available as the Graph-Based Benchmark Suite
(GBBS).Comment: This is the full version of the paper appearing in the ACM Symposium
on Parallelism in Algorithms and Architectures (SPAA), 201
On the diameter of random planar graphs
We show that the diameter D(G_n) of a random labelled connected planar graph
with n vertices is equal to n^{1/4+o(1)}, in probability. More precisely there
exists a constant c>0 such that the probability that D(G_n) lies in the
interval (n^{1/4-\epsilon},n^{1/4+\epsilon}) is greater than
1-\exp(-n^{c\epsilon}) for {\epsilon} small enough and n>n_0(\epsilon). We
prove similar statements for 2-connected and 3-connected planar graphs and
maps.Comment: 24 pages, 7 figure
Lower Bounds for Symbolic Computation on Graphs: Strongly Connected Components, Liveness, Safety, and Diameter
A model of computation that is widely used in the formal analysis of reactive
systems is symbolic algorithms. In this model the access to the input graph is
restricted to consist of symbolic operations, which are expensive in comparison
to the standard RAM operations. We give lower bounds on the number of symbolic
operations for basic graph problems such as the computation of the strongly
connected components and of the approximate diameter as well as for fundamental
problems in model checking such as safety, liveness, and co-liveness. Our lower
bounds are linear in the number of vertices of the graph, even for
constant-diameter graphs. For none of these problems lower bounds on the number
of symbolic operations were known before. The lower bounds show an interesting
separation of these problems from the reachability problem, which can be solved
with symbolic operations, where is the diameter of the graph.
Additionally we present an approximation algorithm for the graph diameter
which requires symbolic steps to achieve a
-approximation for any constant . This compares to
symbolic steps for the (naive) exact algorithm and
symbolic steps for a 2-approximation. Finally we also give a refined analysis
of the strongly connected components algorithms of Gentilini et al., showing
that it uses an optimal number of symbolic steps that is proportional to the
sum of the diameters of the strongly connected components
- …