Skip to content

atlarge-research/graphalytics-platforms-powergraph

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Graphalytics PowerGraph platform driver

Build Status

Getting started

This is a Graphalytics benchmark driver for the PowerGraph. Please refer to the documentation of Graphalytics core for an introduction to using Graphalytics.

  • Make sure that you have installed Graphalytics.
  • Download the source code from this repository.
  • Execute mvn clean package in the root directory (See details in Software Build).
  • Extract the distribution from graphalytics-{graphalytics-version}-powergraph-{platform-version}.tar.gz.

The following dependencies are required for this platform extension:

Software Version (tested) Usage Description Provided
C Compiler gcc 5.2.1 Build Building PowerGraph code -
PowerGraph 2.2 Platform PowerGraph implementation -
CMake 3.2.2 Build Building PowerGraph code -
GNU Make 4.0 Build Building PowerGraph code -
OpenMPI or MPICH2 1.10.3 Deployment Job deployment -

Download PowerGraph, unpack into any directory, patch the missing CMakeLists.txt file using a diff from bin/utils/ and fully compile/build using the instructions given by the authors. Note that Graphalytics does not support HDFS as data source for PowerGraph, so it is recommended to compile with the --no_jvm flag.

Alternatively, one may use the build-distribution.sh script that performs the steps described above in an automated fashion.

Finally, refer to the documentation of the Graphalytics core on how to build and run this platform repository.

PowerGraph-implementation-specific configuration

Edit config/powergraph.properties to change the following settings:

  • platform.powergraph.home: Set to the root directory where PowerGraph has been installed.
  • platform.powergraph.num-threads: Set the number of threads PowerGraph should use.
  • platform.powergraph.nodes: Set the the names of computation nodes, with format e.g., 10.149.0.55\,10.149.0.56 (note: IP's separated between \, non-separated by spaces).

Known Issues

  • PowerGraph does not support machines with more than 64 threads. A workaround has been proposed in this issue.
  • The PowerGraph installation process is somewhat outdated, it has a few broken links to dependencies. Patching the CMakeLists.txt file with our diff fixes these broken URIs.

Running the benchmark

To execute a Graphalytics benchmark on PowerGraph (using this driver), follow the steps in the Graphalytics tutorial on Running Benchmark.