Complexity of network synchronization
Journal of the ACM (JACM)
Introduction to parallel algorithms and architectures: array, trees, hypercubes
Introduction to parallel algorithms and architectures: array, trees, hypercubes
An introduction to parallel algorithms
An introduction to parallel algorithms
A Graph-Theoretic Game and its Application to the $k$-Server Problem
SIAM Journal on Computing
Interior point algorithms: theory and analysis
Interior point algorithms: theory and analysis
A randomized parallel algorithm for single-source shortest paths
Journal of Algorithms
Polylog-time and near-linear work approximation scheme for undirected shortest paths
Journal of the ACM (JACM)
A mathematical view of interior-point methods in convex optimization
A mathematical view of interior-point methods in convex optimization
Solving Sparse, Symmetric, Diagonally-Dominant Linear Systems in Time 0(m1.31)
FOCS '03 Proceedings of the 44th Annual IEEE Symposium on Foundations of Computer Science
Convex Optimization
Proceedings of the thirty-seventh annual ACM symposium on Theory of computing
A linear work, O(n1/6) time, parallel algorithm for solving planar Laplacians
SODA '07 Proceedings of the eighteenth annual ACM-SIAM symposium on Discrete algorithms
Combinatorial and algebraic tools for optimal multilevel algorithms
Combinatorial and algebraic tools for optimal multilevel algorithms
Graph sparsification by effective resistances
STOC '08 Proceedings of the fortieth annual ACM symposium on Theory of computing
Fast algorithms for constructing t-spanners and paths with stretch t
SFCS '93 Proceedings of the 1993 IEEE 34th Annual Foundations of Computer Science
Nearly Tight Low Stretch Spanning Trees
FOCS '08 Proceedings of the 2008 49th Annual IEEE Symposium on Foundations of Computer Science
Approaching Optimality for Solving SDD Linear Systems
FOCS '10 Proceedings of the 2010 IEEE 51st Annual Symposium on Foundations of Computer Science
The laplacian paradigm: emerging algorithms for massive graphs
TAMC'10 Proceedings of the 7th annual conference on Theory and Applications of Models of Computation
Parallel and I/O efficient set covering algorithms
Proceedings of the twenty-fourth annual ACM symposium on Parallelism in algorithms and architectures
A fast solver for a class of linear systems
Communications of the ACM
Runtime guarantees for regression problems
Proceedings of the 4th conference on Innovations in Theoretical Computer Science
Hi-index | 0.05 |
This paper presents the design and analysis of a near linear-work parallel algorithm for solving symmetric diagonally dominant (SDD) linear systems. On input an SDD n-by-n matrix A with m non-zero entries and a vector b, our algorithm computes a vector x such that Ax - A+b ≤ ε • A+b in O(m logO(1) n log 1/ε) work and O(m1/3+θ log 1/ε) depth for any fixed θ 0. The algorithm relies on a parallel algorithm for generating low-stretch spanning trees or spanning subgraphs. To this end, we first develop a parallel decomposition algorithm that in polylogarithmic depth and O(|E|) work, partitions a graph into components with polylogarithmic diameter such that only a small fraction of the original edges are between the components. This can be used to generate low-stretch spanning trees with average stretch O(nα) in O(n1+α) work and O(nα) depth. Alternatively, it can be used to generate spanning subgraphs with polylogarithmic average stretch in O(|E|) work and polylogarithmic depth. We apply this subgraph construction to derive our solver. By using the linear system solver in known applications, our results imply improved parallel randomized algorithms for several problems, including single-source shortest paths, maximum flow, min-cost flow, and approximate max-flow.