@@ -13,23 +13,59 @@ build_gpu:
13
13
- nvidia-smi
14
14
- which jsrun
15
15
- module load gcc/10.2.0
16
- - module load openblas
16
+ - module load essl
17
17
- module load cuda
18
18
- module load magma/2.6.1
19
+ - module load netlib-scalapack
20
+ - module load netlib-lapack
19
21
- module load git
20
22
- module load cmake
21
23
- export MAGMA_ROOT=${OLCF_MAGMA_ROOT}
22
24
- JSRUN=jsrun
23
25
- export BML_NONMPI_PRECOMMAND=${BML_NONMPI_PRECOMMAND:=${JSRUN}}
24
26
- export BML_NONMPI_PRECOMMAND_ARGS=${BML_NONMPI_PRECOMMAND_ARGS:="-n1;-a1;-g1;-c7;--smpiargs=off"}
25
27
- echo ${BML_NONMPI_PRECOMMAND_ARGS}
28
+ - export BML_MPIEXEC_EXECUTABLE=${BML_MPIEXEC_EXECUTABLE:=${JSRUN}}
29
+ - export BML_MPIEXEC_NUMPROCS_FLAG=${BML_MPIEXEC_NUMPROCS_FLAG:="-n"}
30
+ - export BML_MPIEXEC_PREFLAGS=${BML_MPIEXEC_PREFLAGS:="-a1;-c4;-bpacked:2;-g1"}
31
+ - export BLAS_LIBRARIES=${BLAS_LIBRARIES:="$OLCF_ESSL_ROOT/lib64/libesslsmp.so"}
32
+ - export LAPACK_LIBRARIES=${LAPACK_LIBRARIES:="$OLCF_NETLIB_LAPACK_ROOT/lib64/liblapack.so"}
33
+ - export BML_SCALAPACK=${BML_SCALAPACK:=yes}
34
+ - export SCALAPACK_LIBRARIES=${SCALAPACK_LIBRARIES:="-L$OLCF_NETLIB_SCALAPACK_ROOT/lib -lscalapack"}
35
+ - export BML_CUDA=${BML_CUDA:=yes}
36
+ - export BML_ELPA=${BML_ELPA:=yes}
37
+ - export ELPA_DIR=${ELPA_DIR:=/gpfs/wolf/csc304/proj-shared/elpa}
38
+ - export BML_MPI=${BML_MPI:=yes}
39
+ - export EXTRA_LINK_FLAGS=${EXTRA_LINK_FLAGS:="-lgfortran"}
26
40
- echo ${CI_PROJECT_DIR}
27
41
- mkdir ${EXTERNAL_WORKDIR}
28
42
- cd ${EXTERNAL_WORKDIR}
29
43
- git clone file://${CI_PROJECT_DIR} ${EXTERNAL_WORKDIR}
30
44
- mkdir build
31
45
- cd build
32
- - cmake -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DBML_TESTING=ON ${CMAKE_OPTS[@]} -DBML_NONMPI_PRECOMMAND="${BML_NONMPI_PRECOMMAND}" -DBML_NONMPI_PRECOMMAND_ARGS="${BML_NONMPI_PRECOMMAND_ARGS}" ${CMAKE_EXTRA_ARGS} .. &&
46
+ - cmake -DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}"
47
+ -DCMAKE_C_COMPILER=mpicc
48
+ -DCMAKE_CXX_COMPILER=mpiCC
49
+ -DCMAKE_Fortran_COMPILER=mpif90
50
+ -DBML_TESTING=ON ${CMAKE_OPTS[@]}
51
+ -DBLAS_LIBRARIES="${BLAS_LIBRARIES}"
52
+ -DLAPACK_LIBRARIES="${LAPACK_LIBRARIES}"
53
+ -DSCALAPACK_LIBRARIES="${SCALAPACK_LIBRARIES}"
54
+ -DBML_ELPA="${BML_ELPA}"
55
+ -DELPA_DIR="${ELPA_DIR}"
56
+ -DCMAKE_PREFIX_PATH="${ELPA_DIR}"
57
+ -DBML_MPI="${BML_MPI}"
58
+ -DBML_NONMPI_PRECOMMAND="${BML_NONMPI_PRECOMMAND}"
59
+ -DBML_NONMPI_PRECOMMAND_ARGS="${BML_NONMPI_PRECOMMAND_ARGS}"
60
+ -DBML_MPIEXEC_EXECUTABLE="${BML_MPIEXEC_EXECUTABLE}"
61
+ -DBML_MPIEXEC_NUMPROCS_FLAG="${BML_MPIEXEC_NUMPROCS_FLAG}"
62
+ -DBML_MPIEXEC_NUMPROCS="${BML_MPIEXEC_NUMPROCS}"
63
+ -DBML_MPIEXEC_PREFLAGS="${BML_MPIEXEC_PREFLAGS}"
64
+ -DBML_CUDA="${BML_CUDA}"
65
+ -DBML_MAGMA="${BML_MAGMA}"
66
+ -DBML_SCALAPACK="${BML_SCALAPACK}"
67
+ -DEXTRA_LINK_FLAGS="${EXTRA_LINK_FLAGS}"
68
+ ${CMAKE_EXTRA_ARGS} .. &&
33
69
- make VERBOSE=1
34
70
- ctest --output-on-failure
35
71
tags :
0 commit comments