Title :
Balanced Coloring for Parallel Computing Applications
Author :
Hao Lu ; Halappanavar, Mahantesh ; Chavarria-Miranda, Daniel ; Gebremedhin, Assefaw ; Kalyanaraman, Ananth
Author_Institution :
Washington State Univ., Pullman, WA, USA
Abstract :
Graph colouring is used to identify subsets of independent tasks in parallel scientific computing applications. Traditional colouring heuristics aim to reduce the number of colours 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 colouring is a theoretical formulation of colouring that guarantees a perfect balance among color classes, and its practical relaxation is referred to as balanced colouring. In this paper, we revisit the problem of balanced colouring in the context of parallel computing. The goal is to achieve a balanced colouring of an input graph without increasing the number of colours that an algorithm oblivious to balance would have used. We propose and study multiple heuristics that aim to achieve such a balanced colouring, present parallelization approaches for multi-core and manicure 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 colouring heuristics on a concrete application - viz. parallel community detection, which is an example of an irregular application. The thorough treatment of balanced colouring 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 colouring.
Keywords :
graph colouring; multiprocessing systems; parallel architectures; balanced graph coloring heuristics; colouring heuristics; equitable colouring; input graph; manicure architectures; manycore architecture; multicore architectures; multiple heuristics; parallel community detection; parallel scientific computing; Color; Communities; Computer architecture; Context; Image color analysis; Processor scheduling; Balanced coloring; Tilera manycore architecture; community detection; graph algorithms;
Conference_Titel :
Parallel and Distributed Processing Symposium (IPDPS), 2015 IEEE International
Conference_Location :
Hyderabad
DOI :
10.1109/IPDPS.2015.113