Getting Started

This page provides information on how to quickly get up and running with umap.

Dependencies

At a minimum, cmake 3.5.1 or greater is required for building umap.

UMAP Build and Installation

The following lines should get you up and running:

$ git clone https://github.com/LLNL/umap.git
$ mkdir build && cd build
$ cmake -DCMAKE_INSTALL_PREFIX="<Place to install umap>" ../umap
$ make
$ make install

By default, umap will build a Release type build and will use the system defined directories for installation. To specify different build types or specify alternate installation paths, see the Advanced Configuration.

Umap install files to the lib, include and bin directories of the CMAKE_INSTALL_PREFIX.

Basic Usage

The interface to umap mirrors that of mmap(2) as shown:

    region = umap(start_addr, numbytes, prot, flags, fd, 0);

The following code is a simple example of how one may use umap:

#!/bin/bash

##################################################
# This test script does not require sudo privilege 
# The tests run BFS, UMapsort, and Churn tests
# with different parameters
##################################################

if [ -z "$UMAP_ROOT" ];
then
    echo "UMAP_ROOT is not set."
    exit
fi

if [ -z "$UMAP_INSTALL_PATH" ];
then
    echo "UMAP_INSTALL_PATH is not set. use $UMAP_ROOT/build. "
    UMAP_INSTALL_PATH=$UMAP_ROOT/build
fi

INPUT_GRAPH="./test_graph"

export LD_LIBRARY_PATH=$UMAP_INSTALL_PATH/lib:$LD_LIBRARY_PATH

echo "##############################################"
echo "# BFS "
echo "##############################################"

./rmat_graph_generator/ingest_edge_list -g $INPUT_GRAPH $UMAP_ROOT/examples/bfs/data/edge_list_rmat_s10_?_of_4
echo ""
echo ""

./bfs -n 1017 -m 32768 -g $INPUT_GRAPH -l $UMAP_ROOT/examples/bfs/data//bfs_level_reference
/bin/rm -f $INPUT_GRAPH
echo ""
echo "BFS finished"
exit