Skip to content

Documentation: Software Build

AJ edited this page May 28, 2018 · 3 revisions

The Graphalytics benchmark suite consists of several git repositories:

  • The core repository (ldbc_graphalytics),
  • One additional repository per platform driver (graphalytics-platform-${name}).

The core repository

All platform drivers are dependent on the core repository (ldbc_graphalytics). In order to build the core repository yourself, follow these steps:

  1. Clone the core repository from the Graphalytics repository
  2. Run mvn clean install once in the core repository to install the Graphalytics core to a local Maven repository.

To make benchmark results more traceable, software artifacts are tagged by the git commit hash. Therefore if you have uncommitted local changes, the build process will fail. Run mvn clean install -Dmaven.buildNumber.skip to bypass this check.

The source code files are prepended with a standardized license header. The build process will fail if the license header is incorrect in any source code file. Run mvn clean install -Dlicense.skip to bypass this check.

Graphalytics uses plugins for extended features such as fine-grained performance analysis and bottleneck detection. To build Graphalytics plugins, e.g., Granula, run mvn clean install -Pgranula to activate the corresponding maven profiles.

The platform driver repositories

A platform driver contains the software artifacts which allows you to benchmark a corressponding graph processing platform. You can download the platform drivers or their source here, although it is recommended to build them yourself:

  • Clone the platform driver repository from its corresponding url.
  • Run mvn package in the platform repository to create a distributable archive ("Graphalytics distribution").

To make benchmark results more traceable, software artifacts are tagged by the git commit hash. Therefore if you have uncommitted local changes, the build process will fail. Run mvn clean package -Dmaven.buildNumber.skip to bypass this check.

The source code files are prepended with a standardized license header. The build process will fail if the license header is incorrect in any source code file. Run mvn clean package -Dlicense.skip to bypass this check.

After building the benchmark, the created archive graphalytics-{core-version}-giraph-{driver-version}-bin.tar.gz is available in the root of the platform repository. This archive should be extracted on the machine controlling the benchmark process. Configuring and executing the benchmark will be done in the extracted directory. Read the run the benchmark tutorial to conduct benchmarks.