1 # Build, test, and install variously configured GROMACS installations.
3 # Initial build that always needs to pass before follow-up stages run
11 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-9
13 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
14 KUBERNETES_CPU_LIMIT: 8
15 KUBERNETES_CPU_REQUEST: 4
16 KUBERNETES_MEMORY_REQUEST: 8Gi
17 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=None"
18 CMAKE_MPI_OPTIONS: "-DGMX_THREAD_MPI=ON"
19 CMAKE_PRECISION_OPTIONS: "-DGMX_DOUBLE=OFF"
20 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=Debug"
21 CMAKE_GPU_OPTIONS: "-DGMX_GPU=OFF"
22 CMAKE_GMXAPI_OPTIONS: "-DGMX_PYTHON_PACKAGE=OFF"
23 COMPILER_MAJOR_VERSION: 9
24 BUILD_DIR: simple-build
26 - CMAKE=${CMAKE:-$(which cmake)}
27 - echo $CMAKE_COMPILER_SCRIPT
28 - echo $CMAKE_EXTRA_OPTIONS
29 - echo $CMAKE_SIMD_OPTIONS
30 - echo $CMAKE_GPU_OPTIONS
31 - echo $CMAKE_MPI_OPTIONS
32 - echo $CMAKE_PRECISION_OPTIONS
33 - echo $CMAKE_BUILD_TYPE_OPTIONS
34 - echo $CMAKE_GMXAPI_OPTIONS
35 - if [[ -d $BUILD_DIR ]] ; then
36 echo "Cleaning up build directory" ;
37 rm -rf $BUILD_DIR && mkdir $BUILD_DIR ;
39 echo "Preparing new build directory" ;
44 -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
45 $CMAKE_COMPILER_SCRIPT
49 $CMAKE_PRECISION_OPTIONS
50 $CMAKE_BUILD_TYPE_OPTIONS
53 -DCMAKE_INSTALL_PREFIX=../$INSTALL_DIR -DGMX_COMPILER_WARNINGS=ON
54 2>&1 | tee cmakeLog.log
55 - awk '/CMake Warning/,/^--|^$/' cmakeLog.log | tee cmakeErrors.log
56 - if [ -s cmakeErrors.log ] ; then echo "Found CMake warning while processing build"; cat cmakeErrors.log ; exit 1; fi
57 - $CMAKE --build . -- -j$KUBERNETES_CPU_LIMIT 2>&1 | tee buildLogFile.log
58 - $CMAKE --build . --target tests -- -j$KUBERNETES_CPU_LIMIT 2>&1 | tee testBuildLogFile.log
59 - awk '/warning/,/warning.*generated|^$/' buildLogFile.log testBuildLogFile.log
60 | grep -v "CMake" | tee buildErrors.log || true
61 - grep "cannot be built" buildLogFile.log testBuildLogFile.log | tee -a buildErrors.log || true
62 - $CMAKE --build . --target install 2>&1 | tee installBuildLogFile.log
63 - if [ -s buildErrors.log ] ; then echo "Found compiler warning during build"; cat buildErrors.log; exit 1; fi
64 - ctest -D ExperimentalTest --output-on-failure | tee ctestLog.log || true
65 - awk '/The following tests FAILED/,/^Errors while running CTest|^$/'
66 ctestLog.log | tee ctestErrors.log
67 - xsltproc $CI_PROJECT_DIR/scripts/CTest2JUnit.xsl Testing/`head -n 1 < Testing/TAG`/Test.xml > JUnitTestResults.xml
68 - if [ -s ctestErrors.log ] ; then
69 echo "Error during running ctest";
75 junit: $BUILD_DIR/JUnitTestResults.xml
81 # Jobs running in first pre-build stage
83 .gromacs:base:configure:
86 stage: configure-build
89 KUBERNETES_CPU_LIMIT: 1
90 KUBERNETES_CPU_REQUEST: 1
91 KUBERNETES_MEMORY_REQUEST: 2Gi
92 CMAKE_COMPILER_SCRIPT: ""
93 CMAKE_EXTRA_OPTIONS: ""
94 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=AVX2_256"
95 CMAKE_MPI_OPTIONS: "-DGMX_THREAD_MPI=ON"
96 CMAKE_PRECISION_OPTIONS: "-DGMX_DOUBLE=OFF"
97 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=Debug"
98 CMAKE_GPU_OPTIONS: "-DGMX_GPU=OFF"
100 - CMAKE=${CMAKE:-$(which cmake)}
101 - echo $CMAKE_COMPILER_SCRIPT
102 - echo $CMAKE_EXTRA_OPTIONS
103 - echo $CMAKE_SIMD_OPTIONS
104 - echo $CMAKE_GPU_OPTIONS
105 - echo $CMAKE_MPI_OPTIONS
106 - echo $CMAKE_PRECISION_OPTIONS
107 - echo $CMAKE_BUILD_TYPE_OPTIONS
108 - echo $CMAKE_GMXAPI_OPTIONS
109 - if [[ -d $BUILD_DIR ]] ; then
110 rm -rf $BUILD_DIR && mkdir $BUILD_DIR ;
112 echo "Preparing new build directory" ;
117 -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
118 $CMAKE_COMPILER_SCRIPT
122 $CMAKE_PRECISION_OPTIONS
123 $CMAKE_BUILD_TYPE_OPTIONS
125 $CMAKE_GMXAPI_OPTIONS
126 -DCMAKE_INSTALL_PREFIX=../$INSTALL_DIR -DGMX_COMPILER_WARNINGS=ON
127 2>&1 | tee cmakeLog.log
128 - awk '/CMake Warning/,/^--|^$/' cmakeLog.log | tee cmakeErrors.log
129 - if [ -s cmakeErrors.log ] ; then echo "Found CMake warning while processing build"; cat cmakeErrors.log ; exit 1; fi
136 .gromacs:base:release:configure:
139 stage: release-configure
142 KUBERNETES_CPU_LIMIT: 1
143 KUBERNETES_CPU_REQUEST: 1
144 KUBERNETES_MEMORY_REQUEST: 2Gi
145 CMAKE_COMPILER_SCRIPT: ""
146 CMAKE_EXTRA_OPTIONS: ""
147 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=AVX2_256"
148 CMAKE_MPI_OPTIONS: "-DGMX_THREAD_MPI=ON"
149 CMAKE_PRECISION_OPTIONS: "-DGMX_DOUBLE=OFF"
150 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
151 CMAKE_GPU_OPTIONS: "-DGMX_GPU=OFF"
152 CMAKE_REGRESSIONTEST_OPTIONS: "-DREGRESSIONTEST_PATH=../\\$RELEASE_REGRESSIONTESTS"
153 RELEASE_BUILD_DIR: release-builds
154 RELEASE_SOURCE: release-source-from-tarball
155 RELEASE_REGRESSIONTESTS: release-regressiontests-from-tarball
157 - CMAKE=${CMAKE:-$(which cmake)}
158 - VERSION=`cat version.json |
159 python3 -c "import json,sys; print(json.load(sys.stdin)['version'])"`
160 - if [[ $GROMACS_RELEASE != "true" ]] ; then
161 VERSION=$VERSION-dev ;
163 - SOURCENAME=gromacs-$VERSION
164 - SOURCETARBALL=$SOURCENAME.tar.gz
165 - REGTESTNAME=regressiontests-$VERSION
166 - REGTESTTARBALL=$REGTESTNAME.tar.gz
167 - echo "$SOURCETARBALL"
168 - echo "$REGTESTTARBALL"
169 - RELEASE_TARBALLS=release-tarballs
170 - rm -rf $RELEASE_TARBALLS $RELEASE_SOURCE $RELEASE_REGRESSIONTESTS && mkdir $RELEASE_TARBALLS
171 - mv $SOURCETARBALL $RELEASE_TARBALLS
172 - mv $REGTESTTARBALL $RELEASE_TARBALLS
173 - cd $RELEASE_TARBALLS
174 # We rename the source and regressiontest directories
175 # to have names for them that don't change for different versions.
176 - tar -xf $SOURCETARBALL
177 - mv $SOURCENAME ../$RELEASE_SOURCE
178 - tar -xf $REGTESTTARBALL
179 - mv $REGTESTNAME ../$RELEASE_REGRESSIONTESTS
180 - rm $SOURCETARBALL $REGTESTTARBALL
182 - echo $CMAKE_COMPILER_SCRIPT
183 - echo $CMAKE_EXTRA_OPTIONS
184 - echo $CMAKE_SIMD_OPTIONS
185 - echo $CMAKE_GPU_OPTIONS
186 - echo $CMAKE_MPI_OPTIONS
187 - echo $CMAKE_PRECISION_OPTIONS
188 - echo $CMAKE_BUILD_TYPE_OPTIONS
189 - echo $CMAKE_GMXAPI_OPTIONS
190 - if [[ -d $RELEASE_BUILD_DIR ]] ; then
191 echo "Cleaning up build directory" ;
192 rm -rf $RELEASE_BUILD_DIR && mkdir $RELEASE_BUILD_DIR ;
194 echo "Preparing new build directory" ;
195 mkdir $RELEASE_BUILD_DIR ;
197 - cd $RELEASE_BUILD_DIR
198 - cmake ../$RELEASE_SOURCE/
199 -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
200 $CMAKE_COMPILER_SCRIPT
204 $CMAKE_PRECISION_OPTIONS
205 $CMAKE_BUILD_TYPE_OPTIONS
207 $CMAKE_GMXAPI_OPTIONS
208 $CMAKE_REGRESSIONTEST_OPTIONS
209 -DCMAKE_INSTALL_PREFIX=../$INSTALL_DIR
210 2>&1 | tee cmakeLog.log
211 - awk '/CMake Warning/,/^--|^$/' cmakeLog.log | tee cmakeErrors.log
212 - if [ -s cmakeErrors.log ] ; then echo "Found CMake warning while processing build"; cat cmakeErrors.log ; exit 1; fi
218 - $RELEASE_REGRESSIONTESTS
221 # Templates for configuration stage
223 gromacs:gcc-10:configure:
225 - .gromacs:base:configure
228 - .rules:merge-and-post-merge-acceptance
229 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-10
231 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
232 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=AVX2_256"
233 CMAKE_EXTRA_OPTIONS: "-DGMX_EXTERNAL_CLFFT=ON"
234 COMPILER_MAJOR_VERSION: 10
236 gromacs:clang-8-cuda-10.0:configure:
238 - .gromacs:base:configure
241 - .rules:merge-and-post-merge-acceptance
242 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.0
244 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
245 CMAKE_SIMD_OPTIONS: "-DGMX_USE_SIMD_KERNELS=off"
246 CMAKE_EXTRA_OPTIONS: "-DGMX_CLANG_CUDA=ON"
247 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithDebInfo"
248 COMPILER_MAJOR_VERSION: 8
250 gromacs:gcc-7-cuda-10.2:configure:
252 - .gromacs:base:configure
255 - .rules:merge-and-post-merge-acceptance
256 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2
258 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
259 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=SSE4.1"
260 COMPILER_MAJOR_VERSION: 7
262 gromacs:gcc-8-cuda-11.0:configureMPI:
264 - .gromacs:base:configure
268 - .rules:merge-and-post-merge-acceptance
269 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-8-cuda-11.0
271 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
272 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=SSE4.1"
273 COMPILER_MAJOR_VERSION: 8
275 gromacs:clang-TSAN:configure:
277 - .gromacs:base:configure
279 - .rules:merge-and-post-merge-acceptance
280 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
282 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
283 COMPILER_MAJOR_VERSION: 8
284 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=TSAN"
286 gromacs:clang-8:configure:
288 - .gromacs:base:configure
290 - .rules:merge-requests
291 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.0
293 COMPILER_MAJOR_VERSION: 8
295 gromacs:clang-9-mpi:configure:
297 - .gromacs:base:configure
300 - .rules:merge-requests
301 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-9
303 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
304 COMPILER_MAJOR_VERSION: 9
305 CMAKE_PRECISION_OPTIONS: -DGMX_DOUBLE=ON
307 gromacs:clang-static-analyzer:configure:
309 - .gromacs:base:configure
311 - .rules:merge-requests
312 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
314 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
315 CMAKE_COMPILER_SCRIPT: "-DCMAKE_CXX_COMPILER=/usr/local/libexec/c++-analyzer -DCMAKE_C_COMPILER=gcc"
316 CMAKE_EXTRA_OPTIONS: "-DGMX_CLANG_ANALYZER=ON -DGMX_OPENMP=OFF -DGMX_USE_RDTSCP=OFF -DGMX_FFT_LIBRARY=fftpack -DGMX_DEVELOPER_BUILD=ON"
317 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=None"
319 gromacs:clang-ASAN:configure:
321 - .gromacs:base:configure
323 - .rules:merge-requests
324 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
326 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
327 COMPILER_MAJOR_VERSION: 8
328 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=ASAN"
330 gromacs:oneapi-2021.1-beta09-opencl:configure:
332 - .gromacs:base:configure
335 - .rules:merge-requests
336 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
338 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
339 COMPILER_MAJOR_VERSION: 2021
341 gromacs:oneapi-2021.1-beta09-sycl:configure:
343 - .gromacs:base:configure
346 - .rules:merge-and-post-merge-acceptance
347 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
349 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
350 COMPILER_MAJOR_VERSION: 2021
352 gromacs:clang-UBSAN:configure:
354 - .gromacs:base:configure
356 - .rules:merge-and-post-merge-acceptance
357 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
359 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
360 COMPILER_MAJOR_VERSION: 8
361 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=UBSAN"
363 gromacs:gcc-8-cuda-11.0:release:configure:
365 - .gromacs:base:release:configure
369 - .rules:nightly-only-for-release
370 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-8-cuda-11.0
372 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
373 COMPILER_MAJOR_VERSION: 8
374 RELEASE_BUILD_DIR: release-builds-gcc
375 CMAKE_EXTRA_OPTIONS: "-DGMX_BUILD_MDRUN_ONLY=ON"
376 CMAKE_BUILD_TYPE_OPTIONS : "-DCMAKE_BUILD_TYPE=RelWithAssert"
377 CMAKE_REGRESSIONTEST_OPTIONS: ""
380 - regressiontests:package
381 - prepare-release-version
383 gromacs:gcc-9:release:configure:
385 - .gromacs:base:release:configure
388 - .rules:nightly-only-for-release
389 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-9
391 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
392 COMPILER_MAJOR_VERSION: 9
393 RELEASE_BUILD_DIR: release-builds-gcc
394 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
397 - regressiontests:package
398 - prepare-release-version
400 gromacs:clang-9:release:configure:
402 - .gromacs:base:release:configure
405 - .rules:nightly-only-for-release
406 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-9
408 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
409 COMPILER_MAJOR_VERSION: 9
410 RELEASE_BUILD_DIR: release-builds-clang
411 CMAKE_PRECISION_OPTIONS: "-DGMX_DOUBLE=ON"
412 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
415 - regressiontests:package
416 - prepare-release-version
418 gromacs:clang-8-cuda-10.1:release:configure:
420 - .gromacs:base:release:configure
423 - .rules:nightly-only-for-release
424 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.1
426 COMPILER_MAJOR_VERSION: 8
427 RELEASE_BUILD_DIR: release-builds-clang
428 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
430 gromacs:oneapi-2021.1-beta09-opencl:release:configure:
432 - .gromacs:base:release:configure
435 - .rules:nightly-only-for-release
436 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
438 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
439 COMPILER_MAJOR_VERSION: 2021
440 RELEASE_BUILD_DIR: release-builds-oneapi
442 # Jobs running during build stage
447 - CMAKE=${CMAKE:-$(which cmake)}
449 - $CMAKE --build . -- -j$KUBERNETES_CPU_LIMIT 2>&1 | tee buildLogFile.log
450 - $CMAKE --build . --target tests -- -j$KUBERNETES_CPU_LIMIT 2>&1 | tee testBuildLogFile.log
451 - awk '/warning/,/warning.*generated|^$/' buildLogFile.log testBuildLogFile.log
452 | grep -v "CMake" | tee buildErrors.log || true
453 - grep "cannot be built" buildLogFile.log testBuildLogFile.log | tee -a buildErrors.log || true
454 - $CMAKE --build . --target install 2>&1 | tee installBuildLogFile.log
455 - if [ -s buildErrors.log ] ; then echo "Found compiler warning during build"; cat buildErrors.log; exit 1; fi
456 - for file in `find . -mindepth 1 -name "*.o" ! -type l` ; do echo $file ; rm $file ; done 2>&1 > remove-build-objects.log
464 .gromacs:static-analyzer-build:
467 - CMAKE=${CMAKE:-$(which cmake)}
469 - scan-build -o scan_html $CMAKE --build . -- -j8 2>&1 | tee buildLogFile.log
470 - awk '/warning/,/warning.*generated|^$/' buildLogFile.log
471 | grep -v "CMake" | tee buildErrors.log || true
472 - grep "cannot be built" buildLogFile.log | tee -a buildErrors.log || true
473 - if [ -s buildErrors.log ] ; then echo "Found compiler warning during build"; cat buildErrors.log; exit 1; fi
478 - $BUILD_DIR/scan_html
480 gromacs:gcc-10:build:
483 - .gromacs:base:build
484 - .before_script:default
486 - .rules:merge-and-post-merge-acceptance
487 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-10
489 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
491 - job: gromacs:gcc-10:configure
493 gromacs:clang-8-cuda-10.0:build:
496 - .gromacs:base:build
499 - .rules:merge-and-post-merge-acceptance
500 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.0
502 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
504 - job: gromacs:clang-8-cuda-10.0:configure
506 gromacs:gcc-7-cuda-10.2:build:
509 - .gromacs:base:build
510 - .before_script:default
512 - .rules:merge-and-post-merge-acceptance
513 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2
515 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
517 - job: gromacs:gcc-7-cuda-10.2:configure
519 gromacs:gcc-8-cuda-11.0:buildMPI:
522 - .gromacs:base:build
523 - .before_script:default
525 - .rules:merge-and-post-merge-acceptance
526 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-8-cuda-11.0
528 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
530 - job: gromacs:gcc-8-cuda-11.0:configureMPI
532 gromacs:clang-TSAN:build:
535 - .gromacs:base:build
538 - .rules:merge-and-post-merge-acceptance
539 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
541 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
543 - job: gromacs:clang-TSAN:configure
545 gromacs:clang-ASAN:build:
548 - .gromacs:base:build
551 - .rules:merge-requests
552 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
554 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
558 - job: gromacs:clang-ASAN:configure
560 gromacs:clang-UBSAN:build:
563 - .gromacs:base:build
566 - .rules:merge-and-post-merge-acceptance
567 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
569 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
573 - job: gromacs:clang-UBSAN:configure
575 gromacs:clang-static-analyzer:build:
578 - .gromacs:static-analyzer-build
581 - .rules:merge-requests
582 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
584 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
588 - job: gromacs:clang-static-analyzer:configure
590 gromacs:clang-8:build:
593 - .gromacs:base:build
594 - .before_script:default
596 - .rules:merge-requests
597 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.0
599 - job: gromacs:clang-8:configure
601 gromacs:oneapi-2021.1-beta09-opencl:build:
604 - .gromacs:base:build
607 - .rules:merge-requests
608 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
610 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
612 - job: gromacs:oneapi-2021.1-beta09-opencl:configure
614 gromacs:oneapi-2021.1-beta09-sycl:build:
617 - .gromacs:base:build
620 - .rules:merge-and-post-merge-acceptance
621 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
623 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
625 - job: gromacs:oneapi-2021.1-beta09-sycl:configure
627 gromacs:clang-9-mpi:build:
630 - .gromacs:base:build
631 - .before_script:default
633 - .rules:merge-requests
634 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-9
636 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
638 - job: gromacs:clang-9-mpi:configure
640 gromacs:gcc-8-cuda-11.0:release:build:
643 - .gromacs:base:build
644 - .before_script:default
646 - .rules:nightly-only-for-release
649 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
650 BUILD_DIR: release-builds-gcc
651 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-8-cuda-11.0
653 - job: gromacs:gcc-8-cuda-11.0:release:configure
655 gromacs:gcc-9:release:build:
658 - .gromacs:base:build
659 - .before_script:default
661 - .rules:nightly-only-for-release
664 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
665 BUILD_DIR: release-builds-gcc
666 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-9
668 - job: gromacs:gcc-9:release:configure
670 gromacs:clang-9:release:build:
673 - .gromacs:base:build
674 - .before_script:default
676 - .rules:nightly-only-for-release
679 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
680 BUILD_DIR: release-builds-clang
681 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-9
683 - job: gromacs:clang-9:release:configure
685 gromacs:clang-8-cuda-10.1:release:build:
688 - .gromacs:base:build
689 - .before_script:default
691 - .rules:nightly-only-for-release
694 BUILD_DIR: release-builds-clang
695 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.1
697 - job: gromacs:clang-8-cuda-10.1:release:configure
699 gromacs:oneapi-2021.1-beta09-opencl:release:build:
702 - .gromacs:base:build
706 - .rules:nightly-only-for-release
709 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
710 BUILD_DIR: release-builds-oneapi
711 COMPILER_MAJOR_VERSION: 2021
712 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
714 - job: gromacs:oneapi-2021.1-beta09-opencl:release:configure
716 # Jobs running during test stage
726 CTEST_RUN_MODE: "ExperimentalTest"
728 - CMAKE=${CMAKE:-$(which cmake)}
730 - export UBSAN_OPTIONS=halt_on_error=1:print_stacktrace=1:suppressions=$CI_PROJECT_DIR/admin/ubsan-suppressions.txt
731 # Needed to run MPI enabled code in the docker images, until we set up different users
732 - export OMPI_ALLOW_RUN_AS_ROOT=1
733 - export OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
734 - export ASAN_OPTIONS="check_initialization_order=1:detect_invalid_pointer_pairs=1:strict_init_order=true:strict_string_checks=true:detect_stack_use_after_return=true"
735 # If $GMX_TEST_REQUIRED_NUMBER_OF_DEVICES is not set and we have GPUs, set it
736 - if [ -z $GMX_TEST_REQUIRED_NUMBER_OF_DEVICES ] && [ -n $KUBERNETES_EXTENDED_RESOURCE_NAME ] ; then
737 if grep -q '/gpu$' <<< "$KUBERNETES_EXTENDED_RESOURCE_NAME"; then
738 echo "export GMX_TEST_REQUIRED_NUMBER_OF_DEVICES=\"$KUBERNETES_EXTENDED_RESOURCE_LIMIT\"";
739 export GMX_TEST_REQUIRED_NUMBER_OF_DEVICES="$KUBERNETES_EXTENDED_RESOURCE_LIMIT";
742 - if grep -qF 'nvidia.com/gpu' <<< "$KUBERNETES_EXTENDED_RESOURCE_NAME"; then
745 - ctest -D $CTEST_RUN_MODE --output-on-failure | tee ctestLog.log || true
746 - awk '/The following tests FAILED/,/^Errors while running CTest|^$/'
747 ctestLog.log | tee ctestErrors.log
748 - xsltproc $CI_PROJECT_DIR/scripts/CTest2JUnit.xsl Testing/`head -n 1 < Testing/TAG`/*.xml > JUnitTestResults.xml
749 - if [ -s ctestErrors.log ] ; then
750 echo "Error during running ctest";
756 junit: $BUILD_DIR/JUnitTestResults.xml
763 .gromacs:base:regressiontest:
767 KUBERNETES_CPU_LIMIT: 4
768 KUBERNETES_CPU_REQUEST: 4
769 KUBERNETES_MEMORY_REQUEST: 4Gi
770 REGRESSIONTEST_TOTAL_RANK_NUMBER: 4
771 REGRESSIONTEST_OMP_RANK_NUMBER: 2
772 REGRESSIONTEST_PME_RANK_NUMBER: 1
773 REGRESSIONTEST_MPI_RUN_COMMAND: ""
774 REGRESSIONTEST_DOUBLE: ""
775 REGRESSIONTEST_PARALLEL: "-nt"
781 - export LSAN_OPTIONS="suppressions=$CI_PROJECT_DIR/admin/lsan-suppressions.txt:print_suppressions=0"
782 - export ASAN_OPTIONS="check_initialization_order=1:detect_invalid_pointer_pairs=1:strict_init_order=true:strict_string_checks=true:detect_stack_use_after_return=true"
783 # Needed to run MPI enabled code in the docker images, until we set up different users
784 - export OMPI_ALLOW_RUN_AS_ROOT=1
785 - export OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
786 - tar xzf gmx-regressiontests.tar.gz
787 - source $INSTALL_DIR/bin/GMXRC
789 - perl gmxtest.pl $REGRESSIONTEST_PARALLEL $REGRESSIONTEST_TOTAL_RANK_NUMBER -ntomp $REGRESSIONTEST_OMP_RANK_NUMBER -npme $REGRESSIONTEST_PME_RANK_NUMBER $REGRESSIONTEST_DOUBLE $REGRESSIONTEST_MPI_RUN_COMMAND -xml all
792 - regressiontests/gmxtest.xml
799 - .rules:merge-requests
800 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-10
802 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
803 KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
804 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
805 LD_LIBRARY_PATH: "/opt/rocm-3.5.0/opencl/lib"
809 - job: gromacs:gcc-10:build
811 gromacs:clang-8-cuda-10.0:test:
814 - .rules:post-merge-acceptance
815 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.0
817 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
818 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
819 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
823 - job: gromacs:clang-8-cuda-10.0:build
825 gromacs:gcc-7-cuda-10.2:test:
828 - .rules:merge-requests
829 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2
831 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
832 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
833 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
837 - job: gromacs:gcc-7-cuda-10.2:build
839 gromacs:gcc-8-cuda-10.2:test-gpucommupd:
842 - .rules:post-merge-acceptance
843 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2
845 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
846 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
847 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
849 GMX_GPU_PME_PP_COMMS: 1
850 GMX_FORCE_UPDATE_DEFAULT_GPU: 1
854 - job: gromacs:gcc-7-cuda-10.2:build
856 gromacs:clang-8:test:
859 - .rules:merge-requests
860 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.0
862 - job: gromacs:clang-8:build
864 gromacs:clang-TSAN:test:
867 - .rules:post-merge-acceptance
868 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
870 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
872 - job: gromacs:clang-TSAN:build
874 gromacs:clang-ASAN:test:
878 - .rules:merge-requests
879 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
881 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
882 CTEST_RUN_MODE: "ExperimentalMemCheck"
886 - job: gromacs:clang-ASAN:build
888 gromacs:clang-UBSAN:test:
892 - .rules:post-merge-acceptance
893 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
895 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
899 - job: gromacs:clang-UBSAN:build
901 gromacs:oneapi-2021.1-beta09-opencl:test:
905 - .rules:merge-requests
906 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
908 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
910 - job: gromacs:oneapi-2021.1-beta09-opencl:build
912 gromacs:oneapi-2021.1-beta09-sycl:test:
916 - .rules:post-merge-acceptance
917 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
919 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
921 - job: gromacs:oneapi-2021.1-beta09-sycl:build
923 gromacs:clang-9-mpi:test:
926 - .rules:merge-requests
927 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-9
929 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
933 - job: gromacs:clang-9-mpi:build
935 gromacs:gcc-10:regressiontest:
937 - .gromacs:base:regressiontest
938 - .rules:post-merge-acceptance
939 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-10
941 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
942 KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
943 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
944 REGRESSIONTEST_PME_RANK_NUMBER: 0
945 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
946 REGRESSIONTEST_OMP_RANK_NUMBER: 1
947 LD_LIBRARY_PATH: "/opt/rocm-3.5.0/opencl/lib"
951 - job: gromacs:gcc-10:build
952 - job: regressiontests:prepare
954 gromacs:clang-8-cuda-10.0:regressiontest:
956 - .gromacs:base:regressiontest
957 - .rules:post-merge-acceptance
958 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.0
960 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
961 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
962 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
963 REGRESSIONTEST_PME_RANK_NUMBER: 0
964 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
965 REGRESSIONTEST_OMP_RANK_NUMBER: 1
969 - job: gromacs:clang-8-cuda-10.0:build
970 - job: regressiontests:prepare
973 gromacs:gcc-7-cuda-10.2:regressiontest:
975 - .gromacs:base:regressiontest
976 - .rules:merge-requests
977 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2
979 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
980 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
981 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
982 REGRESSIONTEST_PME_RANK_NUMBER: 0
983 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
984 REGRESSIONTEST_OMP_RANK_NUMBER: 1
988 - job: gromacs:gcc-7-cuda-10.2:build
989 - job: regressiontests:prepare
991 gromacs:gcc-7-cuda-10.2:regressiontest-gpucommupd-tMPI:
993 - .gromacs:base:regressiontest
994 - .rules:post-merge-acceptance
995 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2
997 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
998 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
999 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 2
1000 REGRESSIONTEST_PME_RANK_NUMBER: 0
1001 REGRESSIONTEST_TOTAL_RANK_NUMBER: 4
1002 REGRESSIONTEST_OMP_RANK_NUMBER: 1
1004 GMX_GPU_PME_PP_COMMS: 1
1005 GMX_FORCE_UPDATE_DEFAULT_GPU: 1
1009 - job: gromacs:gcc-7-cuda-10.2:build
1010 - job: regressiontests:prepare
1017 gromacs:gcc-7-cuda-10.2:regressiontest-upd-tMPI:
1019 - .gromacs:base:regressiontest
1020 - .rules:post-merge-acceptance
1021 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2
1023 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
1024 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 2
1025 REGRESSIONTEST_PME_RANK_NUMBER: 0
1026 REGRESSIONTEST_TOTAL_RANK_NUMBER: 4
1027 REGRESSIONTEST_OMP_RANK_NUMBER: 1
1028 GMX_FORCE_UPDATE_DEFAULT_GPU: 1
1032 - job: gromacs:gcc-7-cuda-10.2:build
1033 - job: regressiontests:prepare
1040 gromacs:gcc-8-cuda-11.0:regressiontest-gpucommupd-MPI:
1042 - .gromacs:base:regressiontest
1043 - .rules:post-merge-acceptance
1044 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-8-cuda-11.0
1046 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
1047 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
1048 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 2
1049 REGRESSIONTEST_PME_RANK_NUMBER: 0
1050 REGRESSIONTEST_TOTAL_RANK_NUMBER: 4
1051 REGRESSIONTEST_OMP_RANK_NUMBER: 1
1052 REGRESSIONTEST_PARALLEL: "-np"
1054 GMX_GPU_PME_PP_COMMS: 1
1055 GMX_FORCE_UPDATE_DEFAULT_GPU: 1
1059 - job: gromacs:gcc-8-cuda-11.0:buildMPI
1060 - job: regressiontests:prepare
1067 gromacs:clang-8:regressiontest:
1069 - .gromacs:base:regressiontest
1070 - .rules:merge-requests
1071 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.0
1075 - job: gromacs:clang-8:build
1076 - job: regressiontests:prepare
1078 gromacs:clang-TSAN:regressiontest:
1080 - .gromacs:base:regressiontest
1081 - .rules:post-merge-acceptance
1082 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
1084 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
1088 - job: gromacs:clang-TSAN:build
1089 - job: regressiontests:prepare
1091 gromacs:clang-ASAN:regressiontest:
1093 - .gromacs:base:regressiontest
1095 - .rules:merge-requests
1096 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-tsan
1098 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
1102 - job: gromacs:clang-ASAN:build
1103 - job: regressiontests:prepare
1105 gromacs:clang-9:regressiontest:
1107 - .gromacs:base:regressiontest
1108 - .rules:merge-requests
1109 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-9
1111 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
1112 REGRESSIONTEST_DOUBLE: "-double"
1113 REGRESSIONTEST_PARALLEL: "-np"
1117 - job: gromacs:clang-9-mpi:build
1118 - job: regressiontests:prepare
1120 gromacs:oneapi-2021.1-beta09-opencl:regressiontest:
1122 - .gromacs:base:regressiontest
1124 - .rules:merge-requests
1125 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
1127 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
1129 - job: gromacs:oneapi-2021.1-beta09-opencl:build
1130 - job: regressiontests:prepare
1132 gromacs:oneapi-2021.1-beta09-sycl:regressiontest:
1134 - .gromacs:base:regressiontest
1136 - .rules:post-merge-acceptance
1137 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
1139 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
1141 - job: gromacs:oneapi-2021.1-beta09-sycl:build
1142 - job: regressiontests:prepare
1144 gromacs:gcc-8-cuda-11.0:release:test:
1146 - .gromacs:base:test
1147 - .rules:nightly-only-for-release
1148 stage: release-tests
1149 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-8-cuda-11.0
1151 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
1152 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
1153 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
1154 BUILD_DIR: release-builds-gcc
1158 - job: gromacs:gcc-8-cuda-11.0:release:configure
1159 - job: gromacs:gcc-8-cuda-11.0:release:build
1161 gromacs:gcc-9:release:test:
1163 - .gromacs:base:test
1164 - .rules:nightly-only-for-release
1165 stage: release-tests
1166 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-9
1168 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
1169 BUILD_DIR: release-builds-gcc
1170 KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
1171 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
1172 LD_LIBRARY_PATH: "/opt/rocm-3.5.0/opencl/lib"
1176 - job: gromacs:gcc-9:release:configure
1177 - job: gromacs:gcc-9:release:build
1179 gromacs:clang-9:release:test:
1181 - .gromacs:base:test
1182 - .rules:nightly-only-for-release
1183 stage: release-tests
1184 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-9
1186 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
1187 BUILD_DIR: release-builds-clang
1189 - job: gromacs:clang-9:release:configure
1190 - job: gromacs:clang-9:release:build
1192 gromacs:clang-8-cuda-10.1:release:test:
1194 - .gromacs:base:test
1195 - .rules:nightly-only-for-release
1196 stage: release-tests
1197 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.1
1199 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
1200 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
1201 BUILD_DIR: release-builds-clang
1205 - job: gromacs:clang-8-cuda-10.1:release:configure
1206 - job: gromacs:clang-8-cuda-10.1:release:build
1208 gromacs:oneapi-2021.1-beta09-opencl:release:test:
1210 - .gromacs:base:test
1212 - .rules:nightly-only-for-release
1213 stage: release-tests
1214 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
1216 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
1217 BUILD_DIR: release-builds-oneapi
1219 - job: gromacs:oneapi-2021.1-beta09-opencl:release:configure
1220 - job: gromacs:oneapi-2021.1-beta09-opencl:release:build
1222 gromacs:gcc-9:release:regressiontest:
1224 - .gromacs:base:regressiontest
1225 - .rules:nightly-only-for-release
1226 stage: release-tests
1227 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-9
1229 CMAKE: /usr/local/cmake-3.13.0/bin/cmake
1230 BUILD_DIR: release-builds-gcc
1231 KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
1232 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
1233 LD_LIBRARY_PATH: "/opt/rocm-3.5.0/opencl/lib"
1237 - job: gromacs:gcc-9:release:build
1238 - job: regressiontests:package
1240 gromacs:clang-9:release:regressiontest:
1242 - .gromacs:base:regressiontest
1243 - .rules:nightly-only-for-release
1244 stage: release-tests
1245 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-9
1247 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
1248 BUILD_DIR: release-builds-clang
1249 REGRESSIONTEST_DOUBLE: "-double"
1250 REGRESSIONTEST_PARALLEL: "-np"
1254 - job: gromacs:clang-9:release:build
1255 - job: regressiontests:package
1257 gromacs:clang-8-cuda-10.1:release:regressiontest:
1259 - .gromacs:base:regressiontest
1260 - .rules:nightly-only-for-release
1261 stage: release-tests
1262 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-llvm-8-cuda-10.1
1264 BUILD_DIR: release-builds-clang
1265 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
1266 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
1267 REGRESSIONTEST_PME_RANK_NUMBER: 0
1268 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
1269 REGRESSIONTEST_OMP_RANK_NUMBER: 1
1273 - job: gromacs:clang-8-cuda-10.1:release:build
1274 - job: regressiontests:package
1276 gromacs:oneapi-2021.1-beta09-opencl:release:regressiontest:
1278 - .gromacs:base:regressiontest
1280 - .rules:nightly-only-for-release
1281 stage: release-tests
1282 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-oneapi-2021.1-beta09
1284 CMAKE: /usr/local/cmake-3.17.2/bin/cmake
1285 BUILD_DIR: release-builds-oneapi
1286 REGRESSIONTEST_PME_RANK_NUMBER: 0
1287 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
1288 REGRESSIONTEST_OMP_RANK_NUMBER: 1
1290 - job: gromacs:oneapi-2021.1-beta09-opencl:release:build
1291 - job: regressiontests:package