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=None"
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=AVX2_256"
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=None"
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=AVX2_256"
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=None"
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-7-nocuda-10.1:configure:
233 - .gromacs:base:configure
235 - .rules:merge-requests
236 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
238 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=SSE4.1"
239 COMPILER_MAJOR_VERSION: 7
241 gromacs:clang-TSAN:configure:
243 - .gromacs:base:configure
245 - .rules:merge-requests
246 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
248 COMPILER_MAJOR_VERSION: 8
249 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=TSAN"
251 gromacs:clang-8:configure:
253 - .gromacs:base:configure
255 - .rules:merge-requests
256 image: gromacs/cmake-3.15.7-llvm-8-intelopencl-openmpi:2020
258 COMPILER_MAJOR_VERSION: 8
260 #gromacs:clang-9-mpi:configure:
262 # - .gromacs:base:configure
265 # - .rules:merge-requests
266 # image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
268 # COMPILER_MAJOR_VERSION: 9
269 # CMAKE_PRECISION_OPTIONS: -DGMX_DOUBLE=ON
271 #gromacs:clang-static-analyzer:configure:
273 # - .gromacs:base:configure
275 # - .rules:merge-requests
276 # image: gromacs/cmake-3.13.0-llvm-8-tsan:master
278 # CMAKE_COMPILER_SCRIPT: "-DCMAKE_CXX_COMPILER=/usr/local/libexec/c++-analyzer -DCMAKE_C_COMPILER=gcc"
279 # CMAKE_EXTRA_OPTIONS: "-DGMX_CLANG_ANALYZER=ON -DGMX_OPENMP=OFF -DGMX_USE_RDTSCP=OFF -DGMX_FFT_LIBRARY=fftpack -DGMX_DEVELOPER_BUILD=ON"
280 # CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=None"
282 #gromacs:clang-ASAN:configure:
284 # - .gromacs:base:configure
286 # - .rules:merge-requests
287 # image: gromacs/cmake-3.13.0-llvm-8-tsan:master
289 # COMPILER_MAJOR_VERSION: 8
290 # CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=ASAN"
292 gromacs:gcc-7-nocuda-10.1:release:configure:
294 - .gromacs:base:release:configure
297 - .rules:nightly-only-for-release
298 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
300 COMPILER_MAJOR_VERSION: 7
301 RELEASE_BUILD_DIR: release-builds-gcc
302 CMAKE_EXTRA_OPTIONS: "-DGMX_BUILD_MDRUN_ONLY=ON"
303 CMAKE_BUILD_TYPE_OPTIONS : "-DCMAKE_BUILD_TYPE=RelWithDebug"
304 CMAKE_REGRESSIONTEST_OPTIONS: ""
307 - regressiontests:package
308 - prepare-release-version
310 gromacs:gcc-7:release:configure:
312 - .gromacs:base:release:configure
314 - .rules:nightly-only-for-release
315 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
317 COMPILER_MAJOR_VERSION: 7
318 RELEASE_BUILD_DIR: release-builds-gcc
319 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
322 - regressiontests:package
323 - prepare-release-version
325 #gromacs:clang-9:release:configure:
327 # - .gromacs:base:release:configure
330 # - .rules:nightly-only-for-release
331 # image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
333 # COMPILER_MAJOR_VERSION: 9
334 # RELEASE_BUILD_DIR: release-builds-clang
335 # CMAKE_PRECISION_OPTIONS: "-DGMX_DOUBLE=ON"
336 # CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
339 # - regressiontests:package
340 # - prepare-release-version
342 gromacs:clang-9-nocuda-10.1:release:configure:
344 - .gromacs:base:release:configure
346 - .rules:nightly-only-for-release
347 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
349 COMPILER_MAJOR_VERSION: 9
350 RELEASE_BUILD_DIR: release-builds-clang
351 CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithDebug"
353 # Jobs running during build stage
359 - cmake --build . -- -j$KUBERNETES_CPU_LIMIT 2>&1 | tee buildLogFile.log
360 - cmake --build . --target tests -- -j$KUBERNETES_CPU_LIMIT 2>&1 | tee testBuildLogFile.log
361 - awk '/warning/,/warning.*generated|^$/' buildLogFile.log testBuildLogFile.log
362 | grep -v "CMake" | tee buildErrors.log || true
363 - grep "cannot be built" buildLogFile.log testBuildLogFile.log | tee -a buildErrors.log || true
364 - cmake --build . --target install 2>&1 | tee installBuildLogFile.log
365 - if [ -s buildErrors.log ] ; then echo "Found compiler warning during build"; cat buildErrors.log; exit 1; fi
373 .gromacs:static-analyzer-build:
377 - scan-build -o scan_html cmake --build . -- -j8 2>&1 | tee buildLogFile.log
378 - awk '/warning/,/warning.*generated|^$/' buildLogFile.log
379 | grep -v "CMake" | tee buildErrors.log || true
380 - grep "cannot be built" buildLogFile.log | tee -a buildErrors.log || true
381 - if [ -s buildErrors.log ] ; then echo "Found compiler warning during build"; cat buildErrors.log; exit 1; fi
386 - $BUILD_DIR/scan_html
391 - .gromacs:base:build
392 - .before_script:default
394 - .rules:merge-requests
395 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
397 - job: gromacs:gcc-7:configure
400 gromacs:gcc-7-nocuda-10.1:build:
403 - .gromacs:base:build
404 - .before_script:default
406 - .rules:merge-requests
407 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
409 - job: gromacs:gcc-7-nocuda-10.1:configure
411 gromacs:clang-TSAN:build:
414 - .gromacs:base:build
417 - .rules:merge-requests
418 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
420 - job: gromacs:clang-TSAN:configure
422 #gromacs:clang-ASAN:build:
424 # - .variables:default
425 # - .gromacs:base:build
428 # - .rules:merge-requests
429 # image: gromacs/cmake-3.13.0-llvm-8-tsan:master
432 # - job: gromacs:clang-ASAN:configure
434 #gromacs:clang-static-analyzer:build:
436 # - .variables:default
437 # - .gromacs:static-analyzer-build
440 # - .rules:merge-requests
441 # image: gromacs/cmake-3.13.0-llvm-8-tsan:master
444 # - job: gromacs:clang-static-analyzer:configure
446 gromacs:clang-8:build:
449 - .gromacs:base:build
450 - .before_script:default
452 - .rules:merge-requests
453 image: gromacs/cmake-3.15.7-llvm-8-intelopencl-openmpi:2020
455 - job: gromacs:clang-8:configure
457 #gromacs:clang-9-mpi:build:
459 # - .variables:default
460 # - .gromacs:base:build
461 # - .before_script:default
463 # - .rules:merge-requests
464 # image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
466 # - job: gromacs:clang-9-mpi:configure
468 gromacs:gcc-7-nocuda-10.1:release:build:
471 - .gromacs:base:build
472 - .before_script:default
474 - .rules:nightly-only-for-release
477 BUILD_DIR: release-builds-gcc
478 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
480 - job: gromacs:gcc-7-nocuda-10.1:release:configure
482 gromacs:gcc-7:release:build:
485 - .gromacs:base:build
486 - .before_script:default
488 - .rules:nightly-only-for-release
491 BUILD_DIR: release-builds-gcc
492 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
494 - job: gromacs:gcc-7:release:configure
496 #gromacs:clang-9:release:build:
498 # - .variables:default
499 # - .gromacs:base:build
500 # - .before_script:default
502 # - .rules:nightly-only-for-release
503 # stage: release-build
505 # BUILD_DIR: release-builds-clang
506 # image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
508 # - job: gromacs:clang-9:release:configure
510 gromacs:clang-9-nocuda-10.1:release:build:
513 - .gromacs:base:build
514 - .before_script:default
516 - .rules:nightly-only-for-release
519 BUILD_DIR: release-builds-clang
520 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
522 - job: gromacs:clang-9-nocuda-10.1:release:configure
524 # Jobs running during test stage
534 CTEST_RUN_MODE: "ExperimentalTest"
537 # Needed to run MPI enabled code in the docker images, until we set up different users
538 - export OMPI_ALLOW_RUN_AS_ROOT=1
539 - export OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
540 - ctest -D $CTEST_RUN_MODE --output-on-failure | tee ctestLog.log || true
541 - awk '/The following tests FAILED/,/^Errors while running CTest|^$/'
542 ctestLog.log | tee ctestErrors.log
543 - xsltproc $CI_PROJECT_DIR/scripts/CTest2JUnit.xsl Testing/`head -n 1 < Testing/TAG`/*.xml > JUnitTestResults.xml
544 - if [ -s ctestErrors.log ] ; then
545 echo "Error during running ctest";
551 junit: $BUILD_DIR/JUnitTestResults.xml
558 .gromacs:base:regressiontest:
562 KUBERNETES_CPU_LIMIT: 4
563 KUBERNETES_CPU_REQUEST: 4
564 KUBERNETES_MEMORY_REQUEST: 4Gi
565 REGRESSIONTEST_TOTAL_RANK_NUMBER: 4
566 REGRESSIONTEST_OMP_RANK_NUMBER: 2
567 REGRESSIONTEST_PME_RANK_NUMBER: 1
568 REGRESSIONTEST_MPI_RUN_COMMAND: ""
569 REGRESSIONTEST_DOUBLE: ""
570 REGRESSIONTEST_PARALLEL: "-nt"
576 - export LSAN_OPTIONS="suppressions=$CI_PROJECT_DIR/admin/lsan-suppressions.txt:print_suppressions=0"
577 # Needed to run MPI enabled code in the docker images, until we set up different users
578 - export OMPI_ALLOW_RUN_AS_ROOT=1
579 - export OMPI_ALLOW_RUN_AS_ROOT_CONFIRM=1
580 - tar xzf gmx-regressiontests.tar.gz
581 - source $INSTALL_DIR/bin/GMXRC
583 - 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
586 - regressiontests/gmxtest.xml
593 - .rules:merge-requests
594 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
596 KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
597 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
600 - job: gromacs:gcc-7:build
602 gromacs:gcc-7-nocuda-10.1:test:
605 - .rules:merge-requests
606 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
608 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
609 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
612 - job: gromacs:gcc-7-nocuda-10.1:build
614 gromacs:clang-8:test:
617 - .rules:merge-requests
618 image: gromacs/cmake-3.15.7-llvm-8-intelopencl-openmpi:2020
620 - job: gromacs:clang-8:build
622 gromacs:clang-TSAN:test:
625 - .rules:merge-requests
626 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
628 - job: gromacs:clang-TSAN:build
630 #gromacs:clang-ASAN:test:
632 # - .gromacs:base:test
634 # - .rules:merge-requests
635 # image: gromacs/cmake-3.13.0-llvm-8-tsan:master
637 # CTEST_RUN_MODE: "ExperimentalMemCheck"
640 # - job: gromacs:clang-ASAN:build
642 #gromacs:clang-9-mpi:test:
644 # - .gromacs:base:test
645 # - .rules:merge-requests
646 # image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
649 # - job: gromacs:clang-9-mpi:build
651 gromacs:gcc-7:regressiontest:
653 - .gromacs:base:regressiontest
654 - .rules:merge-requests
655 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
657 KUBERNETES_EXTENDED_RESOURCE_NAME: "amd.com/gpu"
658 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
659 REGRESSIONTEST_PME_RANK_NUMBER: 0
660 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
661 REGRESSIONTEST_OMP_RANK_NUMBER: 1
664 - job: gromacs:gcc-7:build
665 - job: regressiontests:prepare
667 gromacs:gcc-7-nocuda-10.1:regressiontest:
669 - .gromacs:base:regressiontest
670 - .rules:merge-requests
671 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
673 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
674 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
675 REGRESSIONTEST_PME_RANK_NUMBER: 0
676 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
677 REGRESSIONTEST_OMP_RANK_NUMBER: 1
680 - job: gromacs:gcc-7-nocuda-10.1:build
681 - job: regressiontests:prepare
683 gromacs:clang-8:regressiontest:
685 - .gromacs:base:regressiontest
686 - .rules:merge-requests
687 image: gromacs/cmake-3.15.7-llvm-8-intelopencl-openmpi:2020
690 - job: gromacs:clang-8:build
691 - job: regressiontests:prepare
693 gromacs:clang-TSAN:regressiontest:
695 - .gromacs:base:regressiontest
696 - .rules:merge-requests
697 image: gromacs/cmake-3.13.0-llvm-8-tsan:master
700 - job: gromacs:clang-TSAN:build
701 - job: regressiontests:prepare
703 #gromacs:clang-ASAN:regressiontest:
705 # - .gromacs:base:regressiontest
707 # - .rules:merge-requests
708 # image: gromacs/cmake-3.13.0-llvm-8-tsan:master
711 # - job: gromacs:clang-ASAN:build
712 # - job: regressiontests:prepare
714 #gromacs:clang-9:regressiontest:
716 # - .gromacs:base:regressiontest
717 # - .rules:merge-requests
718 # image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
720 # REGRESSIONTEST_DOUBLE: "-double"
721 # REGRESSIONTEST_PARALLEL: "-np"
724 # - job: gromacs:clang-9-mpi:build
725 # - job: regressiontests:prepare
727 gromacs:gcc-7-nocuda-10.1:release:test:
730 - .rules:nightly-only-for-release
732 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
734 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
735 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
736 BUILD_DIR: release-builds-gcc
739 - job: gromacs:gcc-7-nocuda-10.1:release:configure
740 - job: gromacs:gcc-7-nocuda-10.1:release:build
742 gromacs:gcc-7:release:test:
745 - .rules:nightly-only-for-release
747 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
749 BUILD_DIR: release-builds-gcc
751 - job: gromacs:gcc-7:release:configure
752 - job: gromacs:gcc-7:release:build
754 #gromacs:clang-9:release:test:
756 # - .gromacs:base:test
757 # - .rules:nightly-only-for-release
758 # stage: release-tests
759 # image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
761 # BUILD_DIR: release-builds-clang
763 # - job: gromacs:clang-9:release:configure
764 # - job: gromacs:clang-9:release:build
766 gromacs:clang-9-nocuda-10.1:release:test:
769 - .rules:nightly-only-for-release
771 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
773 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
774 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
775 BUILD_DIR: release-builds-clang
778 - job: gromacs:clang-9-nocuda-10.1:release:configure
779 - job: gromacs:clang-9-nocuda-10.1:release:build
781 gromacs:gcc-7:release:regressiontest:
783 - .gromacs:base:regressiontest
784 - .rules:nightly-only-for-release
786 image: gromacs/cmake-3.13.0-gcc-7-amdopencl-clfft-openmpi:master
788 BUILD_DIR: release-builds-gcc
791 - job: gromacs:gcc-7:release:build
792 - job: regressiontests:package
794 #gromacs:clang-9:release:regressiontest:
796 # - .gromacs:base:regressiontest
797 # - .rules:nightly-only-for-release
798 # stage: release-tests
799 # image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
801 # BUILD_DIR: release-builds-clang
802 # REGRESSIONTEST_DOUBLE: "-double"
803 # REGRESSIONTEST_PARALLEL: "-np"
806 # - job: gromacs:clang-9:release:build
807 # - job: regressiontests:package
809 gromacs:clang-9-nocuda-10.1:release:regressiontest:
811 - .gromacs:base:regressiontest
812 - .rules:nightly-only-for-release
814 image: gromacs/cmake-3.15.7-llvm-9-openmpi:master
816 BUILD_DIR: release-builds-clang
817 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
818 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
819 REGRESSIONTEST_PME_RANK_NUMBER: 0
820 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
821 REGRESSIONTEST_OMP_RANK_NUMBER: 1
824 - job: gromacs:clang-9-nocuda-10.1:release:build
825 - job: regressiontests:package