forked from ValeevGroup/tiledarray
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.gitlab-ci.yml
78 lines (74 loc) · 2.56 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
stages:
- build
default:
# timeout: 3h # NB doesnt work as of 1/2021
interruptible: true
variables:
MAD_NUM_THREADS : 2
TA_TARGETS : "tiledarray examples-tiledarray ta_test check-tiledarray"
# Debug builds with ScaLAPACK=ON need increased TA_UT_CTEST_TIMEOUT
TA_CONFIG : >
CMAKE_BUILD_TYPE=${BUILD_TYPE}
TA_ASSERT_POLICY=TA_ASSERT_THROW
TA_UT_CTEST_TIMEOUT=3000
${TA_PYTHON}
${ENABLE_CUDA}
CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda
${BLA_VENDOR}
${BLA_THREADS}
${ENABLE_SCALAPACK}
before_script:
# NB: if CMAKE_BUILD_PARALLEL_LEVEL is not set (i.e. using shared runner), use 1 to ensure we have enough memory
# TODO optimize ta_test build memory consumption
- export CMAKE_BUILD_PARALLEL_LEVEL=${CMAKE_BUILD_PARALLEL_LEVEL:=1}
- echo "CMAKE_BUILD_PARALLEL_LEVEL=$CMAKE_BUILD_PARALLEL_LEVEL"
ubuntu:
stage: build
tags:
- ${RUNNER_TAGS}
timeout: 3h
image: valeevgroup/${IMAGE}
variables:
TA_PYTHON : "TA_PYTHON=ON"
ENABLE_SCALAPACK : "ENABLE_SCALAPACK=OFF"
script:
- ./ci/.build-project
--build ./build
--metrics ./build/metrics.txt
${TA_CONFIG}
${TA_TARGETS}
MPIEXEC_PREFLAGS='--bind-to;none;--allow-run-as-root'
ScaLAPACK_LIBRARIES="scalapack-openmpi;lapack;blas"
#blacs_LIBRARIES=scalapack-openmpi
#scalapack_LIBRARIES=scalapack-openmpi
#lapack_LIBRARIES=lapack
artifacts:
paths:
- build/metrics.txt
- build/CMakeCache.txt
- build/CMakeFiles/CMakeOutput.log
- build/CMakeFiles/CMakeError.log
- build/CMakeFiles/CMakeConfigureLog.yaml
reports:
metrics: build/metrics.txt
parallel:
matrix:
- IMAGE : [ "ubuntu:22.04", "ubuntu:20.04" ]
CXX: [ g++ ]
BUILD_TYPE : [ "Release" ]
BLA_VENDOR : [ "BLAS_PREFERENCE_LIST=IntelMKL" ]
BLA_THREADS : [ "IntelMKL_THREAD_LAYER=tbb" ]
# ENABLE_SCALAPACK : [ "ENABLE_SCALAPACK=ON", "ENABLE_SCALAPACK=OFF" ]
TA_PYTHON : [ "TA_PYTHON=OFF" ] # needs to be fixed for MKL
RUNNER_TAGS: [ saas-linux-small-amd64 ]
- IMAGE : [ "ubuntu:22.04", "ubuntu:20.04" ]
CXX: [ g++, clang++-13 ]
BUILD_TYPE : [ "Release", "Debug" ]
ENABLE_SCALAPACK : [ "ENABLE_SCALAPACK=ON", "ENABLE_SCALAPACK=OFF" ]
RUNNER_TAGS: [ saas-linux-small-amd64 ]
- IMAGE : [ "ubuntu:22.04", "ubuntu:20.04" ]
CXX: [ g++ ]
BUILD_TYPE : [ "Release", "Debug" ]
ENABLE_CUDA : [ "ENABLE_CUDA=ON" ]
TA_TARGETS : [ "tiledarray examples-tiledarray check_serial-tiledarray" ]
RUNNER_TAGS: [ cuda ]