An Adaptive Load Balancer For Graph Analytical Applications on GPUs
Load balancing graph analytics workloads on GPUs is difficult because of the irregular nature of graph applications and the high variability in vertex degrees, particularly in power-law graphs. In this paper, we describe a novel load balancing scheme that aims to address this problem. Our scheme is implemented in the IrGL compiler to allow users to generate efficient load-balanced code for GPUs from high-level sequential programs. We evaluated several IrGL-generated load-balanced programs on up to 16 GPUs. Our experiments show that this scheme can achieve an average speed-up of 1.5x on inputs that suffer from severe load imbalance problems when previous state-of-the-art load-balancing schemes are used.
READ FULL TEXT