.gitlab-ci.yml 261 KB
Newer Older
1
2
3
4
5
stages:
  - test
  - coverage
  - deploy

6
before_script:
Andreas Marek's avatar
Andreas Marek committed
7
  - module purge
8
  - export LANG=C
9
  - ulimit -s unlimited
10
  - if [ "$HOST" != "hydra03" -a "$HOST" != "hydra04" -a "$HOST" != "hydra05"  -a "$HOST" != "hydra06"  -a "$HOST" != "hydra07"  -a "$HOST" != "knl1" -a "$HOST" != "knl2" -a "$HOST" != "knl3" -a "$HOST" != "knl4" -a "$HOST" != "gp02" -a "$HOST" != "draco01" -a "$HOST" != "draco02" -a "$HOST" != "draco03" -a "$HOST" != "draco04"  ] ; then module load impi/5.1.3 intel/16.0 gcc/5.4 mkl/11.3 autotools pkg-config ; fi
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
11
  - if [ "$HOST" = "knl1" -o "$HOST" = "knl2" -o "$HOST" = "knl3" -o "$HOST" = "knl4" ] ; then module load impi/5.1.3 intel/17.0 gcc/6.3 mkl/2017 pkg-config ; fi
12
  - if [ "$HOST" = "gp02" ] ; then module load impi/5.1.3 intel/17.0 gcc/6.3 mkl/2017 pkg-config ; fi
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
13
  - if [ "$HOST" = "draco01" -o "$HOST" = "draco02" -o "$HOST" = "draco03" -o "$HOST" = "draco04" ] ; then module load impi/2017.3 intel/17.0 gcc/6.3 mkl/2017 pkg-config ; fi
14
  - module list
15
  - source .ci-env-vars
16
17


18
19
20
21
22
23
# For some reason sometimes not-writable files remain, which cause trouble the
# next time a runner tries to clean-up
after_script:
  - chmod u+w -R .


Andreas Marek's avatar
Andreas Marek committed
24
25
26
27
28
29
30
31
########################################################################################
#
# jobs for intel/gfortran double/single precision mpi and no openmp no cuda SSE/AVX
# - all runners on "cpu"
# - including coverage runs
#
########################################################################################
# intel double precision mpi noomp AVX/SSE
32
intel-double-precision-mpi-noomp-jobs:
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
33
34
  tags:
    - cpu
35
36
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
37
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -axAVX" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2
38
    - make -j 8
39
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
40
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
41
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
Andreas Marek's avatar
Andreas Marek committed
42

Andreas Marek's avatar
Andreas Marek committed
43
44
45
46
47
48
49
50
51
# intel double precision mpi noomp AVX/SSE large
intel-double-precision-mpi-noomp-large-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -axAVX" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
52
    - make check TASKS=2 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
53
54
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

Andreas Marek's avatar
Andreas Marek committed
55
# intel single precision mpi noomp AVX/SSE
56
intel-single-precision-mpi-noomp-jobs:
57
58
  tags:
    - cpu
Andreas Marek's avatar
Andreas Marek committed
59
60
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
61
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_NO_OMP" --enable-single-precision --disable-avx2
Andreas Marek's avatar
Andreas Marek committed
62
63
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
64
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
65
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
Andreas Marek's avatar
Andreas Marek committed
66

Andreas Marek's avatar
Andreas Marek committed
67
# gfortran double precision mpi noomp AVX/SSE
68
gfortran-double-precision-mpi-noomp-avx-jobs:
69
  tags:
Andreas Marek's avatar
Andreas Marek committed
70
    - cpu
71
72
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
73
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2 FC=mpif90
74
75
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
76
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
77
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
78

Andreas Marek's avatar
Andreas Marek committed
79
80
# gfortran single precision mpi noomp AVX/SSE
gfortran-single-precision-mpi-noomp-jobs:
81
  tags:
Andreas Marek's avatar
Andreas Marek committed
82
    - cpu
83
84
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
85
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2 FC=mpif90 --enable-single-precision
86
87
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
88
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
89
90
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

Andreas Marek's avatar
Andreas Marek committed
91
92
93
94
95
96
97
98
99
# gfortran single precision mpi noomp AVX/SSE no legacy
gfortran-single-precision-mpi-noomp-no-legacy-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2 FC=mpif90 --enable-single-precision --disable-legacy
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
100
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
101
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
Andreas Marek's avatar
Andreas Marek committed
102
103
104
105
106
107
108
109
110
# gfortran single precision mpi noomp AVX/SSE qr
gfortran-single-precision-mpi-noomp-qr-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2 FC=mpif90 --enable-single-precision
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
111
    - make check TASKS=2 TEST_FLAGS='1500 500 64' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
112
113
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

Andreas Marek's avatar
Andreas Marek committed
114
115
# gfortran double precision mpi noomp AVX/SSE, no assumed size
gfortran-double-precision-mpi-noomp-no-assumed-size-jobs:
116
  tags:
Andreas Marek's avatar
Andreas Marek committed
117
    - cpu
118
119
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
120
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2 FC=mpif90  --disable-assumed-size
121
122
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
123
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
124
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
125

Andreas Marek's avatar
Andreas Marek committed
126
127
# gfortran single precision mpi noomp AVX/SSE, no assumed size
gfortran-single-precision-mpi-noomp-no-assumed-size-jobs:
128
  tags:
Andreas Marek's avatar
Andreas Marek committed
129
    - cpu
130
131
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
132
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2 FC=mpif90 --enable-single-precision --disable-assumed-size
133
134
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
135
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
136
137
138
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;


Andreas Marek's avatar
Andreas Marek committed
139
# gfortran double precision mpi noomp AVX/SSE COVERAGE
140
gfortran-double-precision-mpi-noomp-coverage-avx-jobs:
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
141
  tags:
Andreas Marek's avatar
Andreas Marek committed
142
    - coverage
143
144
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
145
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx" FCFLAGS="--coverage -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2 FC=mpif90
146
147
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
148
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
149
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
Andreas Marek's avatar
Andreas Marek committed
150
151
152
153
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data
154

Andreas Marek's avatar
Andreas Marek committed
155
# gfortran single precision mpi noomp AVX/SSE COVERAGE
156
gfortran-single-precision-mpi-noomp-coverage-avx-jobs:
157
  tags:
Andreas Marek's avatar
Andreas Marek committed
158
    - coverage
159
160
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
161
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx" FCFLAGS="--coverage -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2 FC=mpif90 --enable-single-precision
162
163
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
164
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
165
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
Andreas Marek's avatar
Andreas Marek committed
166
167
168
169
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data
170

Andreas Marek's avatar
Andreas Marek committed
171
# gfortran double precision mpi noomp AVX/SSE, no assumed size COVERAGE
172
gfortran-double-precision-mpi-noomp-no-assumed-size-coverage-avx-jobs:
Lorenz Huedepohl's avatar
Lorenz Huedepohl committed
173
  tags:
Andreas Marek's avatar
Andreas Marek committed
174
    - coverage
175
176
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
177
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx" FCFLAGS="--coverage -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2 FC=mpif90 --disable-assumed-size
178
179
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
180
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
181
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
Andreas Marek's avatar
Andreas Marek committed
182
183
184
185
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data
186

Andreas Marek's avatar
Andreas Marek committed
187
# gfortran single precision mpi noomp AVX/SSE no assumed size COVERAGE
188
gfortran-singe-precision-mpi-noomp-no-assumed-size-coverage-avx-jobs:
189
  tags:
Andreas Marek's avatar
Andreas Marek committed
190
    - coverage
191
192
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
193
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx" FCFLAGS="--coverage -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" --disable-avx2 FC=mpif90 --enable-single-precision --disable-assumed-size
194
195
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
196
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
197
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
Andreas Marek's avatar
Andreas Marek committed
198
199
200
201
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data
202

203

Andreas Marek's avatar
Andreas Marek committed
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
########################################################################################
#
# jobs for intel/gfortran double/single precision mpi and openmp no cuda SSE/AVX
# - all runners on "cpu"
# - including coverage runs
#
########################################################################################
# intel double precision mpi omp AVX/SSE
intel-double-precision-mpi-omp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -axAVX" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 --enable-openmp
    - make -j 8
    - export OMP_NUM_THREADS=2
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
221
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
222
223
224
225
226
227
228
229
230
231
232
233
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# intel double precision mpi omp AVX/SSE large
intel-double-precision-mpi-omp-large-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -axAVX" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 --enable-openmp
    - make -j 8
    - export OMP_NUM_THREADS=2
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
234
    - make check TASKS=2 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
235
236
237
238
239
240
241
242
243
244
245
246
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# intel single precision mpi omp AVX/SSE
intel-single-precision-mpi-omp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_OMP" --enable-single-precision --disable-avx2 --enable-openmp
    - make -j 8
    - export OMP_NUM_THREADS=2
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
247
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
248
249
250
251
252
253
254
255
256
257
258
259
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran double precision mpi omp AVX/SSE
gfortran-double-precision-mpi-omp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90 --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=2
260
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
261
262
263
264
265
266
267
268
269
270
271
272
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision mpi omp AVX/SSE
gfortran-single-precision-mpi-omp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90 --enable-single-precision --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
273
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
274
275
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

276
277
# gfortran double precision mpi omp AVX/SSE debug
gfortran-double-precision-mpi-omp-debug-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
278
279
280
281
  tags:
    - cpu
  script:
    - ./autogen.sh
282
    - ./configure --enable-option-checking=fatal CFLAGS="-g -O3 -mavx" FCFLAGS="-g -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90 --enable-openmp
Andreas Marek's avatar
Andreas Marek committed
283
284
285
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
286
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
287
288
289
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision mpi omp AVX/SSE debug
290
gfortran-single-precision-mpi-omp-debug-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
291
292
293
294
295
296
297
298
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-g -O3 -mavx" FCFLAGS="-g -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90 --enable-single-precision --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
299
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
300
301
302
303
304
305
306
307
308
309
310
311
312
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;


# gfortran double precision mpi noomp AVX/SSE, no assumed size
gfortran-double-precision-mpi-omp-no-assumed-size-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90  --disable-assumed-size --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
313
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
314
315
316
317
318
319
320
321
322
323
324
325
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran double precision mpi noomp AVX/SSE, no assumed size debug
gfortran-double-precision-mpi-omp-no-assumed-size-debug-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-g -O3 -mavx" FCFLAGS="-g -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90  --disable-assumed-size --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
326
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
327
328
329
330
331
332
333
334
335
336
337
338
339
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision mpi omp AVX/SSE, no assumed size
gfortran-single-precision-mpi-omp-no-assumed-size-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O2 -mavx" FCFLAGS="-O2 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90 --enable-single-precision --disable-assumed-size --enable-openmp

    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
340
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
341
342
343
344
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;


# gfortran double precision mpi omp AVX/SSE COVERAGE
345
gfortran-double-precision-mpi-omp-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
346
347
348
349
350
351
352
353
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O1 -mavx" FCFLAGS="--coverage -O1 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90 --enable-openmp
    - make -j 8
    - export OMP_NUM_THREADS=1
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
354
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
355
356
357
358
359
360
361
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data

# gfortran single precision mpi omp AVX/SSE COVERAGE
362
gfortran-single-precision-mpi-omp-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
363
364
365
366
367
368
369
370
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O0 -mavx" FCFLAGS="--coverage -O0 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90 --enable-single-precision --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
371
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
372
373
374
375
376
377
378
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data

# gfortran double precision mpi omp AVX/SSE, no assumed size COVERAGE
379
gfortran-double-precision-mpi-omp-no-assumed-size-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
380
381
382
383
384
385
386
387
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O0 -mavx" FCFLAGS="--coverage -O0 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90 --disable-assumed-size --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
388
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
389
390
391
392
393
394
395
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data

# gfortran single precision mpi omp AVX/SSE no assumed size COVERAGE
396
gfortran-single-precision-mpi-omp-no-assumed-size-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
397
398
399
400
401
402
403
404
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O1 -mavx" FCFLAGS="--coverage -O1 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90 --enable-single-precision --disable-assumed-size --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
405
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data


########################################################################################
#
# jobs for intel/gfortran double/single precision nompi and no openmp no cuda SSE/AVX
# - all runners on "cpu"
# - including coverage runs
#
########################################################################################
# intel double precision nompi noomp AVX/SSE
intel-double-precision-nompi-noomp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure FC=ifort --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -axAVX" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --disable-avx2 --with-mpi=0
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
429
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
430
431
432
433
434
435
436
437
438
439
440
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# intel double precision nompi noomp AVX/SSE large
intel-double-precision-nompi-noomp-large-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure FC=ifort --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -axAVX" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --disable-avx2 --with-mpi=0
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
441
    - make check TASKS=2 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
442
443
444
445
446
447
448
449
450
451
452
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# intel single precision nompi noomp AVX/SSE
intel-single-precision-nompi-noomp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure FC=ifort --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --enable-single-precision --disable-avx2 --with-mpi=0
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
453
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
454
455
456
457
458
459
460
461
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran double precision nompi noomp AVX/SSE
gfortran-double-precision-nompi-noomp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
462
    - ./configure FC=gfortran --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --disable-avx2 --with-mpi=0 --disable-mpi-module
Andreas Marek's avatar
Andreas Marek committed
463
464
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
465
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
466
467
468
469
470
471
472
473
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision nompi noomp AVX/SSE
gfortran-single-precision-nompi-noomp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
474
    - ./configure FC=gfortran --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --disable-avx2 --enable-single-precision --with-mpi=0 --disable-mpi-module
Andreas Marek's avatar
Andreas Marek committed
475
476
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
477
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
478
479
480
481
482
483
484
485
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran double precision nompi noomp AVX/SSE, no assumed size
gfortran-double-precision-nompi-noomp-no-assumed-size-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
486
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --disable-avx2 FC=gfortran --disable-assumed-size  --with-mpi=0 --disable-mpi-module
Andreas Marek's avatar
Andreas Marek committed
487
488
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
489
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
490
491
492
493
494
495
496
497
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision nompi noomp AVX/SSE, no assumed size
gfortran-single-precision-nompi-noomp-no-assumed-size-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
498
    - ./configure FC=gfortran --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --disable-avx2 --enable-single-precision --disable-assumed-size  --with-mpi=0 --disable-mpi-module
Andreas Marek's avatar
Andreas Marek committed
499
500
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
501
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
502
503
504
505
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;


# gfortran double precision nompi noomp AVX/SSE COVERAGE
506
gfortran-double-precision-nompi-noomp-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
507
508
509
510
511
512
513
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx" FCFLAGS="--coverage -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --disable-avx2 FC=gfortran --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
514
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
515
516
517
518
519
520
521
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data

# gfortran single precision nompi noomp AVX/SSE COVERAGE
522
gfortran-single-precision-nompi-noomp-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
523
524
525
526
527
528
529
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx" FCFLAGS="--coverage -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --disable-avx2 FC=gfortran --enable-single-precision --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
530
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
531
532
533
534
535
536
537
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data

# gfortran double precision nompi noomp AVX/SSE, no assumed size COVERAGE
538
gfortran-double-precision-nompi-noomp-no-assumed-size-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
539
540
541
542
543
544
545
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx" FCFLAGS="--coverage -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --disable-avx2 FC=gfortran --disable-assumed-size  --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
546
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
547
548
549
550
551
552
553
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data

# gfortran single precision nompi noomp AVX/SSE no assumed size COVERAGE
554
gfortran-single-precision-nompi-noomp-no-assumed-size-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
555
556
557
558
559
560
561
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx" FCFLAGS="--coverage -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_NO_OMP" --disable-avx2 FC=gfortran --enable-single-precision --disable-assumed-size --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
562
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data


########################################################################################
#
# jobs for intel/gfortran double/single precision nompi and openmp no cuda SSE/AVX
# - all runners on "cpu"
# - including coverage runs
#
########################################################################################
# intel double precision nompi omp AVX/SSE
intel-double-precision-nompi-omp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure FC=ifort --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -axAVX" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 --enable-openmp --with-mpi=0
    - make -j 8
    - export OMP_NUM_THREADS=2
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
587
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
588
589
590
591
592
593
594
595
596
597
598
599
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# intel double precision nompi omp AVX/SSE large
intel-double-precision-nompi-omp-large-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure FC=ifort --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -axAVX" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 --enable-openmp --with-mpi=0
    - make -j 8
    - export OMP_NUM_THREADS=2
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
600
    - make check TASKS=2 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
601
602
603
604
605
606
607
608
609
610
611
612
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# intel single precision nompi omp AVX/SSE
intel-single-precision-nompi-omp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure FC=ifort --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_NO_MPI_OMP" --enable-single-precision --disable-avx2 --enable-openmp  --with-mpi=0
    - make -j 8
    - export OMP_NUM_THREADS=2
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
613
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
614
615
616
617
618
619
620
621
622
623
624
625
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran double precision nompi omp AVX/SSE
gfortran-double-precision-nompi-omp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran --enable-openmp --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=2
626
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
627
628
629
630
631
632
633
634
635
636
637
638
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision nompi omp AVX/SSE
gfortran-single-precision-nompi-omp-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran --enable-single-precision --enable-openmp --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
639
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
640
641
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

642
643
# gfortran double precision nompi omp AVX/SSE debug
gfortran-double-precision-nompi-omp-debug-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
644
645
646
647
  tags:
    - cpu
  script:
    - ./autogen.sh
648
    - ./configure --enable-option-checking=fatal CFLAGS="-g -O3 -mavx" FCFLAGS="-g -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran --enable-openmp --with-mpi=0 --disable-mpi-module
Andreas Marek's avatar
Andreas Marek committed
649
650
651
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
652
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
653
654
655
656
657
658
659
660
661
662
663
664
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision nompi omp AVX/SSE debug
gfortran-single-precision-nompi-omp-debug-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-g -O3 -mavx" FCFLAGS="-g -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran --enable-single-precision --enable-openmp --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
665
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
666
667
668
669
670
671
672
673
674
675
676
677
678
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;


# gfortran double precision nompi noomp AVX/SSE, no assumed size
gfortran-double-precision-nompi-omp-no-assumed-size-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx" FCFLAGS="-O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran  --disable-assumed-size --enable-openmp --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
679
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
680
681
682
683
684
685
686
687
688
689
690
691
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran double precision nompi noomp AVX/SSE, no assumed size debug
gfortran-double-precision-nompi-omp-no-assumed-size-debug-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-g -O3 -mavx" FCFLAGS="-g -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran  --disable-assumed-size --enable-openmp --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
692
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
693
694
695
696
697
698
699
700
701
702
703
704
705
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision nompi omp AVX/SSE, no assumed size
gfortran-single-precision-nompi-omp-no-assumed-size-jobs:
  tags:
    - cpu
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O2 -mavx" FCFLAGS="-O2 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran --enable-single-precision --disable-assumed-size --enable-openmp --with-mpi=0 --disable-mpi-module

    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
706
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
707
708
709
710
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;


# gfortran double precision nompi omp AVX/SSE COVERAGE
711
gfortran-double-precision-nompi-omp-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
712
713
714
715
716
717
718
719
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O1 -mavx" FCFLAGS="--coverage -O1 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran --enable-openmp --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export OMP_NUM_THREADS=1
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
720
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
721
722
723
724
725
726
727
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data

# gfortran single precision nompi omp AVX/SSE COVERAGE
728
gfortran-single-precision-nompi-omp-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
729
730
731
732
733
734
735
736
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O0 -mavx" FCFLAGS="--coverage -O0 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran --enable-single-precision --enable-openmp --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
737
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
738
739
740
741
742
743
744
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data

# gfortran double precision nompi omp AVX/SSE, no assumed size COVERAGE
745
gfortran-double-precision-nompi-omp-no-assumed-size-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
746
747
748
749
750
751
752
753
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O0 -mavx" FCFLAGS="--coverage -O0 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran --disable-assumed-size --enable-openmp --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
754
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
755
756
757
758
759
760
761
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data

# gfortran single precision nompi omp AVX/SSE no assumed size COVERAGE
762
gfortran-single-precision-nompi-omp-no-assumed-size-coverage-avx-jobs:
Andreas Marek's avatar
Andreas Marek committed
763
764
765
766
767
768
769
770
  tags:
    - coverage
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O1 -mavx" FCFLAGS="--coverage -O1 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_NO_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_NO_MPI_OMP" --disable-avx2 FC=gfortran --enable-single-precision --disable-assumed-size --enable-openmp --with-mpi=0 --disable-mpi-module
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
771
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
    - ./ci_coverage_collect
  artifacts:
    paths:
      - coverage_data



########################################################################################
#
# jobs for intel/gfortran double/single precision mpi and no openmp no cuda AVX2
# - all runners on "cpu"
# - including coverage runs
#
########################################################################################
# intel double precision mpi noomp AVX2
intel-double-precision-mpi-noomp-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -march=haswell -mavx2 -mfma" FCFLAGS="-O3 -axcore-AVX2" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_NO_OMP"
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
797
    - make check TASKS=2 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
798
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
799
    - make check TASKS=3 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
800
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
801
    - make check TASKS=4 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
802
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
803
    - make check TASKS=5 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
804
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
805
    - make check TASKS=6 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
806
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
807
    - make check TASKS=7 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
808
809
810
811
812
813
814
815
816
817
818
819
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# intel double precision mpi noomp AVX2 large
intel-double-precision-mpi-noomp-large-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -march=haswell -mavx2 -mfma" FCFLAGS="-O3 -xcore-AVX2" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_NO_OMP"
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
820
    - make check TASKS=8 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
821
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
822
    - make check TASKS=10 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
823
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
824
    - make check TASKS=11 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
825
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
826
    - make check TASKS=12 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
827
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
828
    - make check TASKS=13 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
829
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
830
    - make check TASKS=14 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
831
832
833
834
835
836
837
838
839
840
841
842
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# intel single precision mpi noomp AVX2
intel-single-precision-mpi-noomp-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -march=haswell -mavx2 -mfma" FCFLAGS="-O3 -xcore-AVX2" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_NO_OMP" --enable-single-precision
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
843
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
844
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
845
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
846
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
847
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
848
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
849
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
850
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
851
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
852
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
853
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
854
855
856
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran double precision mpi noomp AVX2
857
gfortran-double-precision-mpi-noomp-avx2-jobs:
Andreas Marek's avatar
Andreas Marek committed
858
859
860
861
862
863
864
865
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -march=haswell -mavx2 -mfma" FCFLAGS="-O3 -march=haswell -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" FC=mpif90
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
866
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
867
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
868
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
869
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
870
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
871
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
872
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
873
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
874
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
875
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
876
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
877
878
879
880
881
882
883
884
885
886
887
888
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision mpi noomp AVX2
gfortran-single-precision-mpi-noomp-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -march=haswell -mavx2 -mfma" FCFLAGS="-O3 -march=haswell -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" FC=mpif90 --enable-single-precision
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
889
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
890
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
891
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
892
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
893
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
894
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
895
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
896
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
897
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
898
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
899
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
900
901
902
903
904
905
906
907
908
909
910
911
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran double precision mpi noomp AVX2, no assumed size
gfortran-double-precision-mpi-noomp-no-assumed-size-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -march=haswell -mavx2 -mfma" FCFLAGS="-O3 -march=haswell -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" FC=mpif90  --disable-assumed-size
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
912
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
913
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
914
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
915
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
916
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
917
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
918
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
919
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
920
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
921
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
922
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
923
924
925
926
927
928
929
930
931
932
933
934
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision mpi noomp AVX2, no assumed size
gfortran-single-precision-mpi-noomp-no-assumed-size-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -march=haswell -mavx2 -mfma" FCFLAGS="-O3 -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" FC=mpif90 --enable-single-precision --disable-assumed-size
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
935
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
936
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
937
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
938
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
939
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
940
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
941
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
942
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
943
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
944
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
945
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
946
947
948
949
950
951
952
953
954
955
956
957
958
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

      # no coverage on system with tag AVX2
      #
      ## gfortran double precision mpi noomp AVX2 COVERAGE
      #gfortran-double-precision-mpi-noomp-coverage-avx2-jobs:
      #  tags:
      #    - avx2
      #  script:
      #    - ./autogen.sh
      #    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx2 -mfma" FCFLAGS="--coverage -O3 -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" FC=mpif90
      #    - make -j 8
      #    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
959
      #    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
      #    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
      #    - ./ci_coverage_collect
      #  artifacts:
      #    paths:
      #      - coverage_data
      #
      ## gfortran single precision mpi noomp AVX2 COVERAGE
      #gfortran-double-precision-mpi-noomp-coverage-avx2-jobs:
      #  tags:
      #    - avx2
      #  script:
      #    - ./autogen.sh
      #    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx2 -mfma" FCFLAGS="--coverage -O3 -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" FC=mpif90 --enable-single-precision
      #    - make -j 8
      #    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
975
      #    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
      #    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
      #    - ./ci_coverage_collect
      #  artifacts:
      #    paths:
      #      - coverage_data
      #
      ## gfortran double precision mpi noomp AVX2, no assumed size COVERAGE
      #gfortran-double-precision-mpi-noomp-no-assumed-size-coverage-avx2-jobs:
      #  tags:
      #    - avx2
      #  script:
      #    - ./autogen.sh
      #    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx2 -mfma" FCFLAGS="--coverage -O3 -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" FC=mpif90 --disable-assumed-size
      #    - make -j 8
      #    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
991
      #    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
      #    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
      #    - ./ci_coverage_collect
      #  artifacts:
      #    paths:
      #      - coverage_data
      #
      ## gfortran single precision mpi noomp AVX2 no assumed size COVERAGE
      #gfortran-double-precision-mpi-noomp-no-assumed-size-coverage-avx2-jobs:
      #  tags:
      #    - avx2
      #  script:
      #    - ./autogen.sh
      #    - ./configure --enable-option-checking=fatal CFLAGS="--coverage -O3 -mavx2 -mfma" FCFLAGS="--coverage -O3 -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_NO_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_NO_OMP" FC=mpif90 --enable-single-precision --disable-assumed-size
      #    - make -j 8
      #    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
1007
      #    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
      #    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;
      #    - ./ci_coverage_collect
      #  artifacts:
      #    paths:
      #      - coverage_data



########################################################################################
#
# jobs for intel/gfortran double/single precision mpi and openmp no cuda AVX2
# - all runners on "cpu"
# - including coverage runs
#
########################################################################################
# intel double precision mpi omp AVX2
intel-double-precision-mpi-omp-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-march=haswell -O3 -mavx2" FCFLAGS="-O3 -xCORE-AVX2" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_OMP" --enable-openmp
    - make -j 8
    - export OMP_NUM_THREADS=2
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
1034
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1035
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
1036
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1037
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1038
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1039
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
1040
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1041
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1042
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1043
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
1044
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# intel double precision mpi omp AVX2 large
intel-double-precision-mpi-omp-large-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -mavx2 -mfma" FCFLAGS="-O3 -axAVX2" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_OMP" --enable-openmp
    - make -j 8
    - export OMP_NUM_THREADS=2
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
1057
    - make check TASKS=2 TEST_FLAGS='1500 500 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# intel single precision mpi omp AVX2
intel-single-precision-mpi-omp-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -march=haswell -mavx2 -mfma" FCFLAGS="-O3 -xCORE-AVX2" SCALAPACK_LDFLAGS="$MKL_INTEL_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_INTEL_SCALAPACK_FCFLAGS_MPI_OMP" --enable-single-precision --enable-openmp
    - make -j 8
    - export OMP_NUM_THREADS=2
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
1071
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1072
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
1073
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1074
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1075
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1076
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
1077
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1078
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1079
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1080
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
1081
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran double precision mpi omp AVX2
gfortran-double-precision-mpi-omp-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-march=haswell -O3 -mavx2 -mfma" FCFLAGS="-O3 -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" FC=mpif90 --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=2
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
1095
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1096
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
1097
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1098
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1099
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1100
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
1101
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1102
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1103
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1104
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
1105
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision mpi omp AVX2
gfortran-single-precision-mpi-omp-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-march=haswell -O3 -mavx2 -mfma" FCFLAGS="-march=haswell -O3 -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" FC=mpif90 --enable-single-precision --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=2
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
1119
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1120
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
1121
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1122
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1123
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1124
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
1125
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1126
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1127
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1128
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
1129
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1130
1131
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

1132
1133
# gfortran double precision mpi omp AVX2 debug
gfortran-double-precision-mpi-omp-debug-avx2-jobs:
Andreas Marek's avatar
Andreas Marek committed
1134
1135
1136
1137
  tags:
    - avx2
  script:
    - ./autogen.sh
1138
    - ./configure --enable-option-checking=fatal CFLAGS="-g -march=haswell -O3 -mavx" FCFLAGS="-march=haswell -g -O3 -mavx" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" --disable-avx2 FC=mpif90 --enable-openmp
Andreas Marek's avatar
Andreas Marek committed
1139
1140
1141
1142
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
1143
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1144
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
1145
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1146
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1147
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1148
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
1149
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1150
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1151
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1152
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
1153
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran single precision mpi omp AVX2 debug
gfortran-single-precision-mpi-omp-debug-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-march=haswell -g -O3 -mavx2 -mfma" FCFLAGS="-g -O3 -march=haswell  -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" FC=mpif90 --enable-single-precision --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
1167
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1168
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
1169
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1170
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1171
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1172
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
1173
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1174
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1175
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1176
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
1177
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1178
1179
1180
1181
1182
1183
1184
1185
1186
    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;


# gfortran double precision mpi noomp AVX2, no assumed size
gfortran-double-precision-mpi-omp-no-assumed-size-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
Andreas Marek's avatar
Andreas Marek committed
1187
    - ./configure --enable-option-checking=fatal CFLAGS="-O3 -march=haswell -mavx2 -mfma" FCFLAGS="-march=haswell -O3 -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" FC=mpif90  --disable-assumed-size --enable-openmp
Andreas Marek's avatar
Andreas Marek committed
1188
1189
1190
1191
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
1192
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1193
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
1194
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1195
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1196
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1197
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
1198
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1199
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1200
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1201
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK6
1202
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216

    - grep -i "Expected %stop" test-suite.log && exit 1 || true ;

# gfortran double precision mpi noomp AVX2, no assumed size debug
gfortran-double-precision-mpi-omp-no-assumed-size-debug-avx2-jobs:
  tags:
    - avx2
  script:
    - ./autogen.sh
    - ./configure --enable-option-checking=fatal CFLAGS="-g -O3 -march=haswell -mavx2 -mfma" FCFLAGS="-g -march=haswell -O3 -mavx2 -mfma" SCALAPACK_LDFLAGS="$MKL_GFORTRAN_SCALAPACK_LDFLAGS_MPI_OMP" SCALAPACK_FCFLAGS="$MKL_GFORTRAN_SCALAPACK_FCFLAGS_MPI_OMP" FC=mpif90  --disable-assumed-size --enable-openmp
    - make -j 8
    - export LD_LIBRARY_PATH=$MKL_HOME/lib/intel64:$LD_LIBRARY_PATH
    - export OMP_NUM_THREADS=1
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK1
1217
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1218
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK2
1219
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1220
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
1221
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1222
    - export ELPA_FORCE_real_kernel=ELPA_2STAGE_REAL_AVX2_BLOCK4
1223
    - make check TASKS=2 TEST_FLAGS='150 50 16' || { cat test-suite.log; exit 1; }
Andreas Marek's avatar
Andreas Marek committed
1224
    - export ELPA_FORCE_complex_kernel=ELPA_2STAGE_COMPLEX_AVX2_BLOCK2
Andreas Marek's avatar