Open|SpeedShop

Build and Installation Guide

Version 2.1

July 23, 2014

 

 

  1. Introduction
    1. What is CBTF and how does it relate to Open|SpeedShop?
    2. Some Initial Notes
    3. Prerequisite Packages
      1. Ubuntu/Debian:
      2. RedHat/Fedora:
      3. SLES/SUSE:
    4. Building from the Release Tarballs (located on sourceforge)
      1. Installation Information
    5. Downloading the Open|SpeedShop Component Source Using CVS trees
    6.  
      1. Module Files, Dotkits, and softenv files
    7. Install tool example commands from various systems
      1. Generic Laptop or Desktop Platform Installation Examples
        1. Build only the krell-root
        2. Build cbtf components using the krell-root
        3. Build only OSS using the cbtf components and the krell-root
        4. Build everything: the krell-root, the cbtf components, and OSS using cbtf instrumentor
        5. Build OSS using offline instrumentor with and without krell-root
          1. With krell-root
          2. Without krell-root
      2. Cray Platform Install Examples
        1. Build krellroot used to build cbtf and oss/cbtf versions
        2. Build existing offline version using krellroot
        3. Build existing offline version without using krellroot
        4. Build cbtf only using krellroot components and cuda/cupti components
        5. Build Open|SpeedShop using cbtf instrumentation with krellroot components and cuda/cupti components
      3. Blue Gene Systems (only offline supported) Install Examples
        1. Compute node Ė Open|SpeedShop collectors and runtimes
          1. Build Open|SpeedShop collectors and runtimes without using krell root components
          2. Build krell root components for compute node
          3. Build Open|SpeedShop collectors and runtimes using krell root components
        2. Front end node Ė Open|SpeedShop viewer
          1. Build Open|SpeedShop Viewer not using krell root components
          2. Build krell root components
          3. Build Open|SpeedShop viewer using krell root components
    8. To Run Open|SpeedShop
      1. Environment Setup
        1. OPENSS_PLUGIN_PATH
        2. LD_LIBRARY_PATH
        3. DYNINSTAPI_RT_LIB
        4. OPENSS_MPI_IMPLEMENTATION
        5. PATH
        6. OPENSS_RAWDATA_DIR  (offline version only)
        7. OPENSS_DB_DIR
      2. Runtime Environment Examples
        1. Module File Example
          1. Offline version (no krell root usage)
          2. Offline version (with krell root usage)
          3. CBTF version
        2. Dotkit File Example
          1. Offline version (no krell root usage)
          2. Offline version (with krell root usage)
          3. CBTF version
        3. Softenv File Example
          1. Offline version (no krell root usage)
          2. Offline version (with krell root usage)
  2. Appendix:  Notes from Example and Real System Installs
      1. Offline
        1. offline without krellroot
        2. offline without krellroot
      2. cbtf
        1. cbtf version of OSS with CBTF and with krellroot builds
    1. yellowstone: (IBM x8664)
      1. Offline
        1. offline without krellroot
        2. offline without krellroot
      2. cbtf
        1. cbtf version of OSS with CBTF and with krellroot builds
    2. todi at CSCS: (Cray-XK)
      1.  
      2. Offline
        1. offline without krellroot
        2. offline with krellroot
      3. cbtf
        1. cbtf version of OSS with CBTF and with krellroot builds
    3. vulcan at LLNL: (BGQ)
      1.  vulcan compute node:
        1. Offline
          1. offline without krellroot
          2. offline with krellroot
        2. Offline
          1. offline without krellroot
          2. offline with krellroot
    4. rzuseq at LLNL: (BGQ)
      1. rzuseq compute node:
          1. offline without krellroot
          2. offline with krellroot
      2. rzuseq FE node:
        1. Offline
          1. offline without krellroot
          2. offline with krellroot
    5. intrepid at ANL: (BGP)
      1. intrepid compute node:
          1. offline without krellroot
          2. offline with krellroot
      2. intrepid FE node:
        1. Offline
          1. offline without krellroot
          2. offline with krellroot
    6. titan at ORNL: (Cray-XK)
        1. Offline
          1. offline without krellroot
          2. offline with krellroot
      1. cbtf
        1. cbtf version of OSS with CBTF and with krellroot builds
    7. mustang at LANL: (x8664)
      1. cbtf
        1. cbtf version of OSS with CBTF and with krellroot builds
    8.  moonlight at LANL: (x8664 with GPU)
      1. cbtf
        1. cbtf version of OSS with CBTF and with krellroot builds
    9. redsky at Sandia: (x8664)
      1. offline
        1. offline without krellroot
        2. offline with krellroot
    10. chama at Sandia: (x8664 with GPU)
      1. offline
        1. offline without krellroot
        2. offline with krellroot
      2. cbtf
        1. cbtf version of OSS with CBTF and with krellroot builds
    11. rzmerl at LLNL: (x8664)
    12. rzgpu at LLNL: (x8864 with GPU)
    13. cab at LLNL: (x8664)
    14. hopper at NERSC:  (Cray-XE)
      1. offline
        1. offline without krellroot
        2. offline with krellroot
      2. cbtf
        1. cbtf version of OSS with CBTF and with krellroot builds
    15. pfe at NASA: (SGI x86_64)
      1. offline
        1. offline without krellroot
        2. offline with krellroot
      2. cbtf
        1. cbtf version of openss, with krellroot
    16. mira at ANL: (BG/Q)
      1.  
      2. offline
        1. Compute node:
          1. offline without krellroot
          2. offline with krellroot
        2. Front-end node:
          1. offline without krellroot
          2. offline with krellroot

 


 

Introduction

 

This document supports the Open|SpeedShop 2.1 release.  The offline version of Open|SpeedShop is considered the primary release with the CBTF version of Open|SpeedShop designated as experimental as of this release.  The CBTF version is still under development.

 

Open|SpeedShop release 2.1 comes with an install script (install-tool) that will build all the supporting (also called krell root) components and Open|SpeedShop itself, in one step, or the builder can invoke the script multiple times to build each component separately.   The install script relies on arguments to the script instead of environment variables like the previous install script (install.sh).  With install-tool, the environment variables are set internally to the script so that the builder is not required to keep track of the numerous build environment variables that Open|SpeedShop uses.  In addition more build environment variables are set by default, requiring less builder-required action. 

 

The new install script also supports building the Component Based Tool Framework (CBTF) for the Open|SpeedShop CBTF instrumentor version that is described below.

 

What is CBTF and how does it relate to Open|SpeedShop?

 

CBTF stands for Component Based Tool Framework and is a key scalability feature for the new version of Open|SpeedShop that uses CBTF as its instrumentation methodology.  The Open|SpeedShop team is in the process of changing the mechanisms that gather the performance data and transfer the performance data from the application, where it was gathered, to the Open|SpeedShop client where it is stored into an SQLite database file.  In order to scale better Open|SpeedShop could not continue to write raw data files to disk and then read them up at the end of the application execution.  This is too time-consuming at high processor counts.  So, version of Open|SpeedShop using the CBTF gathering and transfer mechanisms will transmit the performance data to the client tool without writing files.   This will be significantly faster.  That is the simplified version of why we are using CBTF.   CBTF can also be used independently from Open|SpeedShop to rapidly prototype tools.    See the CBTF wiki at: https://sourceforge.net/p/cbtf/wiki/Home.

 

Some Initial Notes

 

Š      Caution: When installing a new version, please install into an empty directory, as we do not clean the install directories out.   You have end up with multiple copies of the same component, which can lead to execution issues.

Š      Offline is the default and official version of Open|SpeedShop, as of this release.   The CBTF version is experimental, but is usable on most platforms (not Blue Gene systems).

Š      You can install Open|SpeedShop in non-standard locations (root permission is not needed)

Š      Versions of Open|SpeedShop 2.1 and beyond install using the information in this document.

Š      Open|SpeedShop requires the GNU compilers to build.  It does not build with PGI, Intel, Cray, or other compilers.

Š      There are a number of development environment packages that are required if you are starting from a clean install on your desktop or laptop.   See the Prerequisite Packages section for the list of packages needed on non-development systems.  Laboratories normally have all the required packages installed, as most tools need these packages to build and execute successfully.

Š      There is now an option to build the krell root components that might be missing on the system or needed separately from Open|SpeedShop.  The builder can build the krell root then use that installation to build CBTF and/or Open|SpeedShop.   Or you can choose to build all components into the same install directory.

Š      The install-tool script supports building both Open|SpeedShop modes of execution:

o   offline Ė Write performance information to disk files as the information is collected from the application.  Then convert the raw data files to an Open|SpeedShop database file when the application completes execution.

o   cbtf Ė Performance information is transported from the application across a TCP/IP network as it is collected and stored in the Open|SpeedShop database on the fly.

 

We are in the process of transitioning into a daemon based tool that uses the Component Based Tool Framework (CBTF) gathering and transport mechanisms from the file based offline version of Open|SpeedShop. 

o   To build the existing offline version follow instructions for using the  “--build-offline” option.

o   To build the new CBTF version use the “-Ėbuild-all” option.  There are three build stages for the CBTF version.  These can be done individually, in the order listed.  The build-all option combines these three options:

§  “--build-krell-root”

§  “--build-cbtf”

§  “--build-onlyosscbtf”

Š      The examples below are for illustration and will need adjustment based on the software installations on your particular system.

Š      Multiple install-tool invocations are required for the BG/Q offline builds.  One for the front-end viewer tool build and one for the compute node runtimes and performance data collectors build.   Note: It appears that some BG/Q systems default to the compute node compilers.  Most of our instructions assume the default compilers are front-end compilers.  Putting “CXX=g++” and “CC=gcc” in front of the install-tool command when building the front-end version of Open|SpeedShop may get around this issue on platforms where the defaults are not what we expected (defaults to compute node compiler version).

 

Prerequisite Packages

 

There are some prerequisite packages that are necessary for building and running the Open|SpeedShop performance tool.   Most will be present on a system that is used for debugging and performance analysis.  This is true of most national laboratory clusters, Cray and Blue Gene platforms.   However, if you are installing on machines without the necessary tool supporting packages installed then this section might be helpful.

 

Ubuntu/Debian:

 

It is necessary to apply these packages to the base system installation, if they are not already installed, in order to successfully build Open|SpeedShop and the external tool specific packages required by Open|SpeedShop.  Example required packages based on Ubuntu 13.10 install.

 

Packages to aid in development:

Offline: sudo apt-get install cvs

CBTF:   sudo apt-get install git cmake cvs

Packages to aid in downloading and building:

sudo apt-get install flex bison rpm libxml2 libxml2-dev python-dev g++ make patch

Packages that install-tool will build if you don’t have the installed: (but makes build shorter if these are installed)

sudo apt-get install automake autoconf libtool m4 (--build-autotools)

sudo apt-get install binutils binutils-dev (--build-binutils)

sudo apt-get install libelf1 elfutils libelf-dev (--build-libelf)

If the package: qt3-apps-dev is available use it, if not, you may need these (libx11-dev libext-dev) instead.


 

RedHat/Fedora:

 

It is necessary to apply a list of supporting packages to the base system installation, if they are not already installed, in order to successfully build Open|SpeedShop and the external tool specific packages required by Open|SpeedShop.  This list is somewhat variable depending on what was installed during the initial installation and prior to attempting to install Open|SpeedShop.  Previous experiences have resulted in this list of candidate packages:

 

Offline and CBTF:

         yum install -y rpm-build \

               gcc gcc-c++ \

               openmpi \

               patch \

               autoconf automake \

               elfutils-libelf elfutils-libelf-devel \

               libxml2 libxml2-devel \

               binutils binutils-devel \

               python python-devel \

               flex bison bison-devel bison-runtime \

               libtool libtool-ltdl libtool-ltdl-devel cmake

CBTF:

         yum install -y cmake git

 

 

SLES/SUSE:

 

It is necessary to apply these packages to the base system installation, if they are not already installed, in order to successfully build Open|SpeedShop and the external tool specific packages required by Open|SpeedShop.

 

Packages to aid in development:

CBTF: Modules git

Packages to aid in downloading and building:

Offline and CBTF: flex bison rpm libxml2 libxml2-dev python-dev g++ make patch cmake

CBTF: cmake

 

Packages that install-tool will build if you don’t have the installed: (but makes the build shorter if these are installed)

qt3 qt3-devel

 

 

If your system was installed with any development package group , then the need for extra package installs may be reduced significantly.

 

Using the install-tool that comes with the Open|SpeedShop release will install many of the key open source tool related components, but the above mentioned system components are required to be installed by the system administrator.

 


Building from the Release Tarballs (located on sourceforge)

 

The release top-level directory contains the install script (install-tool)

that is intended to make the build and installation of the external tool support components that are needed to support Open|SpeedShop and Open|SpeedShop itself easier.

 

Because Open|SpeedShop depends on components that are highly dependent on operating system interfaces and libraries, it is difficult to produce executable rpms for every installation platform.  This is why we offer the source build installation instead of rpms.

 

 

Installation Information

 

Please gunzip and untar the openspeedshop-release-2.1.tar.gz file and change directory into the openspeedshop-release-2.1 directory. 

 

For example:

tar -xzvf openspeedshop-release-2.1.tar.gz

cd openspeedshop-release-2.1

 

Inside the top-level release directory is the key script, install-tool that can be used in building the Open|SpeedShop performance tool.

 

The script, install-tool has a help option:

“install-tool Ė-help“

That can provide information about the possible options a builder of Open|SpeedShop could use.

 

The typical build for the offline version of Open|SpeedShop is done with an install line something like this:

 

./install-tool   --build-offline

--openss-prefix /opt/ossoffline_v2.1

--with-openmpi /opt/openmpi-1.6.5

 

The above install line builds all the external/root packages that Open|SpeedShop needs and installs them in /opt/ossoffline_v2.1 along with Open|SpeedShop.  It uses the openmpi MPI implementation to build the Open|SpeedShop MPI experiment collectors.

 

Hint:

To get the paths for the "--with-mpt" or other mpi or other “--with” option clauses is to:

  1) module load mpt/2.08

  2) echo $LD_LIBRARY_PATH

  3) Look for the MPT path (up to the "/lib" and use that in the "--with-mpt" clause in the install-tool command.

 

Example:  echo $LD_LIBRARY_PATH

/nasa/sgi/mpt/2.08r7/lib:/home4/jgalarow/python_root/lib

 

Use this --with-mpt clause:   “--with-mpt /nasa/sgi/mpt/2.08r7”

 

However, on some platforms the typical build install line is not adequate.  Platforms like the Cray and Blue Gene requires more options to the install-tool script.   If you are familiar with the previous install.sh script method of building Open|SpeedShop, in that build scenario extra environment variables were needed to be set.  With install-tool, we need additional arguments to the script to specify things like the target platform, so there is a --target-arch <target> option available in the install-tool script.   For example, to build on a Cray system, this is an example build line:

 

./install-tool   --build-offline Ėtarget-arch cray-xk

--openss-prefix /tmp/work/<userid>/ossoffline_v2.1

--with-boost <boost install directory>

--with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47

 

One can specify their own versions of the components needed by Open|SpeedShop to build properly or you can rely on the defaults that are installed on the system and used automatically by the build script.   If the default system installed component is determined to be not adequate for the Open|SpeedShop build (missing development headers) then the install script will build a version of that component into the externals/root directory.   If the builder has a specific version of a component, such as, PAPI, they may use the “--with-papi” option to specify the path to that installation and Open|SpeedShop will be built using that installation of PAPI.

 

One can also build individual components and specify the location to place the component.   Here is the “install-tool --help” output:

 

$ ./install-tool --help

usage: ./install-tool [option]

 

--help, -h

 This help text is printed.

 

--cbtf-prefix <directory>

 Where <directory> is the location to install CBTF

 and it's supporting tools and libraries. The default

 is /opt/CBTF. It is not recommended to use /usr.

 NOTE: This option will override any setting for

 the environment variable: CBTF_PREFIX.

 

--krell-root-prefix <directory>

 Where <directory> is the location to install the components

 needed for building CBTF and Open|SpeedShop

 and it's supporting tools and libraries. The default

 is /opt/KRELLROOT. It is not recommended to use /usr.

 NOTE: This option will override any setting for

 the environment variable: KRELL_ROOT_PREFIX.

 

--openss-prefix <directory>

 Where <directory> is the location to install Open|SpeedShop

 and it's supporting tools and libraries. The default

 is /opt/OSS. It is not recommended to use /usr.

 NOTE: This option will override any setting for

 the environment variable: OPENSS_PREFIX.

 

--build-all

 Build the krell-root, cbtf components, and openspeedshop

 The cbtf-prefix, krell-root-prefix, and the openss-prefix argument option must be specified

 

--build-osscbtf

 Build the krell-root, cbtf components, and openspeedshop

 The cbtf-prefix, krell-root-prefix, and the openss-prefix argument option must be specified

 

--build-cbtf

 Build only the cbtf components using the existing krell-root

 The krell-root-prefix and cbtf-install-prefix argument option must be specified

 

--build-krell-root

 Build only the krell-root. The krell-root-prefix argument option must be specified

 

--build-onlyosscbtf )

 Build only the Open|SpeedShop component for the cbtf instrumentor

 using the cbtf and krell-root components.

 

--build-onlyossoffline)

 Build only the Open|SpeedShop component for the offline instrumentor

 using the openss-prefix root component or the krell-root components (if krell-root-prefix specified.)

 

 Specify target architecture

--target-arch <target>

 Where acceptable target values are: cray-xk, cray-xe, bgp, and bgq

 

Use these MPI installations when building

--with-mpich <directory>

--with-mpich2  <directory>

--with-mpich2-driver  <driver name>

--with-mvapich  <directory>

--with-mvapich2  <directory>

--with-mvapich2-driver  <driver name>

--with-openmpi  <directory>

--with-mpt  <directory>

 Where <directory> is the installed path to the mpi implementation to use for MPI support.

 

 Build only the component specified by the build clause.

 The krell-root-prefix argument option must be specified and components will

 be installed into that krell-root-prefix specified directory path.

--build-autotools

--build-boost

--build-xercesc

--build-binutils

--build-dyninst

--build-libelf

--build-libdwarf

--build-libmonitor

--build-libunwind

--build-mrnet

--build-papi

--build-symtabapi

--build-cmake

 

 Force these components to be built and installed into the krellroot

 or OSS offline/online install directories.

--force-binutils-build

--force-boost-build

--force-libelf-build

--force-libdwarf-build

--force-papi-build

--force-qt-build

--force-sqlite-build

 

--skip-binutils-build

--skip-boost-build

--skip-dyninst-build

--skip-libdwarf-build

--skip-libelf-build

--skip-libunwind-build

--skip-mrnet-build

--skip-papi-build

--skip-symtabapi-build

--skip-vampirtrace-build

 

 

 Use these non-root or alternative components when building

--with-binutils <directory>

--with-boost <directory>

--with-dyninst <directory>

--with-libelf <directory>

--with-libdwarf <directory>

--with-libmonitor <directory>

--with-libunwind <directory>

--with-mrnet <directory>

--with-papi <directory>

--with-python <directory>

--with-symtabapi <directory>

--with-xercesc <directory>

 Where <directory> is the installed path to the alternative component.

 

 

Additional, optional, install-tool arguments are needed for configuring Open|SpeedShop for MPI experiments.   If the installation of Open|SpeedShop is intended to support running MPI experiments then one or more MPI implementation arguments must be specified.   Also, a MPI argument is necessary if the Open|SpeedShop build is intended to support running VampirTrace using the mpiotf experiment. As VampirTrace needs a MPI implementation specified in order to be built.   Allow Open|SpeedShop to build MPI experiment collectors for these MPI implementations by specifying one or more of these arguments:

 

For openMPI:

 --with-openmpi  <openmpi install path>

For mpich:

--with-mpich  <mpich install path>

For mpich2:

--with-mpich2  <mpich2 install path>

For SGI mpt[1]:

--with-mpt  <mpt install path>

For mvapich

--with-mvapich  <mvapich install path>

For mvapich2:

--with-mvapich2  <mvapich2 install path>

 

 

If none of the above arguments are not specified, most Open|SpeedShop experiments will be built and execute properly, but the mpi, mpit, mpiotf experiments will not be built.  The MPI implementation arguments are not necessary to run pcsamp, usertime, hwc, io, or fpe and variants of those experiments, even on MPI applications.   They are only needed for mpi, mpit, and mpiotf experiment creation because the tool needs to know the MPI data structure definitions to process MPI performance data.

 

The install script and the Open|SpeedShop configuration code will operate on those MPI arguments and will configure Open|SpeedShop to recognize these MPI implementations.  That will allow users the ability to create MPI experiments (mpi, mpit, mpiotf) and gather  performance data for MPI applications built with the specific MPI implementation

 

 

Downloading the Open|SpeedShop Component Source Using CVS trees

 

If you want to build from the latest Open|SpeedShop sources (Open|SpeedShop development tree) then this section provides information about how to download the OpenSpeedShop and OpenSpeedShop_ROOT source repositories from the sourceforge website.    The OpenSpeedShop cvs tree contains the source and documentation for the Open|SpeedShop performance tool itself.  The OpenSpeedShop_ROOT cvs tree contains the source for the supporting components required by Open|SpeedShop in order for Open|SpeedShop to build and function correctly.  

 

If not familiar with cvs, see CVS information on sourceforge

file://localhost/<http/::sourceforge.net:cvs:%3Fgroup_id=176777>.    It contains links to general CVS documentation.

 

Set the CVSROOT environment variable.

 

$ export CVSROOT=':pserver:anonymous@openss.cvs.sourceforge.net:/cvsroot/openss'

/(for sh, bash, ksh, or similar shells)/

$ setenv CVSROOT

:pserver:anonymous@openss.cvs.sourceforge.net:/cvsroot/openss

/(for csh or tcsh shells)/

 

 

Login to the CVS server (this only needs to be done ONCE, not every time

you access CVS).

 

$ cvs login

/(there is no password:"/just hit enter/")/

 

Now grab the OpenSpeedShop and OpenSpeedShop_ROOT source trees:

 

$ cvs checkout OpenSpeedShop

$ cvs checkout OpenSpeedShop_ROOT

 

Subsequently, you can checkout new code using:

 

$ cvs update -d

 

We recommend using these cvs options. You may place them in a .cvsrc

file in your home directory:

cvs -z5 -r -q

checkout -P

diff -N -u

update -d -P

 

The above options remove old directories and files that are no longer used and have been deleted from the cvs repository but show up if these options are not used.

 

Once the source has been downloaded from sourceforge, it must be prepared for configuration by running the “./bootstrap” script.  This runs autotools commands to prepare the directory for autoconf configure command.

 

After the “./bootstrap” command completes, then follow the instructions below using OpenSpeedShop_ROOT as the top-level installation directory.    To use the existing install-tool installation script, OpenSpeedShop must be moved to the openspeedshop-2.1 directory name, tarred into openspeedshop-2.1.tar, gzipped into openspeedshop-2.1.tar.gz, and moved into OpenSpeedShop_ROOT/SOURCES/openspeedshop-2.1.tar.gz.   This is also what is done when an Open|SpeedShop (openspeedshop-release-2.1) release tarball is prepared.

 


 

Module Files, Dotkits, and softenv files

 

On most systems, either a module file, dotkit file, or softenv file is created after Open|SpeedShop is built and that file is then activated/loaded prior to running Open|SpeedShop.   There are examples of each in the Runtime Environment Examples section below.

 

Install tool example commands from various systems

 

These example show optional ways of building the existing offline version of Open|SpeedShop.  For this you can build the supporting components (krell root) and Open|SpeedShop tool separately.  Or you can build the offline version of Open|SpeedShop into the same install directory by not building the krell root separately.   Using the option “--build-offline” without the “--krell-root-prefix” option will build the offline version of Open|SpeedShop and the root components into the same directory specified by --openss-prefix”

 

Building the new CBTF based Open|SpeedShop version can be not be done in a similar fashion, because the krell root components, the cbtf components, and the Open|SpeedShop client components are installed into separate install directories by design.  However, using the “óbuild-all” option allows all the pieces to be built with one command where all the install locations are specified.  The “--krell-root-prefix”, “--cbtf-prefix”, and “--openss-prefix” options must be specified, so that the build script knows where to install the separate components.

 

Generic Laptop or Desktop Platform Installation Examples

 

Build only the krell-root

 

./install-tool --build-krell-root

--krell-root-prefix /opt/krellroot_v2.1

--with-openmpi /opt/openmpi-1.5.5

Build cbtf components using the krell-root

 

./install-tool --build-cbtf

--cbtf-prefix /opt/cbtf_only_v1.1

--krell-root-prefix /opt/krellroot_v2.1

--with-openmpi /opt/openmpi-1.5.5

--with-cupti /usr/local/cuda-5.0/extras/CUPTI

--with-cuda /usr/local/cuda-5.0

 

Build only OSS using the cbtf components and the krell-root

 

./install-tool --build-onlyosscbtf

--cbtf-prefix /opt/cbtf_only_v1.1

--krell-root-prefix /opt/krellroot_v2.1

--openss-prefix /opt/osscbtf_v2.1

--with-openmpi /opt/openmpi-1.5.5

--with-cupti /usr/local/cuda-5.0/extras/CUPTI

--with-cuda /usr/local/cuda-5.0

 

Build everything: the krell-root, the cbtf components, and OSS using cbtf instrumentor

 

./install-tool --build-all

--cbtf-prefix /opt/cbtf_only_v1.1

--krell-root-prefix /opt/krellroot_v2.1

--openss-prefix /opt/osscbtf_v2.1

--with-openmpi /opt/openmpi-1.5.5

Build OSS using offline instrumentor with and without krell-root

With krell-root

./install-tool --build-offline

--krell-root-prefix /opt/krellroot_v2.1

--openss-prefix /opt/ossoffline_v2.1

--with-openmpi /opt/openmpi-1.5.5

 

Without krell-root

./install-tool --build-offline

--openss-prefix /opt/ossoffline_v2.1

--with-openmpi /opt/openmpi-1.5.5

 


 

Cray Platform Install Examples

 

Depending on what the default programming environment setting is, you must swap the PrgEnv-cray or PrgEnv-pgi environment module to PrgEnv-gnu.  If you are building for CUDA, then you will have to load the cudatool.   The cmake tool is also required by the cbtf build and is not loaded by default on many Cray systems.  A possible module load/swap scenario prior to invoking the install-tool scripts is as follows:

module swap PrgEnv-pgi PrgEnv-gnu

module load cudatoolkit

module load cmake

Build krellroot used to build cbtf and oss/cbtf versions

 

This command builds the krell root externals packages that can be used to build either the offline or cbtf versions of Open|SpeedShop.  The arguments are for illustration and will need to be changed for your particular system.

 

./install-tool --build-krell-root

--target-shared --target-arch cray-xk

--krell-root-prefix /tmp/work/jgalaro/krellroot_v2.1

--with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2

--with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47

 

Build existing offline version using krellroot

 

This command uses the krell root externals packages to build either the offline version of Open|SpeedShop.  The arguments are for illustration and will need to be changed for your particular system.

 

./install-tool --build-offline

--target-shared --target-arch cray-xk

--openss-prefix /tmp/work/jgalaro/oss_offline_v2.1

--krell-root-prefix /tmp/work/jgalaro/krellroot_v2.1

--with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2

--with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47

Build existing offline version without using krellroot

 

This command builds the offline version of Open|SpeedShop including all the krell external packages into one installation directory.  Note there is no Ėkrell-root-prefix argument specified, so all the external packages are rebuilt.  The arguments are for illustration and will need to be changed for your particular system.

 

./install-tool --build-offline

--target-arch cray-xk

--openss-prefix /tmp/work/jgalaro/oss_offline_v2.1

--with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2

--with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47

 

Build cbtf only using krellroot components and cuda/cupti components

 

This command uses the krell root externals and cuda/cupti packages to build the cbtf base components and the cbtf contributor components.  The arguments are for illustration and will need to be changed for your particular system.

 

./install-tool --build-cbtf

--target-shared --target-arch cray-xk

--krell-root-prefix /tmp/work/jgalaro/krellroot_v2.1

--cbtf-install-prefix /tmp/work/jgalaro/cbtf_only_v1.1

--with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2

--with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47

--with-cuda /opt/nvidia/cudatoolkit/5.0.35.102

--with-cupti /opt/nvidia/cudatoolkit/5.0.35.102/extras/CUPTI

 

Build Open|SpeedShop using cbtf instrumentation with krellroot components and cuda/cupti components

 

This command uses the krell root externals, cuda/cupti, and cbtf packages to build the cbtf version of Open|SpeedShop.  The arguments are for illustration and will need to be changed for your particular system.

 

 

./install-tool --build-onlyosscbtf

--target-arch cray-xk

--krell-root-prefix /tmp/work/jgalaro/krellroot_v2.1 

--cbtf-prefix /tmp/work/jgalaro/cbtf_only_v1.1

--openss-prefix /tmp/work/jgalaro/osscbtf_v2.1

--with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2

--with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47

--with-cuda /opt/nvidia/cudatoolkit/5.0.35.102

--with-cupti /opt/nvidia/cudatoolkit/5.0.35.102/extras/CUPTI


 

Blue Gene Systems (only offline supported) Install Examples

 

For the Blue Gene systems it is still a two-step process to build the offline version of Open|SpeedShop. First build the compute node collectors and runtimes that run on the compute nodes.  Note that the compute note installation paths have a “bgq” sub-directory appended to the viewer installation path by convention, not necessity.  The location must be different than that of the viewer installation as not to clobber the viewer installation.  The builder is responsible for keeping the two installations separate.   Next build the Open|SpeedShop viewer that runs on the front-end node, giving this build the Ėwith-runtime-dir that points to the Open|SpeedShop compute node install directory.  That way the front-end knows where the compute node collectors and runtime libraries are located.

 

For the Blue Gene builds, you must build offline for the compute node first and then build offline for the front-end node.   You may build offline using the krellroot concept or not.   Using krellroot allows you to just build the new openspeedshop-2.1 updates when they arrive without building all the krellroot components over again.

Compute node Ė Open|SpeedShop collectors and runtimes

Build Open|SpeedShop collectors and runtimes without using krell root components

 

./install-tool --build-offline

--runtime-only --target-shared --target-arch bgq

--openss-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1/bgq

--with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

Build krell root components for compute node

./install-tool Ė-runtime-only Ė-target-shared --target-arch bgq --build-krell-root

--krell-root-prefix /usr/global/tools/openspeedshop/ossdev/bgq/krellroot_v2.1/bgq

--with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc --force-binutils-build

Build Open|SpeedShop collectors and runtimes using krell root components

 

./install-tool --build-offline

--runtime-only --target-shared --target-arch bgq

--openss-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1/bgq

--krell-root-prefix /usr/global/tools/openspeedshop/ossdev/bgq/krellroot_v2.1/bgq --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

Front end node Ė Open|SpeedShop viewer

Build Open|SpeedShop Viewer not using krell root components

./install-tool --build-offline

--openss-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1

--with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc  --with-runtime-dir /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1/bgq

Build krell root components

./install-tool --build-krell-root

--krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/krellroot_v2.1

--with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

Build Open|SpeedShop viewer using krell root components

./install-tool --build-offline

--openss-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1

--krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/krellroot_v2.1

--with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc Ė-with-runtime-dir /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1/bgq

 

 


 

To Run Open|SpeedShop

 

Please refer to the Quick Start Guide from the Open|SpeedShop documentation web-site page:

http://www.openspeedshop.org/wp/documentation/

for a short introduction to how to use Open|SpeedShop.

 

Or access the Users Guide from the Open|SpeedShop documentation web-site page:

 

http://www.openspeedshop.org/wp/documentation/

 

These are the best sources for information on how to run Open|SpeedShop.

 

Environment Setup

 

OPENSS_PLUGIN_PATH

 

This environment variable specifies where the *Open|SpeedShop* main program will look for experiment plugins.  This is in addition to the normal search path, which is "<installdir>/lib{64}/openspeedshop"  Prior to Open|SpeedShop initialization set this variable to the path to your non-default plugins,  (e.g. "setenv OPENSS_PLUGIN_PATH /g2/install/lib/openspeedshop)

 

LD_LIBRARY_PATH

 

This environment variable points to the directories where Open|SpeedShop component libraries and Open|SpeedShop libraries are installed. 

Set this environment variable to <installdir>/lib{64} (e.g. "setenv LD_LIBRARY_PATH <installdir>/lib{64}:$LD_LIBRARY_PATH)

DYNINSTAPI_RT_LIB

 

This environment variable points to the directory where the Dyninst (dynamic runtime library) component runtime library is installed.  This library is used in Open|SpeedShop to detect loops and create per-loop statistic performance information available in the OpenSpeedShop views.

Set this environment variable to

                          <installdir for dyninst>/lib{64}/libdyninstAPI_RT.so

For example:

     setenv DYNINSTAPI_RT_LIB <installdir for dyninst>/lib{64/libdyninstAPI_RT.so

OPENSS_MPI_IMPLEMENTATION

 

This environment variable specifies the MPI implementation being used by the MPI application whose performance is being analyzed.  Should be set to one of the currently supported MPI implementations:

 

Š      mpich

Š      mpich2

Š      mpt

Š      mvapich

Š      mvapich2

Š      openmpi

 

 

Open|SpeedShop can auto-detect most of the MPI implementations that an

MPI application is using.  So, this variable will only be used to override the auto-detection code, if need be.

 

PATH

 

This environment variable specifies the path to the Open|SpeedShop component executables and to the Open|SpeedShop executables.  Set this to:  <installdir>/bin (e.g. setenv PATH <installdir>/bin:$PATH).

 

OPENSS_RAWDATA_DIR  (offline version only)

 

This environment variable specifies the path to where the offline version of openss will store the rawdata files representing the performance data that was gathered from the user application.   This is needed on clusters where the default rawdata file directory, /tmp, is not shared across the nodes.   If this is the case on the cluster you are running "openss -offline" or using the GUI or CLI to run offline experiment, then OPENSS_RAWDATA_DIR must be set to a shared file system directory.  Otherwise, /tmp is used.    Set this to: 

      OPENSS_RAWDATA_DIR <path_to_subdir_for_rawdata_file_writing> 

(e.g. setenv OPENSS_RAWDATA_DIR /p/lscratchc/jeg).

 

OPENSS_DB_DIR

 

This environment variable specifies the path to where the offline version of openss will build the Open|SpeedShop database file. If you are on a file system that does not have file locking turned on, the sqlite component will not be able to create the database file.  You can use this environment variable to specify a path to a file system that does have locking turned to be used for the database file creation.

 

 

Runtime Environment Examples

 

The following runtime environment examples can be used as examples for creating module, dotkit, or softenv files depending on your systems execution environment.

Module File Example

 

If your system supports the environment module file runtime environment setup, then these examples will provide some guidance for your Open|SpeedShop runtime environment file creation.

Offline version (no krell root usage)

 

This is an example of a module file used for a cluster installation.  Use module load <filename of module file> to activate the Open|SpeedShop runtime environment.

 

#%Module1.0#####################################################################

## openss modulefile

##

proc ModulesHelp { } {

        global version openss

        puts stderr "\topenss - loads the OpenSpeedShop software & application environment"

        puts stderr "\n\tThis adds $oss/* to several of the"

        puts stderr "\tenvironment variables."

        puts stderr "\n\tVersion $version\n"

}

module-whatis   "loads the OpenSpeedShop runtime environment"

# for Tcl script use only

set     version         2.1

set     oss        /opt/OSS2.1

 

setenv          OPENSS_DOC_DIR                          $oss/share/doc/packages/OpenSpeedShop

prepend-path    PATH                                           $oss/bin

prepend-path    MANPATH                                 $oss/share/man

 

set unameexe  "/bin/uname"

if { [file exists $unameexe] } {

    set machinetype [ exec /bin/uname -m ]

    if { $machinetype == "x86" ||

         $machinetype == "i386" ||

         $machinetype == "i486" ||

         $machinetype == "i586" ||

         $machinetype == "i686" } {

        setenv  OPENSS_PLUGIN_PATH   $oss/lib/openspeedshop

        setenv DYNINSTAPI_RT_LIB $oss/lib/libdyninstAPI_RT.so

        prepend-path LD_LIBRARY_PATH $oss/lib

    }

    if { $machinetype == "x86_64" } {

        setenv  OPENSS_PLUGIN_PATH   $oss/lib64/openspeedshop

        setenv DYNINSTAPI_RT_LIB $oss/lib64/libdyninstAPI_RT.so

        prepend-path LD_LIBRARY_PATH $oss/lib64

    }

    if { $machinetype == "ia64" } {

        setenv  OPENSS_PLUGIN_PATH   $oss/lib/openspeedshop

        setenv DYNINSTAPI_RT_LIB $oss/lib/libdyninstAPI_RT.so

        prepend-path LD_LIBRARY_PATH $oss/lib

    }

}

 

Offline version (with krell root usage)

 

#%Module1.0#####################################################################

## openss modulefile

##

proc ModulesHelp { } {

        global version openss

        puts stderr "\topenss - loads the OpenSpeedShop software & application environment"

        puts stderr "\n\tThis adds $oss/* to several of the"

        puts stderr "\tenvironment variables."

        puts stderr "\n\tVersion $version\n"

}

module-whatis   "loads the OpenSpeedShop runtime environment"

# for Tcl script use only

set     version         2.1

set     oss        /opt/OSS2.1

set     kroot        /opt/krellroot

 

setenv          OPENSS_DOC_DIR                          $oss/share/doc/packages/OpenSpeedShop

prepend-path    PATH                                           $kroot/bin

prepend-path    PATH                                           $oss/bin

prepend-path    MANPATH                                 $oss/share/man

 

set unameexe  "/bin/uname"

if { [file exists $unameexe] } {

    set machinetype [ exec /bin/uname -m ]

    if { $machinetype == "x86" ||

         $machinetype == "i386" ||

         $machinetype == "i486" ||

         $machinetype == "i586" ||

         $machinetype == "i686" } {

        setenv  OPENSS_PLUGIN_PATH   $oss/lib/openspeedshop

        setenv  DYNINSTAPI_RT_LIB        $kroot/lib/libdyninstAPI_RT.so

 

        prepend-path LD_LIBRARY_PATH $kroot/lib

        prepend-path LD_LIBRARY_PATH $oss/lib

 

    }

    if { $machinetype == "x86_64" } {

        setenv  OPENSS_PLUGIN_PATH   $oss/lib64/openspeedshop

        setenv  DYNINSTAPI_RT_LIB        $kroot/lib64/libdyninstAPI_RT.so

        prepend-path LD_LIBRARY_PATH $kroot/lib64

        prepend-path LD_LIBRARY_PATH $oss/lib64

    }

    if { $machinetype == "ia64" } {

        setenv  OPENSS_PLUGIN_PATH   $oss/lib/openspeedshop

        setenv  DYNINSTAPI_RT_LIB        $kroot/lib/libdyninstAPI_RT.so

        prepend-path LD_LIBRARY_PATH $kroot/lib

        prepend-path LD_LIBRARY_PATH $oss/lib

    }

}

CBTF version

 

#%Module1.0#####################################################################

## openss modulefile

##

proc ModulesHelp { } {

        global version openss

        puts stderr "\topenss - loads the OpenSpeedShop software & application environment"

        puts stderr "\n\tThis adds $oss/* to several of the"

        puts stderr "\tenvironment variables."

        puts stderr "\n\tVersion $version\n"

}

module-whatis   "loads the OpenSpeedShop runtime environment"

# for Tcl script use only

set     version         2.1

set     oss        /opt/OSS-2.1

set     kroot        /opt/krellroot

set     cbtf        /opt/cbtf_only-1.1

 

setenv          OPENSS_DOC_DIR                          $oss/share/doc/packages/OpenSpeedShop

prepend-path    PATH                                           $kroot/bin

prepend-path    PATH                                           $cbtf/bin

prepend-path    PATH                                           $cbtf/sbin

prepend-path    PATH                                           $oss/bin

prepend-path    MANPATH                                 $oss/share/man

 

set unameexe  "/bin/uname"

if { [file exists $unameexe] } {

    set machinetype [ exec /bin/uname -m ]

    if { $machinetype == "x86" ||

         $machinetype == "i386" ||

         $machinetype == "i486" ||

         $machinetype == "i586" ||

         $machinetype == "i686" } {

        setenv  OPENSS_PLUGIN_PATH   $oss/lib/openspeedshop

        setenv  DYNINSTAPI_RT_LIB        $kroot/lib/libdyninstAPI_RT.so

        prepend-path LD_LIBRARY_PATH $kroot/lib

        prepend-path LD_LIBRARY_PATH $cbtf/lib

        prepend-path LD_LIBRARY_PATH $oss/lib

 

    }

    if { $machinetype == "x86_64" } {

        setenv  OPENSS_PLUGIN_PATH   $oss/lib64/openspeedshop

        setenv  DYNINSTAPI_RT_LIB        $kroot/lib64/libdyninstAPI_RT.so

        prepend-path LD_LIBRARY_PATH $kroot/lib64

        prepend-path LD_LIBRARY_PATH $cbtf/lib64

        prepend-path LD_LIBRARY_PATH $oss/lib64

    }

    if { $machinetype == "ia64" } {

        setenv  OPENSS_PLUGIN_PATH   $oss/lib/openspeedshop

        setenv  DYNINSTAPI_RT_LIB        $kroot/lib/libdyninstAPI_RT.so

        prepend-path LD_LIBRARY_PATH $kroot/lib

        prepend-path LD_LIBRARY_PATH $cbtf/lib

        prepend-path LD_LIBRARY_PATH $oss/lib

    }

}

 

Dotkit File Example

Offline version (no krell root usage)

 

This is an example of a dotkit file used for a 64-bit cluster platform installation and is not generalized to support different platforms other than the 64-bit cluster it was written for.  Use the “use <filename of dotkit file>” command to activate the Open|SpeedShop runtime environment.   Note: do not include the “.dk” portion of the filename when using the “use” command.

 

#c performance/profile

#d Open|Speedshop (Version 2.1)

dk_setenv OPENSS_PREFIX /usr/global/tools/openspeedshop/oss-dev/OSS202

dk_setenv OPENSS_PLUGIN_PATH $OPENSS_PREFIX/lib64/openspeedshop

 

# Find Dyninst for generation of per-loop statistics

dk_setenv  DYNINSTAPI_RT_LIB        $OPENSS_PREFIX/lib64/libdyninstAPI_RT.so

 

dk_setenv OPENSS_DOC $OPENSS_PREFIX/share/doc/packages/OpenSpeedShop/

dk_alter PATH            $OPENSS_PREFIX/bin

dk_alter LD_LIBRARY_PATH $OPENSS_PREFIX/lib64

 

dk_setenv OPENSS_MPI_IMPLEMENTATION mvapich

dk_test `dk_cev OPENSS_RAWDATA_DIR` -eq 0 && dk_setenv OPENSS_RAWDATA_DIR /p/lscratchb/${USER}

Offline version (with krell root usage)

 

#c performance/profile

#d Open|Speedshop (Version 2.1)

dk_setenv OPENSS_PREFIX /usr/global/tools/openspeedshop/oss-dev/OSS-2.1

dk_setenv KROOT /usr/global/tools/openspeedshop/oss-dev/krellroot

 

dk_setenv OPENSS_PLUGIN_PATH $OPENSS_PREFIX/lib64/openspeedshop

dk_setenv OPENSS_DOC $OPENSS_PREFIX/share/doc/packages/OpenSpeedShop/

dk_setenv  DYNINSTAPI_RT_LIB        $KROOT/lib64/libdyninstAPI_RT.so

 

dk_alter PATH            $KROOT/bin

dk_alter LD_LIBRARY_PATH $KROOT/lib64

dk_alter PATH            $OPENSS_PREFIX/bin

dk_alter LD_LIBRARY_PATH $OPENSS_PREFIX/lib64

 

dk_setenv OPENSS_MPI_IMPLEMENTATION mvapich

dk_test `dk_cev OPENSS_RAWDATA_DIR` -eq 0 && dk_setenv OPENSS_RAWDATA_DIR /p/lscratchb/${USER}

CBTF version

 

#c performance/profile

#d Open|Speedshop (Version 2.1)

dk_setenv OPENSS_PREFIX /usr/global/tools/openspeedshop/oss-dev/OSS-2.1

dk_setenv KROOT /usr/global/tools/openspeedshop/oss-dev/krellroot

dk_setenv CBTF /usr/global/tools/openspeedshop/oss-dev/cbtf_only-1.1

 

dk_setenv OPENSS_PLUGIN_PATH $OPENSS_PREFIX/lib64/openspeedshop

dk_setenv OPENSS_DOC $OPENSS_PREFIX/share/doc/packages/OpenSpeedShop/

 

# Find Dyninst for generation of per-loop statistics

dk_setenv  DYNINSTAPI_RT_LIB        $KROOT/lib64/libdyninstAPI_RT.so

 

dk_alter PATH            $KROOT/bin

dk_alter LD_LIBRARY_PATH $KROOT/lib64

 

dk_alter PATH            $CBTF/bin

dk_alter PATH            $CBTF/sbin

dk_alter LD_LIBRARY_PATH $CBTF/lib64

 

dk_alter PATH            $OPENSS_PREFIX/bin

dk_alter LD_LIBRARY_PATH $OPENSS_PREFIX/lib64

 

dk_setenv OPENSS_MPI_IMPLEMENTATION mvapich

 

Softenv File Example

Offline version (no krell root usage)

 

This is an example of a softenv file used for a Blue Gene/Q installation.  Use the “resoft <filename of softenv file>” command to activate the Open|SpeedShop runtime environment.  Note that the installation paths in this file follow the convention where compute node version of Open|SpeedShop is installed as a “bgq” subdirectory of the installation path for the viewer version.    For illustration:

§  Viewer version installed in: /home/projects/oss/oss

§  Compute node version installed in: /home/projects/oss/oss/bgq

 

# The OpenSpeedShop .soft file.

# Remember to type "resoft" after working on this file.

 

OSS = /home/projects/oss/oss

TARCH = bgq

 

# Set up OSS environment variables

 

# Find the executable portions of OpenSpeedShop (order is important here)

PATH += $OSS/$TARCH/bin

PATH += $OSS/bin

 

# Find the libraries for OpenSpeedShop (order is important here)

LD_LIBRARY_PATH += $OSS/$TARCH/lib64

LD_LIBRARY_PATH += $OSS/lib64

 

# Find the runtime collectors

OPENSS_PLUGIN_PATH = $OSS/$TARCH/lib64/openspeedshop

 

# Find Dyninst for generation of per-loop statistics

DYNINSTAPI_RT_LIB  $OSS/lib64/libdyninstAPI_RT.so

 

# Tell the tool what the application MPI implementation is

# Needed if supporting multiple implementations and running the "mpi", "mpit", or "mpiotf" experiments

OPENSS_MPI_IMPLEMENTATION = mpich2

 

# Paths to documentation and man pages

OPENSS_DOC_DIR = $OSS/share/doc/packages/OpenSpeedShop

MANPATH = $OSS/share/man

 

# Use the basic environment.

@default

Offline version (with krell root usage)

 

# The OpenSpeedShop .soft file.

# Remember to type "resoft" after working on this file.

 

OSS = /home/projects/oss/oss

KROOT = /home/projects/krellroot

TARCH = bgq

 

# Set up OSS environment variables

 

# Find the executable portions of OpenSpeedShop (order is important here)

PATH += $KROOT/$TARCH/bin

PATH += $KROOT/bin

PATH += $OSS/$TARCH/bin

PATH += $OSS/bin

 

# Find the libraries for OpenSpeedShop (order is important here)

LD_LIBRARY_PATH += $KROOT/$TARCH/lib64

LD_LIBRARY_PATH += $KROOT/lib64

LD_LIBRARY_PATH += $OSS/$TARCH/lib64

LD_LIBRARY_PATH += $OSS/lib64

 

# Find the runtime collectors

OPENSS_PLUGIN_PATH = $OSS/$TARCH/lib64/openspeedshop

 

# Find Dyninst for generation of per-loop statistics

DYNINSTAPI_RT_LIB  $KROOT/lib64/libdyninstAPI_RT.so

 

# Tell the tool what the application MPI implementation is

# Needed if supporting multiple implementations and running the "mpi", "mpit", or "mpiotf" experiments

OPENSS_MPI_IMPLEMENTATION = mpich2

 

# Paths to documentation and man pages

OPENSS_DOC_DIR = $OSS/share/doc/packages/OpenSpeedShop

MANPATH = $OSS/share/man

 

# Use the basic environment.

@default

 

 

 


 

Appendix:  Notes from Example and Real System Installs

 

NOTE: For all the builds, you may build offline using the krellroot concept or not.   Using krellroot allows you to just build the new openspeedshop-2.1 updates when they arrive without building all the krellroot components over again.   For the cbtf version of Open|SpeedShop there is no way of building without building the krellroot first.   The krellroot external packages may be used to build either offline or the cbtf version of Open|SpeedShop.

 

Generic laptop/desktop:

 

Offline

offline without krellroot

#  Build the offline version of OSS without krell-root

./install-tool --build-offline --openss-prefix /opt/ossoffline_v2.1 --with-openmpi /opt/openmpi-1.5.5

offline without krellroot

# Build only the krell-root

./install-tool --build-krell-root --krell-root-prefix /opt/krellroot_v2.1 --with-openmpi /opt/openmpi-1.5.5

 

#  Build the offline version of OSS with krell-root

./install-tool --build-offline --krell-root-prefix /opt/krellroot_v2.1 --openss-prefix /opt/ossoffline_v2.1 --with-openmpi /opt/openmpi-1.5.5

 

cbtf

cbtf version of OSS with CBTF and with krellroot builds

# Build only the krell-root

./install-tool --build-krell-root --krell-root-prefix /opt/krellroot_v2.1 --with-openmpi /opt/openmpi-1.5.5

 

# Build cbtf components using the krell-root

./install-tool --build-cbtf --cbtf-prefix /opt/cbtf_only_v1.1 --krell-root-prefix /opt/krellroot_v2.1 --with-openmpi /opt/openmpi-1.5.5 --with-cupti /usr/local/cuda-5.0/extras/CUPTI --with-cuda /usr/local/cuda-5.0

 

# Build only OSS using the cbtf components and the krell-root

./install-tool --build-onlyosscbtf --cbtf-prefix /opt/cbtf_only_v1.1 --krell-root-prefix /opt/krellroot_v2.1 --openss-prefix /opt/osscbtf_v2.1 --with-openmpi /opt/openmpi-1.5.5 --with-cupti /usr/local/cuda-5.0/extras/CUPTI --with-cuda /usr/local/cuda-5.0

 

# Build the krell-root, the cbtf components, and OSS using cbtf instrumentor

./install-tool --build-all --cbtf-prefix /opt/cbtf_only_v1.1 --krell-root-prefix /opt/krellroot_v2.1 --openss-prefix /opt/osscbtf_v2.1 --with-openmpi /opt/openmpi-1.5.5

 

 

---------- Specialized large-scale system build examples ----------------

 

yellowstone: (IBM x8664)

 

module purge

module load gnu

module load cmake    # only needed if building the cbtf version of Open|SpeedShop


 

Offline

offline without krellroot

#  Build the offline version of OSS without krell-root

./install-tool --build-offline --openss-prefix /glade/u/home/galaro/ossoffline_v2.1 --with-python /glade/apps/opt/python/2.7.3/gnu/4.7.2 --with-mpich2 /opt/ibmhpc/pe1209/mpich2/gnu --with-boost /glade/apps/opt/boost/1.52.0/intel/12.1.5

offline without krellroot

# Build only the krell-root

./install-tool --build-krell-root --krell-root-prefix /glade/u/home/galaro/krellroot_v2.1 --with-python /glade/apps/opt/python/2.7.3/gnu/4.7.2 --with-mpich2 /opt/ibmhpc/pe1209/mpich2/gnu --with-boost /glade/apps/opt/boost/1.52.0/intel/12.1.5 --force-binutils-build

 

# Build offline version of OSS with krell-root

./install-tool --build-offline --krell-root-prefix /glade/u/home/galaro/krellroot_v2.1 --openss-prefix /glade/u/home/galaro/ossoffline_v2.1 --with-python /glade/apps/opt/python/2.7.3/gnu/4.7.2 --with-mpich2 /opt/ibmhpc/pe1209/mpich2/gnu --with-boost /glade/apps/opt/boost/1.52.0/intel/12.1.5

 

cbtf

cbtf version of OSS with CBTF and with krellroot builds

 

# Build only the krell-root

./install-tool --build-krell-root --krell-root-prefix /glade/u/home/galaro/krellroot_v2.1 --with-python /glade/apps/opt/python/2.7.3/gnu/4.7.2 --with-mpich2 /opt/ibmhpc/pe1209/mpich2/gnu --with-boost /glade/apps/opt/boost/1.52.0/intel/12.1.5 --force-binutils-build

 

# Build cbtf components using the krell-root

./install-tool --build-cbtf --krell-root-prefix /glade/u/home/galaro/krellroot_v2.1--cbtf-prefix /glade/u/home/galaro/cbtf_only_v1.1 --with-python /glade/apps/opt/python/2.7.3/gnu/4.7.2 --with-mpich2 /opt/ibmhpc/pe1209/mpich2/gnu --with-boost /glade/apps/opt/boost/1.52.0/intel/12.1.5

 

# Build only OSS using the cbtf components and the krell-root

./install-tool --build-onlyosscbtf --krell-root-prefix /glade/u/home/galaro/krellroot_v2.1--cbtf-prefix /glade/u/home/galaro/cbtf_only_v1.1--openss-prefix /glade/u/home/galaro/osscbtf_v2.1 --with-python /glade/apps/opt/python/2.7.3/gnu/4.7.2 --with-mpich2 /opt/ibmhpc/pe1209/mpich2/gnu --with-boost /glade/apps/opt/boost/1.52.0/intel/12.1.5

 

todi at CSCS: (Cray-XK)

 

module swap PrgEnv-cray PrgEnv-gnu

module load cmake            # only needed if building the cbtf version of Open|SpeedShop

module load cudatoolkit   # only needed if building the cbtf version of Open|SpeedShop


 

Offline

offline without krellroot

 

#  Build the offline version of OSS without krell-root

./install-tool --build-offline --target-arch cray-xk --openss-prefix /users/jeg/todi/oss_offline_v2.1 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --with-boost /apps/todi/boost/1.50sn/gnu_434

offline with krellroot

# Build only the krell-root

./install-tool --build-krell-root --krell-root-prefix /users/jeg/todi/new_krellroot_v2.1 --force-binutils-build --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --target-shared --with-boost /apps/todi/boost/1.50sn/gnu_434

 

# Build offline version of OSS with krell-root

./install-tool --build-offline --target-arch cray-xk --openss-prefix /users/jeg/todi/oss_offline_v2.1 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --with-boost /apps/todi/boost/1.50sn/gnu_434 --krell-root-prefix /users/jeg/todi/new_krellroot_v2.1

 

cbtf

cbtf version of OSS with CBTF and with krellroot builds

 

# Build only the krell-root

./install-tool --build-krell-root --krell-root-prefix /users/jeg/todi/new_krellroot_v2.1 --force-binutils-build --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --target-shared --with-boost /apps/todi/boost/1.50sn/gnu_434

 

# Build cbtf components using the krell-root

./install-tool --build-cbtf --target-arch cray-xk --target-shared --cbtf-prefix /users/jeg/todi/cbtf_only_v1.1 --krell-root-prefix /users/jeg/todi/new_krellroot_v2.1  --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --with-boost /apps/todi/boost/1.50sn/gnu_434

 

# Build only OSS using the cbtf components and the krell-root

./install-tool --build-onlyosscbtf --krell-root-prefix /users/jeg/todi/new_krellroot_v2.1  --cbtf-prefix /users/jeg/todi/cbtf_only_v1.1 --openss-prefix /users/jeg/todi/osscbtf_v2.1  --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --with-boost /apps/todi/boost/1.50sn/gnu_434

 

 

vulcan at LLNL: (BGQ)

 

For the BG/Q builds, you must build offline for the compute nodes and then build offline for the front-end node.   You may build offline using the krellroot concept or not.   Using krellroot allows you to just build the new openspeedshop-2.1 updates when they arrive without building all the krellroot components over again.

 

 vulcan compute node:

Offline

offline without krellroot

 

#  Build the offline version of OSS without krell-root

./install-tool --runtime-only --target-shared --target-arch bgq --build-offline --openss-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1/bgq --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

offline with krellroot

 

# Build only the krell-root

./install-tool --runtime-only --target-shared --target-arch bgq --build-krell-root --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/krellroot_v2.1/bgq --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc --force-binutils-build

 

./install-tool --runtime-only --target-shared --target-arch bgq --build-offline --openss-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1/bgq --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/krellroot_v2.1/bgq --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

 

vulcan FE node:

Offline

offline without krellroot

 

#  Build the offline version of OSS without krell-root

./install-tool --build-offline --openss-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc  --with-runtime-dir /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1/bgq

offline with krellroot

 

# Build only the krell-root

./install-tool --build-krell-root --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/krellroot_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

 

# Build offline version of OSS with krell-root

./install-tool --build-offline --openss-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1 --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/bgq/krellroot_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc  --with-runtime-dir /usr/global/tools/openspeedshop/oss-dev/bgq/ossoff_v2.1/bgq

 

 

rzuseq at LLNL: (BGQ)

 

For the BG/Q builds, you must build offline for the compute nodes and then build offline for the front-end node.   You may build offline using the krellroot concept or not.   Using krellroot allows you to just build the new openspeedshop-2.1 updates when they arrive without building all the krellroot components over again.

 

rzuseq compute node:

offline without krellroot

 

#  Build the offline version of OSS without krell-root

./install-tool --runtime-only --build-offline --target-shared --target-arch bgq --openss-prefix /usr/global/tools/openspeedshop/oss-dev/ossoff_v2.1/bgq --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

offline with krellroot

 

# Build only the compute node krell-root

./install-tool --runtime-only --target-shared --target-arch bgq --build-krell-root --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/krellroot_v2.1/bgq --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc --force-binutils-build

 

./install-tool --runtime-only --build-offline --target-shared --target-arch bgq --openss-prefix /usr/global/tools/openspeedshop/oss-dev/ossoff_v2.1/bgq --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/krellroot_u14/bgq --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

 

rzuseq FE node:

Offline

offline without krellroot

 

#  Build the offline version of OSS without krell-root

./install-tool --build-offline --openss-prefix /usr/global/tools/openspeedshop/oss-dev/ossoff_v2.1  --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc --with-runtime-dir /usr/global/tools/openspeedshop/oss-dev/ossoff_v2.1/bgq

offline with krellroot

 

# Build only the front-end krell-root

./install-tool --build-krell-root --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/krellroot_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

 

./install-tool --build-offline --openss-prefix /usr/global/tools/openspeedshop/oss-dev/ossoff_v2.1 --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/krellroot_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc --with-runtime-dir /usr/global/tools/openspeedshop/oss-dev/ossoff_v2.1/bgq

 

 

 

intrepid at ANL: (BGP)

 

For the BG/P builds, you must build offline for the compute nodes and then build offline for the front-end node.   You may build offline using the krellroot concept or not.   Using krellroot allows you to just build the new openspeedshop-2.1 updates when they arrive without building all the krellroot components over again.

 

The new procedure is untested for intrepid.


 

intrepid compute node:

offline without krellroot

 

./install-tool --runtime-only --target-shared --target-arch bgp --build-offline --openss-prefix /home/jgalaro/offline_v2.1/bgp  --with-mpich2 /bgsys/drivers/ppcfloor/comm 

offline with krellroot

 

# Build only the compute node krell-root

./install-tool --runtime-only --target-shared --target-arch bgp --build-krell-root --krell-root-prefix /home/jgalaro/krellroot_v2.1/bgp --with-mpich2 /bgsys/drivers/ppcfloor/comm --force-binutils-build --force-libelf-build

 

 

./install-tool --runtime-only --target-shared --target-arch bgp --build-offline --openss-prefix /home/jgalaro/offline_v2.1/bgp --krell-root-prefix /home/jgalaro/krellroot_v2.1/bgp --with-mpich2 /bgsys/drivers/ppcfloor/comm 

 

intrepid FE node:

Offline

offline without krellroot

 

./install-tool --build-offline --openss-prefix /home/jgalaro/offline_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm  --with-runtime-dir /home/jgalaro/offline_v2.1/bgp

offline with krellroot

 

# Build only the front-end krell-root

./install-tool --build-krell-root --krell-root-prefix /home/jgalaro/krellroot_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm --force-binutils-build --force-libelf-build

 

./install-tool --build-offline --openss-prefix /home/jgalaro/offline_v2.1 --krell-root-prefix /home/jgalaro/krellroot_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm  --with-runtime-dir /home/jgalaro/offline_v2.1/bgp

 

titan at ORNL: (Cray-XK)

 

module swap PrgEnv-pgi/4.1.40 PrgEnv-gnu

module load cmake              # only needed if building the cbtf version of Open|SpeedShop

module load cudatoolkit     # only needed if building the cbtf version of Open|SpeedShop

Offline

offline without krellroot

 

# Build offline without krellroot

./install-tool --target-shared --target-arch cray-xk --build-offline --openss-prefix /tmp/work/jgalaro/oss_offline_v2.1 --with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47

offline with krellroot

 

# Build krellroot used to build cbtf and oss/cbtf versions

./install-tool --target-shared --target-arch cray-xk --build-krell-root --krell-root-install-prefix /tmp/work/jgalaro/krellroot_v2.1 --with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --with-mrnet /tmp/work/jgalaro/mrnet_v2.1

 

# Build offline using krellroot

./install-tool --target-shared --target-arch cray-xk --build-offline --openss-prefix /tmp/work/jgalaro/oss_offline_v2.1 --krell-root-install-prefix /tmp/work/jgalaro/krellroot_v2.1 --with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47


 

cbtf

cbtf version of OSS with CBTF and with krellroot builds

 

# Build krellroot used to build cbtf and oss/cbtf versions

./install-tool --target-shared --target-arch cray-xk --build-krell-root --krell-root-install-prefix /tmp/work/jgalaro/krellroot_v2.1 --with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --with-mrnet /tmp/work/jgalaro/mrnet_v2.1

 

# Build mrnet only using krellroot components

./install-tool --build-mrnet --target-shared --target-arch cray-xk --krell-root-install-prefix /tmp/work/jgalaro/mrnet_v2.1 --with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47

 

# Copy over libstc++ because it needs to be available on the compute nodes

cp /opt/gcc/4.7.2/snos/lib64/libstdc++.so.6 /tmp/work/jgalaro/mrnet_v2.1/lib64/libstdc++.so.6

 

# Build cbtf only using krellroot components and Titan cuda/cupti components

./install-tool --build-cbtf --target-shared --target-arch cray-xk --krell-root-install-prefix /tmp/work/jgalaro/krellroot_v2.1 --cbtf-install-prefix /tmp/work/jgalaro/cbtf_only_v1.1 --with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --with-cuda /opt/nvidia/cudatoolkit/5.0.35.102 --with-cupti /opt/nvidia/cudatoolkit/5.0.35.102/extras/CUPTI --with-mrnet /tmp/work/jgalaro/mrnet_v2.1

 

# Build OpenSpeedShop that uses cbtf instrumentation using krellroot components and Titan cuda/cupti components

./install-tool --build-onlyosscbtf --target-shared --target-arch cray-xk --krell-root-prefix /tmp/work/jgalaro/krellroot_v2.1  --cbtf-prefix /tmp/work/jgalaro/cbtf_only_v1.1 --openss-prefix /tmp/work/jgalaro/osscbtf_v2.1 --with-boost /tmp/work/jgalaro/boost/1.50.0/cle4.0_gnu4.7.2 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --with-cuda /opt/nvidia/cudatoolkit/5.0.35.102 --with-cupti /opt/nvidia/cudatoolkit/5.0.35.102/extras/CUPTI --with-mrnet /tmp/work/jgalaro/mrnet_v2.1

 

mustang at LANL: (x8664)

 

module load /usr/projects/packages/openspeedshop/jegsgi/modulefiles/mustang-cmake-2.8.10

cbtf

cbtf version of OSS with CBTF and with krellroot builds

 

# Build krellroot used to build cbtf and oss/cbtf versions

./install-tool --build-krell-root --krell-root-install-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/mustang/krellroot_v2.1 --with-openmpi /usr/projects/hpcsoft/mustang/openmpi/1.4.4-gnu --with-mvapich2 /usr/projects/hpcsoft/mustang/mvapich2/1.8-gcc-4.4

 

# Build cbtf only using krellroot components

./install-tool --build-cbtf --cbtf-install-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/mustang/cbtf_only_v1.1 --krell-root-install-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/mustang/krellroot_v2.1 --with-openmpi /usr/projects/hpcsoft/mustang/openmpi/1.4.4-gnu --with-mvapich2 /usr/projects/hpcsoft/mustang/mvapich2/1.8-gcc-4.4

 

# Build OpenSpeedShop based on cbtf and krellroot components

./install-tool --build-onlyosscbtf --openss-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/mustang/osscbtf_v2.1 --cbtf-install-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/mustang/cbtf_only_v1.1 --krell-root-install-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/mustang/krellroot_v2.1 --with-openmpi /usr/projects/hpcsoft/mustang/openmpi/1.4.4-gnu --with-mvapich2 /usr/projects/hpcsoft/mustang/mvapich2/1.8-gcc-4.4

 

----------------

 moonlight at LANL: (x8664 with GPU)

 

module load /usr/projects/packages/openspeedshop/jegsgi/modulefiles/moonlight-cmake-2.8.10

module load cudatoolkit


 

cbtf

cbtf version of OSS with CBTF and with krellroot builds

 

# Build krellroot used to build cbtf and oss/cbtf versions

./install-tool --build-krell-root --krell-root-install-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/moonlight/krellroot_v2.1 --with-openmpi /usr/projects/hpcsoft/moonlight/openmpi/1.4.5-gcc-4.4 --with-mvapich2 /usr/projects/hpcsoft/moonlight/mvapich2/1.8-gcc-4.4 --with-cupti /opt/cudatoolkit-5.0/extras/CUPTI --with-cuda /opt/cudatoolkit-5.0

 

# Build cbtf only using krellroot components

./install-tool --build-cbtf --cbtf-install-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/moonlight/cbtf_only_v1.1 --krell-root-install-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/moonlight/krellroot_v2.1 --with-openmpi /usr/projects/hpcsoft/moonlight/openmpi/1.4.5-gcc-4.4 --with-mvapich2 /usr/projects/hpcsoft/moonlight/mvapich2/1.8-gcc-4.4 --with-cupti /opt/cudatoolkit-5.0/extras/CUPTI --with-cuda /opt/cudatoolkit-5.0

 

# Build OpenSpeedShop based on cbtf and krellroot components

./install-tool --build-onlyosscbtf --openss-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/moonlight/osscbtf_v2.1 --cbtf-install-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/moonlight/cbtf_only_v1.1 --krell-root-install-prefix /usr/projects/packages/openspeedshop/jegsgi/installs/moonlight/krellroot_v2.1 --with-openmpi /usr/projects/hpcsoft/moonlight/openmpi/1.4.5-gcc-4.4 --with-mvapich2 /usr/projects/hpcsoft/moonlight/mvapich2/1.8-gcc-4.4 --with-cupti /opt/cudatoolkit-5.0/extras/CUPTI --with-cuda /opt/cudatoolkit-5.0

 

 

redsky at Sandia: (x8664)

 

offline

offline without krellroot

 

# Build offline only without root

./install-tool --build-offline --openss-prefix /projects/OSS/redsky/openss_v2.1 --with-openmpi /apps/x86_64/mpi/openmpi/gcc-4.3.4/openmpi-1.4.3_oobpr --with-mvapich2 /apps/x86_64/mpi/mvapich2/gcc-4.3.4/mvapich2-1.4.1_oobpr

offline with krellroot

 

# Build krell root

./install-tool --build-krell-root --krell-root-prefix /projects/OSS/redsky/krellroot_v2.1 --force-libelf-build --with-openmpi /apps/x86_64/mpi/openmpi/gcc-4.3.4/openmpi-1.4.3_oobpr --with-mvapich2 /apps/x86_64/mpi/mvapich2/gcc-4.3.4/mvapich2-1.4.1_oobpr

 

# Build offline only with krell root

./install-tool --build-offline --openss-prefix /projects/OSS/redsky/openss_v2.1 --krell-root-prefix /projects/OSS/redsky/krellroot_v2.1 --with-openmpi /apps/x86_64/mpi/openmpi/gcc-4.3.4/openmpi-1.4.3_oobpr --with-mvapich2 /apps/x86_64/mpi/mvapich2/gcc-4.3.4/mvapich2-1.4.1_oobpr

 

chama at Sandia: (x8664 with GPU)

 

module purge

module load gnu/4.7.1

module load chama-cmake

module load cudatoolkit


 

offline

offline without krellroot

 

# Build offline only without root

./install-tool --build-offline --openss-prefix /projects/OSS/tlcc2/openss_u14 --with-openmpi /opt/openmpi-1.6-gnu --with-mvapich2 /opt/mvapich2-gnu-shmem-1.7 --with-mvapich /opt/mvapich-gnu-shmem-1.2

offline with krellroot

 

# Build krell root

./install-tool --build-krell-root --krell-root-prefix /projects/OSS/chama/krellroot_v2.1 --with-openmpi /opt/openmpi-1.6-gnu --with-mvapich2 /opt/mvapich2-gnu-shmem-1.7 --with-mvapich /opt/mvapich-gnu-shmem-1.2

 

# Build offline with krell root

./install-tool --build-offline --openss-prefix /projects/OSS/chama/openss_v2.1 --krell-root-prefix /projects/OSS/chama/krellroot_v2.1 --with-openmpi /opt/openmpi-1.6-gnu --with-mvapich2 /opt/mvapich2-gnu-shmem-1.7 --with-mvapich /opt/mvapich-gnu-shmem-1.2

 

cbtf

cbtf version of OSS with CBTF and with krellroot builds

 

# Build krell root

./install-tool --build-krell-root --krell-root-prefix /projects/OSS/chama/krellroot_v2.1 --with-openmpi /opt/openmpi-1.6-gnu --with-mvapich2 /opt/mvapich2-gnu-shmem-1.7 --with-mvapich /opt/mvapich-gnu-shmem-1.2

 

# Build cbtf using krell root

./install-tool --build-cbtf --cbtf-install-prefix /projects/OSS/chama/cbtf_only_v1.1 --krell-root-prefix /projects/OSS/chama/krellroot_v2.1 --with-openmpi /opt/openmpi-1.6-gnu --with-mvapich2 /opt/mvapich2-gnu-shmem-1.7 --with-mvapich /opt/mvapich-gnu-shmem-1.2 --with-cuda /opt/cudatoolkit-4.2 --with-cupti /opt/cudatoolkit-4.2/extras/CUPTI

 

# Build OpenSpeedShop using cbtf and krell root components

./install-tool --build-onlyosscbtf --openss-install-prefix /projects/OSS/chama/osscbtf_v2.1 --cbtf-install-prefix /projects/OSS/chama/cbtf_only_v1.1 --krell-root-prefix /projects/OSS/chama/krellroot_v2.1 --with-openmpi /opt/openmpi-1.6-gnu --with-mvapich2 /opt/mvapich2-gnu-shmem-1.7 --with-mvapich /opt/mvapich-gnu-shmem-1.2 --with-cuda /opt/cudatoolkit-4.2 --with-cupti /opt/cudatoolkit-4.2/extras/CUPTI

-sh-4.1$

 

rzmerl at LLNL: (x8664)

 

# Build offline:

# Force binutils because make OSS usable across similar platforms w/o problem

# of different bfd and opcode installations.  Force papi to have the latest

# papi version available

 

./install-tool --build-offline --openss-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzmerl/oss_off_v2.1 --force-binutils-build --force-papi-build

 

# From krellroot

./install-tool --build-offline --openss-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzmerl/oss_off_v2.1_debug --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzmerl/krellroot_v2.1

 

 

#Build krellroot:

./install-tool --build-krell-root --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzmerl/krellroot_v2.1 --force-binutils-build --force-papi-build

 

#Build cbtf using the krellroot:

./install-tool --build-cbtf --cbtf-install-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzmerl/cbtf_only_v1.1 --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzmerl/krellroot_v2.1

 

#Build the cbtf instrumentor version of OpenSpeedShop using cbtf and the krellroot:

./install-tool --build-onlyosscbtf --openss-install-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzmerl/osscbtf_v2.1 --cbtf-install-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzmerl/cbtf_only_v1.1 --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzmerl/krellroot_v2.1 

 

NOTE: at LLNL to execute successfully at LLNL,

      you need to change the default MRNet ssh communication method to rsh

      by setting the environment variable XPLAT_RSH to rsh

NOTE: to find the mrnet communication daemon executable you need to set  the environment variable  MRNET_COMM_PATH to the path and executable name.   For example, $CBTFONLY/sbin/cbtf_mrnet_commnode, where CBTFONLY is the installation path to CBTF.

 

rzgpu at LLNL: (x8864 with GPU)

 

./install-tool --build-krell-root --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzgpu/krellroot_v2.1

 

./install-tool --build-cbtf --cbtf-install-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzgpu/cbtf_only_v1.1 --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzgpu/krellroot_v2.1 --with-cupti /opt/cudatoolkit-5.0/extras/CUPTI --with-cuda /opt/cudatoolkit-5.0

 

./install-tool --build-onlyosscbtf --openss-install-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzgpu/osscbtf_v2.1 --cbtf-install-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzgpu/cbtf_only_v1.1 --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/rzgpu/krellroot_v2.1 --with-cupti /opt/cudatoolkit-5.0/extras/CUPTI --with-cuda /opt/cudatoolkit-5.0

 

 

cab at LLNL: (x8664)

 

./install-tool --build-krell-root --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/cab/krellroot_v2.1

 

./install-tool --build-offline --openss-prefix  /usr/global/tools/openspeedshop/oss-dev/x8664/cab/ossoff_v2.1 --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/cab/krellroot_v2.1

 

./install-tool --build-cbtf --cbtf-install-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/cab/cbtf_only_v1.1 --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/cab/krellroot_v2.1 --with-cupti /opt/cudatoolkit-5.0/extras/CUPTI --with-cuda /opt/cudatoolkit-5.0

 

./install-tool --build-onlyosscbtf --openss-install-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/cab/osscbtf_v2.1 --cbtf-install-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/cab/cbtf_only_v1.1 --krell-root-prefix /usr/global/tools/openspeedshop/oss-dev/x8664/cab/krellroot_v2.1 --with-cupti /opt/cudatoolkit-5.0/extras/CUPTI --with-cuda /opt/cudatoolkit-5.0

 

 

hopper at NERSC:  (Cray-XE)

 

module swap PrgEnv-pgi PrgEnv-gnu

offline

offline without krellroot

 

./install-tool --build-offline --target-arch cray-xe --openss-prefix /global/u2/j/jgalaro/hopper/oss_offline_v2.1 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47  --with-boost /usr/common/usg/boost/1.51/gnu

offline with krellroot

 

./install-tool --build-krell-root --target-arch cray-xe --krell-root-prefix /global/u2/j/jgalaro/hopper/krellroot_v2.1 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --with-boost /usr/common/usg/boost/1.51/gnu

 

./install-tool --build-offline --target-arch cray-xe --openss-prefix /global/u2/j/jgalaro/hopper/oss_offline_v2.1 --krell-root-prefix /global/u2/j/jgalaro/hopper/krellroot_v2.1 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47  --with-boost /usr/common/usg/boost/1.51/gnu


 

cbtf

cbtf version of OSS with CBTF and with krellroot builds

 

#Build krellroot which can be used to build offline and/or cbtf versions of OpenSpeedShop:

./install-tool --build-krell-root --target-arch cray-xe --krell-root-prefix /global/u2/j/jgalaro/hopper/krellroot_v2.1 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47 --with-boost /usr/common/usg/boost/1.51/gnu

 

#Build cbtf using the krellroot:

./install-tool --build-cbtf --cbtf-install-prefix  /global/u2/j/jgalaro/hopper/cbtf_only_v1.1 --target-arch cray-xe --krell-root-prefix /global/u2/j/jgalaro/hopper/krellroot_v2.1 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47  --with-boost /usr/common/usg/boost/1.51/gnu

 

#Build OpenSpeedShop cbtf version using the krellroot and cbtf:

./install-tool --build-onlyosscbtf --target-arch cray-xe --openss-install-prefix /global/u2/j/jgalaro/hopper/osscbtf_v2.1 --cbtf-install-prefix /global/u2/j/jgalaro/hopper/cbtf_only_v1.1 --krell-root-prefix /global/u2/j/jgalaro/hopper/krellroot_v2.1 --with-mpich2 /opt/cray/mpt/default/gni/mpich2-gnu/47  --with-boost /usr/common/usg/boost/1.51/gnu

 

 

pfe at NASA: (SGI x86_64)

 

Note: MPT is transitioning to MPI-3 support but it is not completed.  Please use MPT-2.08 and above when building the MPI collectors.  We have added special code to support their implementation of mpi.h MPI Function specifications with our wrappers.  

 

offline

offline without krellroot

 

# Builds offline with all externals and openspeedshop installed into one installation directory

./install-tool --build-offline --openss-prefix /home4/jgalarow/openss_offline_v2.1 --with-mpt /nasa/sgi/mpt/2.08r7 --with-mpich2 /nasa/intel/impi/4.1.1.036 --with-mvapich2 /nasa/mvapich2/1.6.sles11/gcc --with-python /home4/jgalarow/python_root  

offline with krellroot

# Build krell root first, then use it to build offline

./install-tool --build-krell-root --krell-root-prefix /home4/jgalarow/krellroot_v2.1  --with-mpt /nasa/sgi/mpt/2.08r7 --with-mpich2 /nasa/intel/impi/4.1.1.036 --with-mvapich2 /nasa/mvapich2/1.6.sles11/gcc --with-python /home4/jgalarow/python_root --force-libelf-build

 

# Build offline version of OSS with krellroot

./install-tool --build-offline --openss-prefix /home4/jgalarow/openss_offline_v2.1  --krell-root-prefix /home4/jgalarow/krellroot_v2.1 --with-mpt /nasa/sgi/mpt/2.08r7 --with-mpich2 /nasa/intel/impi/4.1.1.036 --with-mvapich2 /nasa/mvapich2/1.6.sles11/gcc --with-python /home4/jgalarow/python_root


 

cbtf

cbtf version of openss, with krellroot

# Build krell root first, then cbtf, then use both to build openss

 

./install-tool --build-krell-root --krell-root-prefix /home4/jgalarow/krellroot_v2.1 --with-mpt /nasa/sgi/mpt/2.08r7 --with-mpich2 /nasa/intel/impi/4.1.1.036 --with-mvapich2 /nasa/mvapich2/1.6.sles11/gcc --with-python /home4/jgalarow/python_root --force-libelf-build

 

./install-tool --build-cbtf --cbtf-prefix /home4/jgalarow/cbtf_only_1.1 --krell-root-prefix /home4/jgalarow/krellroot_v2.1 --with-mpt /nasa/sgi/mpt/2.08r7 --with-mpich2 /nasa/intel/impi/4.1.1.036 --with-mvapich2 /nasa/mvapich2/1.6.sles11/gcc --with-python /home4/jgalarow/python_root

 

./install-tool --build-onlyosscbtf Ėopenss-prefix /home4/jgalarow/osscbtf_v2.1 --cbtf-prefix /home4/jgalarow/cbtf_only_1.1 --krell-root-prefix /home4/jgalarow/krellroot_v2.1 --with-mpt /nasa/sgi/mpt/2.08r7 --with-mpich2 /nasa/intel/impi/4.1.1.036 --with-mvapich2 /nasa/mvapich2/1.6.sles11/gcc --with-python /home4/jgalarow/python_root

 

mira at ANL: (BG/Q)

 

For the BG/Q builds, you must build offline for the compute nodes and then build offline for the front-end node.   You may build offline using the krellroot concept or not.   Using krellroot allows you to just build the new openspeedshop-2.1 updates when they arrive without building all the krellroot components over again.


 

offline

Compute node:

offline without krellroot

 

# Builds offline with all externals and openspeedshop installed into one installation directory

./install-tool --runtime-only --target-shared --target-arch bgq --build-offline  --openss-prefix /projects/BGQtools_esp/oss/oss_offline_v2.1/bgq --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

offline with krellroot

 

# Build krell root first, then use it to build offline

./install-tool --runtime-only --target-shared --target-arch bgq --build-krell-root --krell-root-prefix /projects/BGQtools_esp/oss/krellroot_v2.1/bgq --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc --force-binutils-build

 

# Build offline version of OSS with krellroot

./install-tool --runtime-only --target-shared --target-arch bgq --build-offline --openss-prefix /projects/BGQtools_esp/oss/oss_offline_v2.1/bgq --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc --krell-root-prefix /projects/BGQtools_esp/oss/krellroot_v2.1/bgq

 

Front-end node:

offline without krellroot

 

# Builds offline with all externals and openspeedshop installed into one installation directory

./install-tool --build-offline  --openss-prefix /projects/BGQtools_esp/oss/oss_offline_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc --with-runtime-dir /projects/BGQtools_esp/oss/oss_offline_v2.1/bgq

offline with krellroot

# Build krell root first, then use it to build offline

./install-tool --build-krell-root --krell-root-prefix /projects/BGQtools_esp/oss/krellroot_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc

 

# Build offline version of OSS with krellroot

./install-tool --build-offline --openss-prefix /projects/BGQtools_esp/oss/oss_offline_v2.1 --with-mpich2 /bgsys/drivers/ppcfloor/comm/gcc  --krell-root-prefix /projects/BGQtools_esp/oss/krellroot_v2.1  --with-runtime-dir /projects/BGQtools_esp/oss/oss_offline_v2.1/bgq

 



[1] MPT is transitioning to MPI-3 support but it is not completed.  Please use MPT-2.08 and above when building the MPI collectors.  We have added special code to support their implementation of mpi.h MPI Function specifications with our wrappers.