We are please to announce the v3 release of MPGraph. The MPGraph API
makes it easy to develop high performance graph analytics on GPUs. The
API is based on the Gather-Apply-Scatter (GAS) model as used in
GraphLab. To deliver high performance computation and efficiently
utilize the high memory bandwidth of GPUs, MPGraph’s CUDA kernels use
multiple sophisticated strategies, such as vertex-degree-dependent
dynamic parallelism granularity and frontier compaction.
The v3 release includes a 5x – 10x performance gain in algorithms
that have large frontiers (Connected Components, Page Rank, etc.).
This performance gain is obtained by using a different strategy to load
balance the GPU when the frontier is large. This strategy has more
overhead for small frontiers, but outperforms the existing kernels when
the frontier becomes large. MPGraph automatically chooses the best
strategy for each iteration of the computation.
Download MPGraph v3 from SourceForge now. Or you can get the latest development version from SVN:
The goal of this session
is to demonstrate how our high level abstraction enables developers to
quickly develop high performance graph analytics programs on GPUs
with up to 3 billion edges traversed per second on a Tesla or Kepler
GPU. High performance graph analytics are critical for a large range
of application domains. The SIMT architecture of the GPUs and the
irregularity nature of the graphs make it difficult to develop
efficient graph analytics programs. In this session, we present an open
source library that provides a high level abstraction for efficient
graph analytics with minimal coding effort. We use several specific
examples to show how to use our abstraction to implement efficient
graph analytics in a matter of hours.
We will be presenting new results for MPGraph v3. These results include significant speedups for problems with very large frontiers.