-
Notifications
You must be signed in to change notification settings - Fork 286
System Specific Notes
benkirk edited this page Jan 29, 2013
·
21 revisions
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
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
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 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