133 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
A Nearly Optimal Lower Bound on the Approximate Degree of AC
The approximate degree of a Boolean function is the least degree of a real polynomial that
approximates pointwise to error at most . We introduce a generic
method for increasing the approximate degree of a given function, while
preserving its computability by constant-depth circuits.
Specifically, we show how to transform any Boolean function with
approximate degree into a function on variables with approximate degree at least . In particular, if , then
is polynomially larger than . Moreover, if is computed by a
polynomial-size Boolean circuit of constant depth, then so is .
By recursively applying our transformation, for any constant we
exhibit an AC function of approximate degree . This
improves over the best previous lower bound of due to
Aaronson and Shi (J. ACM 2004), and nearly matches the trivial upper bound of
that holds for any function. Our lower bounds also apply to
(quasipolynomial-size) DNFs of polylogarithmic width.
We describe several applications of these results. We give:
* For any constant , an lower bound on the
quantum communication complexity of a function in AC.
* A Boolean function with approximate degree at least ,
where is the certificate complexity of . This separation is optimal
up to the term in the exponent.
* Improved secret sharing schemes with reconstruction procedures in AC.Comment: 40 pages, 1 figur
Shortest Path versus Multi-Hub Routing in Networks with Uncertain Demand
We study a class of robust network design problems motivated by the need to
scale core networks to meet increasingly dynamic capacity demands. Past work
has focused on designing the network to support all hose matrices (all matrices
not exceeding marginal bounds at the nodes). This model may be too conservative
if additional information on traffic patterns is available. Another extreme is
the fixed demand model, where one designs the network to support peak
point-to-point demands. We introduce a capped hose model to explore a broader
range of traffic matrices which includes the above two as special cases. It is
known that optimal designs for the hose model are always determined by
single-hub routing, and for the fixed- demand model are based on shortest-path
routing. We shed light on the wider space of capped hose matrices in order to
see which traffic models are more shortest path-like as opposed to hub-like. To
address the space in between, we use hierarchical multi-hub routing templates,
a generalization of hub and tree routing. In particular, we show that by adding
peak capacities into the hose model, the single-hub tree-routing template is no
longer cost-effective. This initiates the study of a class of robust network
design (RND) problems restricted to these templates. Our empirical analysis is
based on a heuristic for this new hierarchical RND problem. We also propose
that it is possible to define a routing indicator that accounts for the
strengths of the marginals and peak demands and use this information to choose
the appropriate routing template. We benchmark our approach against other
well-known routing templates, using representative carrier networks and a
variety of different capped hose traffic demands, parameterized by the relative
importance of their marginals as opposed to their point-to-point peak demands
- …