Title
Abelian: A Compiler for Graph Analytics on Distributed, Heterogeneous Platforms.
Abstract
The trend towards processor heterogeneity and distributed-memory has significantly increased the complexity of parallel programming. In addition, the mix of applications that need to run on parallel platforms today is very diverse, and includes graph applications that typically have irregular memory accesses and unpredictable control-flow. To simplify the programming of graph applications on such platforms, we have implemented a compiler called Abelian that translates shared-memory descriptions of graph algorithms written in the Galois programming model into efficient code for distributed-memory platforms with heterogeneous processors. The compiler manages inter-device synchronization and communication while leveraging state-of-the-art compilers for generating device-specific code. The experimental results show that the novel communication optimizations in the Abelian compiler reduce the volume of communication by 23(times ), enabling the code produced by Abelian to match the performance of handwritten distributed CPU and GPU programs that use the same runtime. The programs produced by Abelian for distributed CPUs are roughly 2.4(times ) faster than those in the Gemini system, a third-party distributed CPU-only system, demonstrating that Abelian can manage heterogeneity and distributed-memory successfully while generating high-performance code.
Year
Venue
Field
2018
Euro-Par
Graph theory,Abelian group,Programming paradigm,Supercomputer,Computer science,CUDA,Xeon Phi,Parallel computing,Symmetric multiprocessor system,Compiler
DocType
Citations 
PageRank 
Conference
3
0.36
References 
Authors
27
5
Name
Order
Citations
PageRank
Gurbinder Singh Gill1505.34
Roshan Dathathri2797.22
Loc Hoang3312.37
Andrew Lenharth445619.94
Keshav Pingali53056256.64