Skip to content

Building LDMS For Generic Linux Distributions

valleydlr edited this page Nov 22, 2016 · 19 revisions

Table of Contents

Modify your build environment to use the gnu compiler

  • Using the "module" command
    • module avail -- prints available modules
    • module list -- lists currently loaded modules
    • module unload <module name> -- unloads named module
    • module load <module name> -- loads named module
  • Examples (actual file names and responses will be system dependent):
 $ module list
 Currently Loaded Modulefiles:
   1) intel/vtune/2017.0.2
 $ module unload intel
 $ module list
 No Modulefiles Currently Loaded.
 $ module load gcc
 -bash-4.2$ module list
 Currently Loaded Modulefiles:
  1) binutils/2.26.0  2) gcc/6.2.0
  • If not using "modules" then set PATH and LD_LIBRARY_PATH variables appropriately

Building LDMS and support libraries and headers

  • Download ovis and gpcd from github.com/ovis-hpc
  • Download libevent-2.0.x-stable from libevent.org
  • In this example source files are assumed to be in ~/Source and builds in ~/Build

Building libevent-2.0

  • cp <path>/libevent-2.0.x-stable.tar.gz ~/Source
  • cd ~/Source
  • untar libevent-2.0.x-stable.tar.gz
  • cd libevent-2.0.x-stable
  • Run autogen.sh
 ./autogen.sh
  • Create config file with the following: -- in this example configure.sh
 ../configure --prefix=<absolute path>/Build/libevent-2.0_build
  • make configure.sh executable
 chmod +x configure.sh
  • Create a build directory
 mkdir build
  • cd to build directory and run configure.sh
 cd build
 ../configure.sh
  • Build and install libevent-2.0 libs and includes
 make && make install

Building LDMS

  • cp <path>/ovis-master.zip ~/Source
  • cd ~/Source
  • unzip ovis-master.zip
  • cd ovis-master
  • Run autogen.sh
 ./autogen.sh
  • Create config file with the following: -- in this example configure.sh
 #!/bin/bash
 #
 # SYNOPSIS: Remove existing build directories, do the automake routine, rebuild,
 #           and install everything.
 #
 # REMARK: This script doesn't do uninstall. If you wish to uninstall (e.g. make
 # uninstall), please go into each build directories ( */build-$HOSTNAME ) and
 # call make uninstall there, or just simply do the following
 #     for D in */build-$HOSTNAME; do pushd $D; make uninstall; popd; done;
 #
 #
 BUILD_PATH=<absolute path to builds>
 PREFIX=$BUILD_PATH/OVIS-3.3
 #
 # add --enable-FEATURE here
 ENABLE="--enable-ldms-python \
        --enable-tsampler"
 #
 # add --disable-FEATURE here
 DISABLE="--disable-rpath \
         --disable-readline \
         --disable-baler \
         --disable-sos \
         --disable-mmap "
 #
 # libevent2 prefix
 LIBEVENT_PREFIX=$BUILD_PATH/libevent-2.0_build
 #
 #
 WITH=
 #
 if [ -n "$LIBEVENT_PREFIX" ]; then
     WITH="$WITH --with-libevent=$LIBEVENT_PREFIX"
 fi
 #
 # 
 CFLAGS='-g -O0 -Wl,-z,defs'
 #
 # Exit immediately if a command failed
 set -e
 set -x
 #
 ../configure --prefix=$PREFIX $ENABLE $DISABLE $WITH CFLAGS="$CFLAGS" LDFLAGS=$LDFLAGS CPPFLAGS=$CPPFLAGS
  • make configure.sh executable
 chmod +x configure.sh
  • Create a build directory
 mkdir build
  • cd to build directory and run configure.sh
 cd build
 ../configure.sh
  • Build and install ldms libs, executables, and includes
 make && make install

Running LDMS

  • README files and sample scripts reside in the ovis-master/util/sample_init_scripts/XXX directory.
    • Note that the scripts must be modified, as described in the README file, to fit a particular deployment configuration.

Main

LDMSCON

Tutorials are available at the conference websites

D/SOS Documentation

LDMS v4 Documentation

Basic

Configurations

Features & Functionalities

Working Examples

Development

Reference Docs

Building

Cray Specific
RPMs
  • Coming soon!

Adding to the code base

Testing

Misc

Man Pages

  • Man pages currently not posted, but they are available in the source and build

LDMS Documentation (v3 branches)

V3 has been deprecated and will be removed soon

Basic

Reference Docs

Building

General
Cray Specific

Configuring

Running

  • Running

Tutorial

Clone this wiki locally