A Performance and Recommendation System for Parallel Graph Processing Implementations: Work-In-Progress
A Performance and Recommendation System for Parallel Graph Processing Implementations: Work-In-Progress
复制标题
DOI:
10.1145/3302541.3313097
复制
发表时间:
2019-03
期刊:
影响因子:
--
通讯作者:
Samuel D. Pollard;Sudharshan Srinivasan;Boyana Norris
中科院分区:
文献类型:
--
作者:
Samuel D. Pollard;Sudharshan Srinivasan;Boyana Norris
There are nearly one hundred parallel and distributed graph processing packages. Selecting the best package for a given problem is difficult; some packages require GPUs, some are optimized for distributed or shared memory, and some require proprietary compilers or perform better on different hardware. Furthermore, performance may vary wildly depending on the graph itself. This complexity makes selecting the optimal implementation manually infeasible. We develop an approach to predict the performance of parallel graph processing using both regression models and binary classification by labeling configurations as either well-performing or not. We demonstrate our approach on six graph processing packages: GraphMat, the Graph500, the Graph Algorithm Platform Benchmark Suite, GraphBIG, Galois, and PowerGraph and on four algorithms: PageRank, single-source shortest paths, triangle counting, and breadth first search. Given a graph, our method can estimate execution time or suggest an implementation and thread count expected to perform well. Our method correctly identifies well-performing configurations in 97% of test cases.