|
| 1 | +#!/usr/bin/env bash |
| 2 | +# Abort on error |
| 3 | +set -e |
| 4 | + |
| 5 | +HOST=$(hostname) |
| 6 | + |
| 7 | +if [[ "$HOST" == kesch* || "$HOST" == escha* ]]; then |
| 8 | + module load craype-network-infiniband |
| 9 | + module load craype-haswell |
| 10 | + module load craype-accel-nvidia35 |
| 11 | + module load cray-libsci |
| 12 | + module load cudatoolkit/8.0.61 |
| 13 | + module load mvapich2gdr_gnu/2.2_cuda_8.0 |
| 14 | + module load gcc/5.4.0-2.26 |
| 15 | + module load /users/jenkins/easybuild/kesch/modules/all/cmake/3.12.4 |
| 16 | + export BOOST_ROOT=/project/c14/install/kesch/boost/boost_1_67_0 |
| 17 | + export CUDATOOLKIT_HOME=$CUDA_PATH |
| 18 | + export CUDA_ARCH=sm_37 |
| 19 | +elif [[ "$HOST" == tave* ]]; then |
| 20 | + module switch PrgEnv-cray PrgEnv-gnu |
| 21 | + module rm CMake |
| 22 | + module load /users/jenkins/easybuild/tave/modules/all/CMake/3.12.4 |
| 23 | + export BOOST_ROOT=/project/c14/install/kesch/boost/boost_1_67_0 |
| 24 | +elif [[ "$HOST" == daint* ]]; then |
| 25 | + module load daint-gpu |
| 26 | + module load cudatoolkit/9.2.148_3.19-6.0.7.1_2.1__g3d9acc8 |
| 27 | + module switch PrgEnv-cray PrgEnv-gnu |
| 28 | + module rm CMake |
| 29 | + module load /users/jenkins/easybuild/daint/haswell/modules/all/CMake/3.12.4 |
| 30 | + export BOOST_ROOT=/project/c14/install/daint/boost/boost_1_67_0 |
| 31 | + export CUDA_ARCH=sm_60 |
| 32 | +else |
| 33 | + echo "Unknown host ${HOST}, using current environment." |
| 34 | +fi |
| 35 | + |
| 36 | +cwd=$(pwd) |
| 37 | + |
| 38 | +# install c_bindings |
| 39 | +mkdir -p build && cd build |
| 40 | +cmake .. -DCMAKE_INSTALL_PREFIX=${cwd}/install |
| 41 | +nice -15 make -j8 install |
| 42 | +ctest . |
| 43 | + |
| 44 | +# compile examples using the installation |
| 45 | +cd ${cwd}/example/simple |
| 46 | +mkdir -p build && cd build |
| 47 | +cmake .. -Dgt_c_bindings_DIR=${cwd}/install/lib/cmake |
| 48 | +nice -15 make -j8 |
| 49 | +./driver |
| 50 | + |
0 commit comments