Abstract
This paper introduces a new approach to building distributed-memory graph analytics systems that exploits heterogeneity in processor types (CPU and GPU), partitioning policies, and programming models. The key to this approach is Gluon, a communication-optimizing substrate. Programmers write applications in a shared-memory programming system of their choice and interface these applications with Gluon using a lightweight API. Gluon enables these programs to run on heterogeneous clusters and optimizes communication in a novel way by exploiting structural and temporal invariants of graph partitioning policies. To demonstrate Gluon's ability to support different programming models, we interfaced Gluon with the Galois and Ligra shared-memory graph analytics systems to produce distributed-memory versions of these systems named D-Galois and D-Ligra, respectively. To demonstrate Gluon's ability to support heterogeneous processors, we interfaced Gluon with IrGL, a state-of-the-art single-GPU system for graph analytics, to produce D-IrGL, the first multi-GPU distributed-memory graph analytics system. Our experiments were done on CPU clusters with up to 256 hosts and roughly 70,000 threads and on multi-GPU clusters with up to 64 GPUs. The communication optimizations in Gluon improve end-to-end application execution time by g1/42.6× on the average. D-Galois and D-IrGL scale well and are faster than Gemini, the state-of-the-art distributed CPU graph analytics system, by factors of g1/43.9× and g1/44.9×, respectively, on the average.
Author supplied keywords
Cite
CITATION STYLE
Dathathri, R., Gill, G., Hoang, L., Dang, H. V., Brooks, A., Dryden, N., … Pingali, K. (2018). Gluon: A communication-optimizing substrate for distributed heterogeneous graph analytics. ACM SIGPLAN Notices, 53(4), 752–768. https://doi.org/10.1145/3192366.3192404
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.