Search NASA⌕ Search

DOE OSTI · 1700512

Algorithms for Balanced Graph Colorings with Applications in Parallel Computing

Abstract

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.

Explore related subjects

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Lu, Hao, Halappanavar, Mahantesh, Chavarría-Miranda, Daniel, Gebremedhin, Assefaw, Panyala, Ajay R., Kalyanaraman, Anantharaman. 2017-05-01. Algorithms for Balanced Graph Colorings with Applications in Parallel Computing. https://doi.org/10.1109/tpds.2016.2620142

Cite the original work for its findings. Save a collection to share your selection of sources.