ASPECT INSTALLATION - N8 POLARIS CLUSTER v1.0
Phil Heron, Durham University
July 2017
email: philip.j.heron@durham.ac.uk
Setup for ASPECT 2.0.0 and dealii 8.50 using candi.
STEP 1 - downloading Candi
Download candi
git clone https://github.com/dealii/candi
———————
STEP 2 - setup modules
Setup modules
module unload intel/12.1.5.339 openmpi/1.6.5
module load gnu/5.3.0 openmpi mkl
The module list we have is therefore:
1) licenses 3) bit/64 5) user 7) openmpi/1.6.5
2) sge 4) durham 6) gnu/5.3.0 8) mkl/10.3u11
We then export the mpi set up:
export CC=mpicc; export CXX=mpicxx; export FC=mpif90; export FF=mpif77
We should also find the path to MKL:
module show mkl
which will show many lines, but this is the one we need:
prepend-path LD_LIBRARY_PATH /apps/developers/libraries/mkl/10.3u11/1/bit-64-gnu-5.3.0/mkl/lib
We will use the path /apps/developers/libraries/mkl/10.3u11/1/bit-64-gnu-5.3.0/mkl/lib later on in the build.
———————
STEP 3 - editing Candi setup
As candi can download a great number of packages that deal.ii can work with, we only need to download the ones that are directly relevant to ASPECT. As a result, we can can comment out the packages that we do not need (which are open cascade, PETSC, SLEPC).
cd candi
vi candi.cfg
line 19 needs to be edited to:
INSTALL_PATH=//home/polaris_dur1/*username*/candi
We need to edit the following:
PACKAGES="load:dealii-prepare"
#PACKAGES="${PACKAGES} once:opencascade"
#PACKAGES="${PACKAGES} once:parmetis"
#PACKAGES="${PACKAGES} once:superlu_dist"
PACKAGES="${PACKAGES} once:hdf5"
PACKAGES="${PACKAGES} once:p4est"
PACKAGES="${PACKAGES} once:trilinos"
#PACKAGES="${PACKAGES} once:petsc"
#PACKAGES="${PACKAGES} once:slepc"
PACKAGES="${PACKAGES} dealii”
In the same file, we need to look into specifying the MKL libraries. Therefore, towards the end of the file we need to edit their path:
MKL=ON
MKL_DIR=/apps/developers/libraries/mkl/10.3u11/1/bit-64-gnu-5.3.0/mkl/lib
#BLAS_DIR=
#LAPACK_DIR=
———————
STEP 4 - running Candi
From here we can run candi. However, we need to specify the platform we wish to run on, which in this case is centos 7.
./candi.sh --platform=deal.II-toolchain/platforms/supported/centos7.platform -j8
(where j8 is the number of processors you have available to run the configuration and installation of deal.ii and it’s dependencies). I would recommend running -j8.
You are asked to review the set up of candi once the installation begins. Press enter for these parts unless you notice an error. The program will make sure you have the relevant external libraries installed and then make sure the compilers are correct: c++ etc.
Build finished in 3315 seconds = 55 minutes
———————
STEP 5 - testing dealii
Head to the build directory to test:
cd /home/polaris_dur1/durph/deal.ii-candi/tmp/build/deal.II-v8.5.0
make test
This should run 9 tests, they all should pass —>
[durph@login1.polaris deal.II-v8.5.0]$ make test
Running quicktests...
Test project /home/polaris_dur1/durph/deal.ii-candi/tmp/build/deal.II-v8.5.0/tests/quick_tests
Start 1: step.debug
1/9 Test #1: step.debug ....................... Passed 20.10 sec
Start 2: step.release
2/9 Test #2: step.release ..................... Passed 18.94 sec
Start 3: affinity.debug
3/9 Test #3: affinity.debug ................... Passed 17.40 sec
Start 4: mpi.debug
4/9 Test #4: mpi.debug ........................ Passed 19.95 sec
Start 5: tbb.debug
5/9 Test #5: tbb.debug ........................ Passed 16.85 sec
Start 6: p4est.debug
6/9 Test #6: p4est.debug ...................... Passed 18.67 sec
Start 7: step-trilinos.debug
7/9 Test #7: step-trilinos.debug .............. Passed 17.45 sec
Start 8: lapack.debug
8/9 Test #8: lapack.debug ..................... Passed 16.67 sec
Start 9: umfpack.debug
9/9 Test #9: umfpack.debug .................... Passed 18.59 sec
100% tests passed, 0 tests failed out of 9
Total Test time (real) = 164.63 sec
Built target test
———————
STEP 6 - building ASPECT
Wherever you would like ASPECT to be downloaded,
git clone --recursive https://github.com/geodynamics/aspect.git
Once downloaded, we can begin to build and then configure. For the build we need to let ASPECT know where deal.ii is, and from there deal.ii is configured and linked to trilinos and p4est. The example I give below is using my path:
cd aspect
cmake -DDEAL_II_DIR=/home/polaris_dur1/durph/deal.ii-candi/tmp/build/deal.II-v8.5.0 .
Once the cmake is complete, you need to make the executable:
make -j8
Again, I would recommend using a number of processors for this make, as it can take a while.
———————
STEP 7 - testing ASPECT
Once complete, run a make test to check to see if the executable is working correct:
cd tests
make test
Running tests...
Test project /home/polaris_dur1/durph/aspect/tests
Start 1: quick_mpi
1/1 Test #1: quick_mpi ........................ Passed 0.55 sec
100% tests passed, 0 tests failed out of 1
Total Test time (real) = 0.56 sec
———————
STEP 8 - release version of ASPECT
I would then make a copy of the debug release:
cp aspect aspect.dgb
and then rerun the make
make release
to get a release version of the executable.
cp aspect aspect.rel
Like this:
Like Loading...