In parallel scientific computing applications, computational dependency is often
modeled using a graph. A vertex coloring of the graph is then used as a routine
to identify independent subtasks that can be performed concurrently. Examples
of cases where coloring is used for such a purpose include iterative solution of
sparse linear systems, preconditioners, sparse tiling, and eigenvalue
computation. The computational (model) graph in such contexts is often already
distributed among processors and therefore the coloring needs to be performed in
parallel. The alternative approach of gathering the graph on one processor for a
subsequent sequential coloring (by the same processor) is prohibitively time
consuming or even infeasible due to memory constraints.
We designed and developed a scalable shared- and distributed-memory parallel
distance-1 and distance-2 coloring algorithms.
A (distance-1) coloring of a graph is an assignment of positive integers
(colors) to vertices such that every pair of adjacent vertices
receives different colors.
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 two from each other.
Equivalence among structurally orthogonal column partition of a matrix \(A\),
distance-2 coloring of the graph \(G(A)\) of \(A\) and distance-1 coloring of \(G^{2}(A)\).
Top: symmetric case. Bottom: non-symmetric case,
where \(G_{b}^2[V_2]\) denotes the subgraph of the square
graph \(G_{b}^{2}\) induced by the vertex set \(V_2\).
Implementation of our algorithms can be found as part of Zoltan at
the Zoltan project web site.
Related Publications
On Distributed Graph Coloring with Iterative Recoloring
ArXiv arXiv:1407.6745,
2014.
Graph Coloring Algorithms for Multi-core and Massively Multithreaded Architectures
Ümit V. Çatalyürek,
John Feo,
Assefaw H. Gebremedhin,
Mahantesh Halappanavar,
and Alex Pothen
Parallel Computing,
2012, Also available on ArXiv.
An Early Evaluation of the Scalability of Graph Algorithms on the Intel MIC Architecture
In 26th International Parallel and Distributed Processing Symposium, Workshops and PhD Forum (IPDPSW), Workshop on Multithreaded Architectures and Applications (MTAAP),
2012.
Scalable Hybrid Implementation of Graph Coloring using MPI and OpenMP
In 26th International Parallel and Distributed Processing Symposium, Workshops and PhD Forum (IPDPSW), Workshop on Parallel Computing and Optimization (PCO),
2012.
Considerations on Parallel Graph Coloring Algorithms
Abstract, SIAM Conference on Parallel Processing for Scientific Computing,
2012.
The Zoltan and Isorropia parallel toolkits for combinatorial scientific computing: Partitioning, ordering and coloring
Scientific Programming,
2012.
Improving Graph Coloring on Distributed Memory Parallel Computers
In Proceedings of the 18th Annual International Conference on High Performance Computing (HiPC 2011),
2011.
Distributed-Memory Parallel Algorithms for Matching and Coloring
Ümit V. Çatalyürek,
Florin Dobrian,
Assefaw H. Gebremedhin,
Mahantesh Halappanavar,
and Alex Pothen
In 2011 International Parallel and Distributed Processing Symposium, Workshops and PhD Forum (IPDPSW), Workshop on Parallel Computing and Optimization (PCO’11),
2011.
Distributed-memory Parallel Algorithms for Distance-2 Coloring and Related Problems in Derivative Computation
Doruk Bozdağ,
Ümit V. Çatalyürek,
Assefaw H. Gebremedhin,
F. Manne,
Erik G. Boman,
and F. Özgüner
SIAM Journal on Scientific Computing (SISC),
2010.
Combinatorial Algorithms Enabling Scientific Computing: Petascale Algorithms for Graph Coloring and Matching
Doruk Bozdağ,
Ümit V. Çatalyürek,
F. Dobrian,
Assefaw H. Gebremedhin,
Mahantesh Halappanavar,
and Alex Pothen
Poster, 21st Supercomputing Conference,
2009.
Graph Coloring and Clustering Algorithms for Science and Engineering Applications
Doruk Bozdağ
PhD thesis,
The Ohio State University, Biomedical Informatics ,
2008.
Parallel Distance-2 Coloring
Doruk Bozdağ,
Ümit V. Çatalyürek,
Assefaw H. Gebremedhin,
F. Manne,
and Erik G. Boman
Abstract, Workshop on Combinatorial Scientific Computing and Petascale Simulations,
2008.
A framework for scalable greedy coloring on distributed-memory parallel computers
Doruk Bozdağ,
Assefaw H. Gebremedhin,
F. Manne,
Erik G. Boman,
and Ümit V. Çatalyürek
Journal of Parallel and Distributed Computing,
2008.
Combinatorial algorithms for computational science and engineering
Erik G. Boman,
Doruk Bozdağ,
Ümit V. Çatalyürek,
K. D. Devine,
Assefaw H. Gebremedhin,
P. D. Hovland,
and Alex Pothen
In Journal of Physics: Conference Series,
2008.
Enabling high performance computational science through combinatorial algorithms
Erik G. Boman,
Doruk Bozdağ,
Ümit V. Çatalyürek,
K. D. Devine,
Assefaw H. Gebremedhin,
P. D. Hovland,
Alex Pothen,
and M. M. Strout
In Journal of Physics: Conference Series,
2007.
A Parallel Distance-2 Graph Coloring Algorithm for Distributed Memory Computers
Doruk Bozdağ,
Ümit V. Çatalyürek,
Assefaw H. Gebremedhin,
F. Manne,
Erik G. Boman,
and F. Özgüner
In Proc. of 1st Int’l. Conf. on High Performance Computing and Communications,
2005.
A Scalable Parallel Graph Coloring Algorithm for Distributed Memory Computers
Erik G. Boman,
Doruk Bozdağ,
Ümit V. Çatalyürek,
Assefaw H. Gebremedhin,
and F. Manne
In Proc. of 11th Int’l. Euro-Par Conf. on Parallel Processing,
2005.