Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Algorithms for Balanced Graph Colorings with Applications in Parallel Computing

Journal Article · · IEEE Transactions on Parallel and Distributed Systems

Graph coloring is used to identify subsets of independent tasks in parallel scientific computing applications. Traditional coloring heuristics aim to reduce the number of colors used as that number also corresponds to the number of parallel steps in the application. However, if the color classes produced have a skew in their sizes, utilization of hardware resources becomes inefficient, especially for the smaller color classes. Equitable coloring is a theoretical formulation of coloring that guarantees a perfect balance among color classes, and its practical relaxation is referred to as balanced coloring. In this paper, we revisit the problem of balanced coloring in the context of parallel computing. The goal is to achieve a balanced coloring of an input graph without increasing the number of colors that an algorithm oblivious to balance would have used. We propose and study multiple heuristics that aim to achieve such a balanced coloring for two variants of coloring problem, distance-1 coloring and partial distance-2 coloring (defined on a bipartite graph). We present parallelization approaches for multi-core and manycore architectures, and cross-evaluate their effectiveness with respect to the quality of balance achieved and performance. Furthermore, we study the impact of the proposed balanced coloring heuristics on a concrete application - viz. parallel community detection, which is an example of an irregular application. In addition, we propose several extensions to our balancing schemes and evaluate their balancing efficacy and performance characteristics. The thorough treatment of balanced coloring presented in this paper from algorithms to application is expected to serve as a valuable resource to parallel application developers who seek to improve parallel performance of their applications using coloring.

Research Organization:
Pacific Northwest National Laboratory (PNNL), Richland, WA (United States)
Sponsoring Organization:
USDOE
DOE Contract Number:
AC05-76RL01830
OSTI ID:
1700512
Report Number(s):
PNNL-SA-114188
Journal Information:
IEEE Transactions on Parallel and Distributed Systems, Journal Name: IEEE Transactions on Parallel and Distributed Systems Journal Issue: 5 Vol. 28
Country of Publication:
United States
Language:
English

Similar Records

Balanced Coloring for Parallel Computing Applications
Conference · Mon Jul 20 00:00:00 EDT 2015 · OSTI ID:1515045

Computing a minimum biclique cover is polynomial for bipartite domino-free graphs
Conference · Sun Jun 01 00:00:00 EDT 1997 · OSTI ID:471657

Parallel iterative solution of sparse linear systems using orderings from graph coloring heuristics
Technical Report · Fri Nov 30 23:00:00 EST 1990 · OSTI ID:10148824