1 # Build, test, and install variously configured GROMACS installations.
3 # Initial build that always needs to pass before follow-up stages run
11 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
13 KUBERNETES_CPU_LIMIT: 8
14 KUBERNETES_CPU_REQUEST: 4
15 KUBERNETES_MEMORY_REQUEST: 8Gi
16 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=None"
17 CMAKE_MPI_OPTIONS: "-DGMX_THREAD_MPI=ON"
18 CMAKE_PRECISION_OPTIONS: "-DGMX_DOUBLE=OFF"
19 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=Debug"
20 CMAKE_GPU_OPTIONS: "-DGMX_GPU=OFF"
21 CMAKE_GMXAPI_OPTIONS: "-DGMX_PYTHON_PACKAGE=OFF"
22 COMPILER_MAJOR_VERSION: 9
23 BUILD_DIR: simple-build
25 - echo $CMAKE_COMPILER_SCRIPT
26 - echo $CMAKE_EXTRA_OPTIONS
27 - echo $CMAKE_SIMD_OPTIONS
28 - echo $CMAKE_GPU_OPTIONS
29 - echo $CMAKE_MPI_OPTIONS
30 - echo $CMAKE_PRECISION_OPTIONS
31 - echo $CMAKE_BUILD_TYPE_OPTIONS
32 - echo $CMAKE_GMXAPI_OPTIONS
33 - if [[ -d $BUILD_DIR ]] ; then
34 echo "Cleaning up build directory" ;
35 rm -rf $BUILD_DIR && mkdir $BUILD_DIR ;
37 echo "Preparing new build directory" ;
42 -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
43 $CMAKE_COMPILER_SCRIPT
47 $CMAKE_PRECISION_OPTIONS
48 $CMAKE_BUILD_TYPE_OPTIONS
51 -DCMAKE_INSTALL_PREFIX=../$INSTALL_DIR -DGMX_COMPILER_WARNINGS=ON
52 2>&1 | tee cmakeLog.log
53 - awk '/CMake Warning/,/^--|^$/' cmakeLog.log | tee cmakeErrors.log
54 - if [ -s cmakeErrors.log ] ; then echo "Found CMake warning while processing build"; cat cmakeErrors.log ; exit 1; fi
55 - cmake --build . -- -j$KUBERNETES_CPU_LIMIT 2>&1 | tee buildLogFile.log
56 - cmake --build . --target tests -- -j$KUBERNETES_CPU_LIMIT 2>&1 | tee testBuildLogFile.log
57 - awk '/warning/,/warning.*generated|^$/' buildLogFile.log testBuildLogFile.log
58 | grep -v "CMake" | tee buildErrors.log || true
59 - grep "cannot be built" buildLogFile.log testBuildLogFile.log | tee -a buildErrors.log || true
60 - cmake --build . --target install 2>&1 | tee installBuildLogFile.log
61 - if [ -s buildErrors.log ] ; then echo "Found compiler warning during build"; cat buildErrors.log; exit 1; fi
62 - ctest -D ExperimentalTest --output-on-failure | tee ctestLog.log || true
63 - awk '/The following tests FAILED/,/^Errors while running CTest|^$/'
64 ctestLog.log | tee ctestErrors.log
65 - xsltproc $CI_PROJECT_DIR/scripts/CTest2JUnit.xsl Testing/`head -n 1 < Testing/TAG`/Test.xml > JUnitTestResults.xml
66 - if [ -s ctestErrors.log ] ; then
67 echo "Error during running ctest";
73 junit: $BUILD_DIR/JUnitTestResults.xml
79 # Jobs running in first pre-build stage
81 .gromacs:base:configure:
84 stage: configure-build
87 KUBERNETES_CPU_LIMIT: 1
88 KUBERNETES_CPU_REQUEST: 1
89 KUBERNETES_MEMORY_REQUEST: 2Gi
90 CMAKE_COMPILER_SCRIPT: ""
91 CMAKE_EXTRA_OPTIONS: ""
92 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=AUTO"
93 CMAKE_MPI_OPTIONS: "-DGMX_THREAD_MPI=ON"
94 CMAKE_PRECISION_OPTIONS: "-DGMX_DOUBLE=OFF"
95 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=Debug"
96 CMAKE_GPU_OPTIONS: "-DGMX_GPU=OFF"
98 - echo $CMAKE_COMPILER_SCRIPT
99 - echo $CMAKE_EXTRA_OPTIONS
100 - echo $CMAKE_SIMD_OPTIONS
101 - echo $CMAKE_GPU_OPTIONS
102 - echo $CMAKE_MPI_OPTIONS
103 - echo $CMAKE_PRECISION_OPTIONS
104 - echo $CMAKE_BUILD_TYPE_OPTIONS
105 - echo $CMAKE_GMXAPI_OPTIONS
106 - if [[ -d $BUILD_DIR ]] ; then
107 rm -rf $BUILD_DIR && mkdir $BUILD_DIR ;
109 echo "Preparing new build directory" ;
114 -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
115 $CMAKE_COMPILER_SCRIPT
119 $CMAKE_PRECISION_OPTIONS
120 $CMAKE_BUILD_TYPE_OPTIONS
122 $CMAKE_GMXAPI_OPTIONS
123 -DCMAKE_INSTALL_PREFIX=../$INSTALL_DIR -DGMX_COMPILER_WARNINGS=ON
124 2>&1 | tee cmakeLog.log
125 - awk '/CMake Warning/,/^--|^$/' cmakeLog.log | tee cmakeErrors.log
126 - if [ -s cmakeErrors.log ] ; then echo "Found CMake warning while processing build"; cat cmakeErrors.log ; exit 1; fi
133 .gromacs:base:release:configure:
136 stage: release-configure
139 KUBERNETES_CPU_LIMIT: 1
140 KUBERNETES_CPU_REQUEST: 1
141 KUBERNETES_MEMORY_REQUEST: 2Gi
142 CMAKE_COMPILER_SCRIPT: ""
143 CMAKE_EXTRA_OPTIONS: ""
144 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=AUTO"
145 CMAKE_MPI_OPTIONS: "-DGMX_THREAD_MPI=ON"
146 CMAKE_PRECISION_OPTIONS: "-DGMX_DOUBLE=OFF"
147 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
148 CMAKE_GPU_OPTIONS: "-DGMX_GPU=OFF"
149 CMAKE_REGRESSIONTEST_OPTIONS: "-DREGRESSIONTEST_PATH=../\\$RELEASE_REGRESSIONTESTS"
150 RELEASE_BUILD_DIR: release-builds
151 RELEASE_SOURCE: release-source-from-tarball
152 RELEASE_REGRESSIONTESTS: release-regressiontests-from-tarball
154 - VERSION=`cat version.json |
155 python3 -c "import json,sys; print(json.load(sys.stdin)['version'])"`
156 - if [[ $GROMACS_RELEASE != "true" ]] ; then
157 VERSION=$VERSION-dev ;
159 - SOURCENAME=gromacs-$VERSION
160 - SOURCETARBALL=$SOURCENAME.tar.gz
161 - REGTESTNAME=regressiontests-$VERSION
162 - REGTESTTARBALL=$REGTESTNAME.tar.gz
163 - echo "$SOURCETARBALL"
164 - echo "$REGTESTTARBALL"
165 - RELEASE_TARBALLS=release-tarballs
166 - rm -rf $RELEASE_TARBALLS $RELEASE_SOURCE $RELEASE_REGRESSIONTESTS && mkdir $RELEASE_TARBALLS
167 - mv $SOURCETARBALL $RELEASE_TARBALLS
168 - mv $REGTESTTARBALL $RELEASE_TARBALLS
169 - cd $RELEASE_TARBALLS
170 # We rename the source and regressiontest directories
171 # to have names for them that don't change for different versions.
172 - tar -xf $SOURCETARBALL
173 - mv $SOURCENAME ../$RELEASE_SOURCE
174 - tar -xf $REGTESTTARBALL
175 - mv $REGTESTNAME ../$RELEASE_REGRESSIONTESTS
176 - rm $SOURCETARBALL $REGTESTTARBALL
178 - echo $CMAKE_COMPILER_SCRIPT
179 - echo $CMAKE_EXTRA_OPTIONS
180 - echo $CMAKE_SIMD_OPTIONS
181 - echo $CMAKE_GPU_OPTIONS
182 - echo $CMAKE_MPI_OPTIONS
183 - echo $CMAKE_PRECISION_OPTIONS
184 - echo $CMAKE_BUILD_TYPE_OPTIONS
185 - echo $CMAKE_GMXAPI_OPTIONS
186 - if [[ -d $RELEASE_BUILD_DIR ]] ; then
187 echo "Cleaning up build directory" ;
188 rm -rf $RELEASE_BUILD_DIR && mkdir $RELEASE_BUILD_DIR ;
190 echo "Preparing new build directory" ;
191 mkdir $RELEASE_BUILD_DIR ;
193 - cd $RELEASE_BUILD_DIR
194 - cmake ../$RELEASE_SOURCE/
195 -DCMAKE_C_COMPILER_LAUNCHER=ccache -DCMAKE_CXX_COMPILER_LAUNCHER=ccache
196 $CMAKE_COMPILER_SCRIPT
200 $CMAKE_PRECISION_OPTIONS
201 $CMAKE_BUILD_TYPE_OPTIONS
203 $CMAKE_GMXAPI_OPTIONS
204 $CMAKE_REGRESSIONTEST_OPTIONS
205 -DCMAKE_INSTALL_PREFIX=../$INSTALL_DIR
206 2>&1 | tee cmakeLog.log
207 - awk '/CMake Warning/,/^--|^$/' cmakeLog.log | tee cmakeErrors.log
208 - if [ -s cmakeErrors.log ] ; then echo "Found CMake warning while processing build"; cat cmakeErrors.log ; exit 1; fi
214 - $RELEASE_REGRESSIONTESTS
217 # Templates for configuration stage
219 gromacs:gcc-7:configure:
221 - .gromacs:base:configure
224 - .rules:merge-requests
225 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
227 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=AVX2_256"
228 CMAKE_EXTRA_OPTIONS: "-DGMX_EXTERNAL_CLFFT=ON"
229 COMPILER_MAJOR_VERSION: 7
231 gromacs:gcc-8-cuda-10.1:configure:
233 - .gromacs:base:configure
236 - .rules:merge-requests
237 image: gromacs/cmake-3.15.7-gcc-8-cuda-10.1-nvidiaopencl-clfft-openmpi:master
239 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=SSE4.1"
240 COMPILER_MAJOR_VERSION: 8
242 gromacs:clang-TSAN:configure:
244 - .gromacs:base:configure
246 - .rules:merge-requests
247 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
249 COMPILER_MAJOR_VERSION: 8
250 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=TSAN"
252 gromacs:clang-8:configure:
254 - .gromacs:base:configure
256 - .rules:merge-requests
257 image: gromacs/cmake-3.15.7-llvm-8-intelopencl-openmpi:2020
259 COMPILER_MAJOR_VERSION: 8
261 gromacs:clang-9-mpi:configure:
263 - .gromacs:base:configure
266 - .rules:merge-requests
267 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
269 COMPILER_MAJOR_VERSION: 9
270 CMAKE_PRECISION_OPTIONS: -DGMX_DOUBLE=ON
272 gromacs:clang-static-analyzer:configure:
274 - .gromacs:base:configure
276 - .rules:merge-requests
277 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
279 CMAKE_COMPILER_SCRIPT: "-DCMAKE_CXX_COMPILER=/usr/local/libexec/c++-analyzer -DCMAKE_C_COMPILER=gcc"
280 CMAKE_EXTRA_OPTIONS: "-DGMX_CLANG_ANALYZER=ON -DGMX_OPENMP=OFF -DGMX_USE_RDTSCP=OFF -DGMX_FFT_LIBRARY=fftpack -DGMX_DEVELOPER_BUILD=ON"
281 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=None"
283 gromacs:clang-ASAN:configure:
285 - .gromacs:base:configure
287 - .rules:merge-requests
288 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
290 COMPILER_MAJOR_VERSION: 8
291 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=ASAN"
293 gromacs:gcc-8-cuda-10.1:release:configure:
295 - .gromacs:base:release:configure
299 - .rules:nightly-only-for-release
300 image: gromacs/cmake-3.15.7-gcc-8-cuda-10.1-nvidiaopencl-clfft-openmpi:master
302 COMPILER_MAJOR_VERSION: 8
303 RELEASE_BUILD_DIR: release-builds-gcc
304 CMAKE_EXTRA_OPTIONS: "-DGMX_BUILD_MDRUN_ONLY=ON"
305 CMAKE_BUILD_TYPE_OPTIONS : "-DCMAKE_BUILD_TYPE=RelWithDebug"
306 CMAKE_REGRESSIONTEST_OPTIONS: ""
309 - regressiontests:package
310 - prepare-release-version
312 gromacs:gcc-7:release:configure:
314 - .gromacs:base:release:configure
316 - .rules:nightly-only-for-release
317 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
319 COMPILER_MAJOR_VERSION: 7
320 RELEASE_BUILD_DIR: release-builds-gcc
321 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
324 - regressiontests:package
325 - prepare-release-version
327 gromacs:clang-9:release:configure:
329 - .gromacs:base:release:configure
332 - .rules:nightly-only-for-release
333 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
335 COMPILER_MAJOR_VERSION: 9
336 RELEASE_BUILD_DIR: release-builds-clang
337 CMAKE_PRECISION_OPTIONS: "-DGMX_DOUBLE=ON"
338 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
341 - regressiontests:package
342 - prepare-release-version
344 gromacs:clang-8-cuda-10.1:release:configure:
346 - .gromacs:base:release:configure
349 - .rules:nightly-only-for-release
350 image: gromacs/cmake-3.15.7-llvm-8-cuda-10.1-openmpi:master
352 COMPILER_MAJOR_VERSION: 8
353 RELEASE_BUILD_DIR: release-builds-clang
354 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithDebug"
356 # Jobs running during build stage
362 - cmake --build . -- -j$KUBERNETES_CPU_LIMIT 2>&1 | tee buildLogFile.log
363 - cmake --build . --target tests -- -j$KUBERNETES_CPU_LIMIT 2>&1 | tee testBuildLogFile.log
364 - awk '/warning/,/warning.*generated|^$/' buildLogFile.log testBuildLogFile.log
365 | grep -v "CMake" | tee buildErrors.log || true
366 - grep "cannot be built" buildLogFile.log testBuildLogFile.log | tee -a buildErrors.log || true
367 - cmake --build . --target install 2>&1 | tee installBuildLogFile.log
368 - if [ -s buildErrors.log ] ; then echo "Found compiler warning during build"; cat buildErrors.log; exit 1; fi
376 .gromacs:static-analyzer-build:
380 - scan-build -o scan_html cmake --build . -- -j8 2>&1 | tee buildLogFile.log
381 - awk '/warning/,/warning.*generated|^$/' buildLogFile.log
382 | grep -v "CMake" | tee buildErrors.log || true
383 - grep "cannot be built" buildLogFile.log | tee -a buildErrors.log || true
384 - if [ -s buildErrors.log ] ; then echo "Found compiler warning during build"; cat buildErrors.log; exit 1; fi
389 - $BUILD_DIR/scan_html
394 - .gromacs:base:build
395 - .before_script:default
397 - .rules:merge-requests
398 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
400 - job: gromacs:gcc-7:configure
403 gromacs:gcc-8-cuda-10.1:build:
406 - .gromacs:base:build
407 - .before_script:default
409 - .rules:merge-requests
410 image: gromacs/cmake-3.15.7-gcc-8-cuda-10.1-nvidiaopencl-clfft-openmpi:master
412 - job: gromacs:gcc-8-cuda-10.1:configure
414 gromacs:clang-TSAN:build:
417 - .gromacs:base:build
420 - .rules:merge-requests
421 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
423 - job: gromacs:clang-TSAN:configure
425 gromacs:clang-ASAN:build:
428 - .gromacs:base:build
431 - .rules:merge-requests
432 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
436 - job: gromacs:clang-ASAN:configure
438 gromacs:clang-static-analyzer:build:
441 - .gromacs:static-analyzer-build
444 - .rules:merge-requests
445 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
449 - job: gromacs:clang-static-analyzer:configure
451 gromacs:clang-8:build:
454 - .gromacs:base:build
455 - .before_script:default
457 - .rules:merge-requests
458 image: gromacs/cmake-3.15.7-llvm-8-intelopencl-openmpi:2020
460 - job: gromacs:clang-8:configure
462 gromacs:clang-9-mpi:build:
465 - .gromacs:base:build
466 - .before_script:default
468 - .rules:merge-requests
469 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
471 - job: gromacs:clang-9-mpi:configure
473 gromacs:gcc-8-cuda-10.1:release:build:
476 - .gromacs:base:build
477 - .before_script:default
479 - .rules:nightly-only-for-release
482 BUILD_DIR: release-builds-gcc
483 image: gromacs/cmake-3.15.7-gcc-8-cuda-10.1-nvidiaopencl-clfft-openmpi:master
485 - job: gromacs:gcc-8-cuda-10.1:release:configure
487 gromacs:gcc-7:release:build:
490 - .gromacs:base:build
491 - .before_script:default
493 - .rules:nightly-only-for-release
496 BUILD_DIR: release-builds-gcc
497 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
499 - job: gromacs:gcc-7:release:configure
501 gromacs:clang-9:release:build:
504 - .gromacs:base:build
505 - .before_script:default
507 - .rules:nightly-only-for-release
510 BUILD_DIR: release-builds-clang
511 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
513 - job: gromacs:clang-9:release:configure
515 gromacs:clang-8-cuda-10.1:release:build:
518 - .gromacs:base:build
519 - .before_script:default
521 - .rules:nightly-only-for-release
524 BUILD_DIR: release-builds-clang
525 image: gromacs/cmake-3.15.7-llvm-8-cuda-10.1-openmpi:master
527 - job: gromacs:clang-8-cuda-10.1:release:configure
529 # Jobs running during test stage
539 CTEST_RUN_MODE: "ExperimentalTest"
542 # Needed to run MPI enabled code in the docker images, until we set up different users
543 - export OMPI_ALLOW_RUN_AS_ROOT=1
544 - export OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
545 - ctest -D $CTEST_RUN_MODE --output-on-failure | tee ctestLog.log || true
546 - awk '/The following tests FAILED/,/^Errors while running CTest|^$/'
547 ctestLog.log | tee ctestErrors.log
548 - xsltproc $CI_PROJECT_DIR/scripts/CTest2JUnit.xsl Testing/`head -n 1 < Testing/TAG`/*.xml > JUnitTestResults.xml
549 - if [ -s ctestErrors.log ] ; then
550 echo "Error during running ctest";
556 junit: $BUILD_DIR/JUnitTestResults.xml
563 .gromacs:base:regressiontest:
567 KUBERNETES_CPU_LIMIT: 4
568 KUBERNETES_CPU_REQUEST: 4
569 KUBERNETES_MEMORY_REQUEST: 4Gi
570 REGRESSIONTEST_TOTAL_RANK_NUMBER: 4
571 REGRESSIONTEST_OMP_RANK_NUMBER: 2
572 REGRESSIONTEST_PME_RANK_NUMBER: 1
573 REGRESSIONTEST_MPI_RUN_COMMAND: ""
574 REGRESSIONTEST_DOUBLE: ""
575 REGRESSIONTEST_PARALLEL: "-nt"
581 # This should go away once we are able to run ASAN on mdrun
582 - export ASAN_OPTIONS="detect_leaks=0"
583 # Needed to run MPI enabled code in the docker images, until we set up different users
584 - export OMPI_ALLOW_RUN_AS_ROOT=1
585 - export OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
586 - tar xzf gmx-regressiontests.tar.gz
587 - source $INSTALL_DIR/bin/GMXRC
589 - 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
592 - regressiontests/gmxtest.xml
599 - .rules:merge-requests
600 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
602 KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
603 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
607 - job: gromacs:gcc-7:build
609 gromacs:gcc-8-cuda-10.1:test:
612 - .rules:merge-requests
613 image: gromacs/cmake-3.15.7-gcc-8-cuda-10.1-nvidiaopencl-clfft-openmpi:master
615 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
616 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
620 - job: gromacs:gcc-8-cuda-10.1:build
622 gromacs:clang-8:test:
625 - .rules:merge-requests
626 image: gromacs/cmake-3.15.7-llvm-8-intelopencl-openmpi:2020
628 - job: gromacs:clang-8:build
630 gromacs:clang-TSAN:test:
633 - .rules:merge-requests
634 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
636 - job: gromacs:clang-TSAN:build
638 gromacs:clang-ASAN:test:
642 - .rules:merge-requests
643 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
645 CTEST_RUN_MODE: "ExperimentalMemCheck"
649 - job: gromacs:clang-ASAN:build
651 gromacs:clang-9-mpi:test:
654 - .rules:merge-requests
655 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
659 - job: gromacs:clang-9-mpi:build
661 gromacs:gcc-7:regressiontest:
663 - .gromacs:base:regressiontest
664 - .rules:merge-requests
665 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
667 KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
668 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
669 REGRESSIONTEST_PME_RANK_NUMBER: 0
670 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
671 REGRESSIONTEST_OMP_RANK_NUMBER: 1
675 - job: gromacs:gcc-7:build
676 - job: regressiontests:prepare
678 gromacs:gcc-8-cuda-10.1:regressiontest:
680 - .gromacs:base:regressiontest
681 - .rules:merge-requests
682 image: gromacs/cmake-3.15.7-gcc-8-cuda-10.1-nvidiaopencl-clfft-openmpi:master
684 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
685 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
686 REGRESSIONTEST_PME_RANK_NUMBER: 0
687 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
688 REGRESSIONTEST_OMP_RANK_NUMBER: 1
692 - job: gromacs:gcc-8-cuda-10.1:build
693 - job: regressiontests:prepare
695 gromacs:clang-8:regressiontest:
697 - .gromacs:base:regressiontest
698 - .rules:merge-requests
699 image: gromacs/cmake-3.15.7-llvm-8-intelopencl-openmpi:2020
703 - job: gromacs:clang-8:build
704 - job: regressiontests:prepare
706 gromacs:clang-TSAN:regressiontest:
708 - .gromacs:base:regressiontest
709 - .rules:merge-requests
710 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
714 - job: gromacs:clang-TSAN:build
715 - job: regressiontests:prepare
717 gromacs:clang-ASAN:regressiontest:
719 - .gromacs:base:regressiontest
721 - .rules:merge-requests
722 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
726 - job: gromacs:clang-ASAN:build
727 - job: regressiontests:prepare
729 gromacs:clang-9:regressiontest:
731 - .gromacs:base:regressiontest
732 - .rules:merge-requests
733 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
735 REGRESSIONTEST_DOUBLE: "-double"
736 REGRESSIONTEST_PARALLEL: "-np"
740 - job: gromacs:clang-9-mpi:build
741 - job: regressiontests:prepare
743 gromacs:gcc-8-cuda-10.1:release:test:
746 - .rules:nightly-only-for-release
748 image: gromacs/cmake-3.15.7-gcc-8-cuda-10.1-nvidiaopencl-clfft-openmpi:master
750 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
751 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
752 BUILD_DIR: release-builds-gcc
756 - job: gromacs:gcc-8-cuda-10.1:release:configure
757 - job: gromacs:gcc-8-cuda-10.1:release:build
759 gromacs:gcc-7:release:test:
762 - .rules:nightly-only-for-release
764 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
766 BUILD_DIR: release-builds-gcc
768 - job: gromacs:gcc-7:release:configure
769 - job: gromacs:gcc-7:release:build
771 gromacs:clang-9:release:test:
774 - .rules:nightly-only-for-release
776 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
778 BUILD_DIR: release-builds-clang
780 - job: gromacs:clang-9:release:configure
781 - job: gromacs:clang-9:release:build
783 gromacs:clang-8-cuda-10.1:release:test:
786 - .rules:nightly-only-for-release
788 image: gromacs/cmake-3.15.7-llvm-8-cuda-10.1-openmpi:master
790 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
791 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
792 BUILD_DIR: release-builds-clang
796 - job: gromacs:clang-8-cuda-10.1:release:configure
797 - job: gromacs:clang-8-cuda-10.1:release:build
799 gromacs:gcc-7:release:regressiontest:
801 - .gromacs:base:regressiontest
802 - .rules:nightly-only-for-release
804 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
806 BUILD_DIR: release-builds-gcc
810 - job: gromacs:gcc-7:release:build
811 - job: regressiontests:package
813 gromacs:clang-9:release:regressiontest:
815 - .gromacs:base:regressiontest
816 - .rules:nightly-only-for-release
818 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
820 BUILD_DIR: release-builds-clang
821 REGRESSIONTEST_DOUBLE: "-double"
822 REGRESSIONTEST_PARALLEL: "-np"
826 - job: gromacs:clang-9:release:build
827 - job: regressiontests:package
829 gromacs:clang-8-cuda-10.1:release:regressiontest:
831 - .gromacs:base:regressiontest
832 - .rules:nightly-only-for-release
834 image: gromacs/cmake-3.15.7-llvm-8-cuda-10.1-openmpi:master
836 BUILD_DIR: release-builds-clang
837 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
838 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
839 REGRESSIONTEST_PME_RANK_NUMBER: 0
840 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
841 REGRESSIONTEST_OMP_RANK_NUMBER: 1
845 - job: gromacs:clang-8-cuda-10.1:release:build
846 - job: regressiontests:package