Skip to content
This repository has been archived by the owner on Dec 22, 2022. It is now read-only.

Essentials For Linux

Muhammad Osama edited this page Dec 24, 2021 · 6 revisions

This page covers the process of getting Essentials for Linux and how one may run the provided examples. We do not provide a compiled binary of Essentials/Gunrock for any environment.

Minimum Requirements

Optional Dependencies

  • GoogleTest (automatically downloaded when using cmake with flag -DESSENTIALS_BUILD_TESTS=ON)
  • NVBench (automatically downloaded when using cmake with flag -DESSENTIALS_BUILD_BENCHMARKS=ON)

Download

  • Clone using git
git clone https://github.com/gunrock/essentials.git
  • Download ZIP
wget --no-check-certificate https://github.com/gunrock/essentials/archive/refs/heads/master.zip
unzip master.zip

Building Essentials

  • Once you have the correct cmake version installed, which can be checked by cmake --version, follow the following steps:
cd essentials
mkdir build && cd build
cmake [{-D <var>=<value>}...] ..
  • [🌟] Using cmake with a variable/option:
cmake -DESSENTIALS_BUILD_TESTS=ON ..
  • You can now build all applications using:
make
  • [🌟] Or build a specific application by specifying its name after make:
make sssp
  • [🌟] All binaries are found in bin in your build directory, to run an application:
./bin/sssp ../datasets/chesapeake/chesapeake.mtx
  • [🌟] Sample output:
./bin/sssp ../datasets/chesapeake/chesapeake.mtx
Single Source = 0
GPU distances[:40] = 0 2 2 2 2 2 1 1 2 2 1 1 1 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 1 1 2 1 2 1
CPU Distances[:40] = 0 2 2 2 2 2 1 1 2 2 1 1 1 2 2 2 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 2 1 1 2 1 2 1
GPU Elapsed Time : 2.20403 (ms)
CPU Elapsed Time : 0.003 (ms)
Number of errors : 0

[🌟] Example command usage.

Getting Started

Experimentals

Developers

Debugging, Profiling and Testing

Tutorials

Design Choices

Utilities and Tools

Performance Optimizations

Random, weird or fun things

Continuous integration (CI)

Clone this wiki locally