A framework for scalable greedy coloring on distributed-memory parallel computers

We present a scalable framework for parallelizing greedy graph coloring algorithms on distributed-memory computers. The framework unifies several existing algorithms and blends a variety of techniques for creating or facilitating concurrency. The latter techniques include exploiting features of the initial data distribution, the use of speculative coloring and randomization, and a BSP-style organization of computation and communication. We experimentally study the performance of several specialized algorithms designed using the framework and implemented using MPI. The experiments are conducted on two different platforms and the test cases include large-size synthetic graphs as well as real graphs drawn from various application areas. Computational results show that implementations that yield good speedup while at the same time using about the same number of colors as a sequential greedy algorithm can be achieved by setting parameters of the framework in accordance with the size and structure of the graph being colored. Our implementation is freely available as part of the Zoltan parallel data management and load-balancing library.

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

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

[3]  Michael Luby,et al.  A simple parallel algorithm for the maximal independent set problem , 1985, STOC '85.

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

[5]  Fredrik Manne A Parallel Algorithm for Computing the Extremal Eigenvalues of Very Large Sparse Matrices , 1998, PARA.

[6]  Isabelle Guérin Lassous,et al.  Graph coloring on coarse grained multicomputers , 2003, Discret. Appl. Math..

[7]  Mark T. Jones,et al.  A Parallel Graph Coloring Heuristic , 1993, SIAM J. Sci. Comput..

[8]  ManneFredrik,et al.  A framework for scalable greedy coloring on distributed-memory parallel computers , 2008 .

[9]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

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

[11]  Mark T. Jones,et al.  Parallel Heuristics for Improved, Balanced Graph Colorings , 1996, J. Parallel Distributed Comput..

[12]  Ümit V. Çatalyürek,et al.  A Scalable Parallel Graph Coloring Algorithm for Distributed Memory Computers , 2005, Euro-Par.

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

[14]  Larry Carter,et al.  Combining Performance Aspects of Irregular Gauss-Seidel Via Sparse Tiling , 2002, LCPC.

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

[16]  Giorgio Gambosi,et al.  Complexity and Approximation , 1999, Springer Berlin Heidelberg.

[17]  Assefaw Hadish Gebremedhin,et al.  Scalable parallel graph coloring algorithms , 2000, Concurr. Pract. Exp..

[18]  Giorgio Gambosi,et al.  Complexity and approximation: combinatorial optimization problems and their approximability properties , 1999 .

[19]  Kivanc Dincer,et al.  A Comparison of Parallel Graph Coloring Algorithms , 1995 .

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

[21]  Rob H. Bisseling,et al.  Parallel scientific computation - a structured approach using BSP and MPI , 2004 .

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

[23]  Leslie G. Valiant,et al.  A bridging model for parallel computation , 1990, CACM.

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

[25]  Assefaw Hadish Gebremedhin,et al.  Speeding up Parallel Graph Coloring , 2004, PARA.

[26]  Öjvind Johansson Simple Distributed Delta+1-coloring of Graphs , 1999, Inf. Process. Lett..

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

[28]  Jorge J. Moré,et al.  Digital Object Identifier (DOI) 10.1007/s101070100263 , 2001 .

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

[30]  Alessandro Panconesi,et al.  An Experimental Analysis of Simple, Distributed Vertex Coloring Algorithms , 2002, SODA '02.