Skip to content

System Specific Notes

benkirk edited this page Jan 29, 2013 · 21 revisions

Notes for Installing libMesh on specific computers

pleiades.nas.nasa.gov

Preliminaries, environment, & modules

I run bash and the important bits of my ~/.profile are

module purge
module load git/1.7.7.4
module load comp-intel/2012.0.032
module load mpi-sgi/mpt.2.06rp16
module load boost
module load svn/1.6.11

# tell MPT about our preferred compilers
export MPICC_CC=icc
export MPICXX_CXX=icpc
export MPIF90_F90=ifort

Getting PETSc

Download and build PETSc:

cd /nobackup/$USER
mkdir -p codes/petsc
cd codes/petsc
wget http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-3.3-p5.tar.gz
tar zxvf petsc-3.3-p5.tar.gz
mv petsc-3.3-p5 3.3-p5
cd 3.3-p5
export PETSC_DIR=`pwd`
export PETSC_ARCH=icc-12.1.4-mpt-2.06rp16
./configure --with-cxx=`which mpicxx` --with-cc=`which mpicc` --with-fc=`which mpif90` \
            --with-shared-libraries --with-debugging=0 \
            --with-blas-lapack-lib="-L/nasa/intel/Compiler/2012.0.032/mkl/lib/intel64 -Wl,-rpath,/nasa/intel/Compiler/2012.0.032/mkl/lib/intel64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core" \
            --download-hypre=yes --with-openmp=1
make PETSC_DIR=/nobackup/bkirk/codes/petsc/3.3-p5 PETSC_ARCH=icc-12.1.4-mpt-2.06rp16 all

Getting libMesh

Check out libMesh from GitHub:

cd /nobackup/$USER
mkdir -p codes
cd codes
git clone https://github.com/libMesh/libmesh.git
cd libmesh

configure libMesh

Configure libMesh for this platform. Make sure that your PETSC_DIR and PETSC_ARCH environment variables are set from the step above. Note that here we pass optional arguments to configure to help it find Intel's Threading Building Blocks, which are not required to build libMesh but worth having since they are available.

./configure --prefix=/nobackup/$USER/codes/install \
            --with-tbb=/nasa/intel/Compiler/2012.0.032/tbb \
            --with-tbb-lib=/nasa/intel/Compiler/2012.0.032/tbb/lib/intel64/cc4.1.0_libc2.4_kernel2.6.16.21
make -j 6
make install