Skip to content

Installation Guide

dchasap edited this page Sep 28, 2023 · 1 revision

Dependencies

  • TaskSim (included in MUSA distribution)
  • Nanox (included in MUSA distribution)
  • Mercurium (included in MUSA distribution)
  • Dimemas (included in MUSA distribution)
  • DynamoRIO
  • Extrae
  • MPI (tested with OpenMPI and Intel MPI)
  • Ramulator (optional - required for detailed simulation with accurate memory model)

Manual Installation

We provide a build.sh script to automate the installation of the MUSA framework. The user needs to edit build.sh with the path to the software dependencies. The following paths need to be set in build.sh:

export INSDIR= # PATH to MUSA root directory                                                       
export PAPI= # PATH to PAPI installation directory                                                                          
export MPI= # PATH to MPI library installation directory                                                                    
export EXTRAE= # PATH to EXTRAE installation directory
export RAMULATOR= # PATH to RAMULATOR library

Once you set up your variable, simply execute the build.sh script and setup your PATH variable to include Mercurium compiler and MUSA executables. The build script will create additional install and build folders. The install folder will contain the final compiled version of the MUSA framework.

cd MUSA
./build.sh
export PATH=${MUSA_ROOT}/install/mcxx/bin:${PATH}
export PATH=${MUSA_ROOT}/install/bin:${PATH}

Install with EasyBuild or SPACK packages

We provide EasyBuild and SPACK packages of MUSA, DynamoRIO, Extrae and Ramulator for distribution on HPC platforms. These packages assume that OpenMPI and GCC 11.0 are available on the system. Please contact Dimitrios Chasapis (dimitrios.chasapis@bsc.es) if you wish to obtain them.

For DEEP System users, these packages should be already available.