Title
Optimizing Approximate Weighted Matching on Nvidia Kepler K40.
Abstract
Matching is a fundamental graph problem with numerous applications in science and engineering. While algorithms for computing optimal matchings are difficult to parallelize, approximation algorithms on the other hand generally compute high quality solutions and are amenable to parallelization. In this paper, we present efficient implementations of the current best algorithm for half-approximate weighted matching, the Suitor algorithm, on Nvidia Kepler K-40 platform. We develop four variants of the algorithm that exploit hardware features to address key challenges for a GPU implementation. We also experiment with different combinations of work assigned to a warp. Using an exhaustive set of 269 inputs, we demonstrate that the new implementation outperforms the previous best GPU algorithm by 10 to 100x for over 100 instances, and from 100 to 1000x for 15 instances. We also demonstrate up to 20x speedup relative to 2 threads, and up to 5x relative to 16 threads on Intel Xeon platform with 16 cores for the same algorithm. The new algorithms and implementations provided in this paper will have a direct impact on several applications that repeatedly use matching as a key compute kernel. Further, algorithm designs and insights provided in this paper will benefit other researchers implementing graph algorithms on modern GPU architectures.
Year
DOI
Venue
2015
10.1109/HiPC.2015.15
HiPC
Keywords
Field
DocType
Weighted matching, graph algorithms, GPU, Kepler K40
Approximation algorithm,Algorithm design,Computer science,Instruction set,Parallel computing,Thread (computing),Xeon,Compute kernel,Sparse matrix,Speedup,Distributed computing
Conference
Citations 
PageRank 
References 
1
0.36
14
Authors
5
Name
Order
Citations
PageRank
Md. Naim110.70
Fredrik Manne281.85
Mahantesh Halappanavar321833.64
Antonino Tumeo435644.70
Johannes Langguth58512.71