Distributed-Memory Parallel Algorithms for Distance-2 Coloring and Related Problems in Derivative Computation

The distance-2 graph coloring problem aims at partitioning the vertex set of a graph into the fewest sets consisting of vertices pairwise at distance greater than 2 from each other. Its applications include derivative computation in numerical optimization and channel assignment in radio networks. We present efficient, distributed-memory, parallel heuristic algorithms for this NP-hard problem as well as for two related problems used in the computation of Jacobians and Hessians. Parallel speedup is achieved through graph partitioning, speculative (iterative) coloring, and a bulk synchronous parallel-like organization of parallel computation. Results from experiments conducted on a PC cluster employing up to 96 processors and using large-size real-world as well as synthetically generated test graphs show that the algorithms are scalable. In terms of quality of solution, the algorithms perform remarkably well—the numbers of colors used by the parallel algorithms are observed to be very close to the numbers used by their sequential counterparts, which in turn are quite often near optimal. Moreover, the experimental results show that the parallel distance-2 coloring algorithm compares favorably with the alternative approach of solving the distance-2 coloring problem on a graph $\mathcal{G}$ by first constructing the square graph $\mathcal{G}^2$ and then applying a parallel distance-1 coloring algorithm on $\mathcal{G}^2$. Implementations of the algorithms are made available via the Zoltan toolkit.

[1]  John B. Shoven,et al.  I , Edinburgh Medical and Surgical Journal.

[2]  M. Powell,et al.  On the Estimation of Sparse Hessian Matrices , 1979 .

[3]  S. Thomas McCormick,et al.  Optimal approximation of sparse hessians and its equivalence to a graph coloring problem , 1983, Math. Program..

[4]  J. J. Moré,et al.  Estimation of sparse jacobian matrices and graph coloring problems , 1983 .

[5]  John D. Ramsdell,et al.  Estimation of Sparse Jacobian Matrices , 1983 .

[6]  Thomas F. Coleman,et al.  Estimation of sparse hessian matrices and graph coloring problems , 1982, Math. Program..

[7]  Mark T. Jones,et al.  Scalable Iterative Solution of Sparse Linear Systems , 1994, Parallel Comput..

[8]  Yousef Saad,et al.  ILUM: A Multi-Elimination ILU Preconditioner for General Sparse Matrices , 1996, SIAM J. Sci. Comput..

[9]  Vipin Kumar,et al.  A Fast and High Quality Multilevel Scheme for Partitioning Irregular Graphs , 1998, SIAM J. Sci. Comput..

[10]  Ümit V. Çatalyürek,et al.  Hypergraph-Partitioning-Based Decomposition for Parallel Sparse-Matrix Vector Multiplication , 1999, IEEE Trans. Parallel Distributed Syst..

[11]  Magnús M. Halldórsson,et al.  Coloring powers of planar graphs , 2000, SODA '00.

[12]  Assefaw H. Gebremedhin,et al.  Scalable parallel graph coloring algorithms , 2000 .

[13]  M. Halldórsson,et al.  On Powers of Chordal Graphs And Their Colorings , 2000 .

[14]  Patrick Amestoy,et al.  A Fully Asynchronous Multifrontal Solver Using Distributed Dynamic Scheduling , 2001, SIAM J. Matrix Anal. Appl..

[15]  Alex Pothen,et al.  A Scalable Parallel Algorithm for Incomplete Factor Preconditioning , 2000, SIAM J. Sci. Comput..

[16]  Madhav V. Marathe,et al.  Approximation Algorithms for Channel Assignment in Radio Networks , 1998 .

[17]  Courtenay T. Vaughan,et al.  Zoltan data management services for parallel dynamic applications , 2002, Comput. Sci. Eng..

[18]  Alex Pothen,et al.  Parallel Distance-k Coloring Algorithms for Numerical Optimization , 2002, Euro-Par.

[19]  Mark E. J. Newman,et al.  The Structure and Function of Complex Networks , 2003, SIAM Rev..

[20]  Paul D. Hovland,et al.  Metrics and models for reordering transformations , 2004, MSP '04.

[21]  Henry D. Shapiro,et al.  Heuristics for rapidly four-coloring large planar graphs , 1991, Algorithmica.

[22]  Alex Pothen,et al.  What Color Is Your Jacobian? Graph Coloring for Computing Derivatives , 2005, SIAM Rev..

[23]  Ümit V. Çatalyürek,et al.  A Parallel Distance-2 Graph Coloring Algorithm for Distributed Memory Computers , 2005, HPCC.

[24]  Ami Marowka,et al.  Parallel Scientific Computation: A Structured Approach using BSP and MPI , 2006, Scalable Comput. Pract. Exp..

[25]  Alex Pothen,et al.  New Acyclic and Star Coloring Algorithms with Application to Computing Hessians , 2007, SIAM J. Sci. Comput..

[26]  Ümit V. Çatalyürek,et al.  A framework for scalable greedy coloring on distributed-memory parallel computers , 2008, J. Parallel Distributed Comput..

[27]  Andrea Walther,et al.  Efficient Computation of Sparse Hessians Using Coloring and Automatic Differentiation , 2009, INFORMS J. Comput..