Affiliation:
1. University of Pittsburgh
2. Carnegie Mellon University in Qatar, Doha, Qatar
Abstract
In this paper, we propose a new parallelism model denoted as
MPI
*
X
and suggest a linear algebra-based graph analytics system, namely, Graphite, which effectively employs it. MPI * X promotes
thread-based partitioning
to distribute computation and communication across threads on a cluster of machines, while eliminating the need for unnecessary thread synchronizations. Consequently, it contrasts with the traditional
MPI + X parallelism model
, which utilizes
process-based partitioning
to distribute data among processes as a way to
scale out
on a cluster of machines (the MPI part), then splits each partition into subpartitions among the threads of each process as a method to
scale up
within a machine (the X part). Besides adopting MPI * X, Graphite is NUMA-aware. In particular, it assigns threads to partitions in a way that exploits CPU and memory affinity, alongside leveraging faster MPI shared memory transport. Moreover, it adopts a variant of the popular GAS (Gather, Apply, and Scatter) computing model, thus decoupling the computation of partitions from the communication of partial results. Lastly, it supports thread-level asynchrony, which does not only overlap the computation with communication, but further interleaves multiple communications. We compared Graphite against GraphPad, Gemini, and LA3 graph analytics systems in an HPC environment using different graph applications. Results show that Graphite is roughly up to 3X faster than these state-of-the-art systems.
Subject
General Earth and Planetary Sciences,Water Science and Technology,Geography, Planning and Development
Cited by
8 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献