arXiv · 1912.01478
A Hybrid Graph Coloring Algorithm for GPUs
Abstract
Graph algorithms mainly belong to two categories, topology-driven and data-driven. Data-driven approach maintains a worklist of active nodes, the nodes on which work has to be done. Topology-driven approach sweeps over the entire graph to find active nodes. Hybridization is an optimization technique where in each iteration, the computation is done in a topology-driven or data-driven manner based on worklist size. In hybrid implementations, there is a need to switch between topology-driven and data-driven approaches. Typically, a worklist is maintained just in the data-driven part of the algorithm and discarded in the topology-driven part. We propose a variant of hybridization, wherein a worklist is maintained throughout all iterations of the algorithm and still show it to be faster than both, topology-driven and data-driven approaches. We consider a graph coloring algorithm called IPGC (Iterative Parallel Graph Coloring) and implement a hybrid version for the same in a graph domain specific language called IrGL. We observe a mean speedup of 2.13x over a data-driven implementation of IPGC on a suite of 10 large graphs on a NVIDIA GPU.
Explore related subjects
Keep this discovery
Shanthanu S Rai, Rohit M P, Sreepathi Pai. 2019-12-03. A Hybrid Graph Coloring Algorithm for GPUs. https://arxiv.org/abs/1912.01478
Cite the original work for its findings. Save a collection to share your selection of sources.