Minor code clean-up in the NB FEP kernel.
[alexxy/gromacs.git] / admin / gitlab-ci / gromacs.matrix / gromacs.clang-12-release.gitlab-ci.yml
1 # Test goal: Release build with Clang, MPI, and double-precision
2 # Test intents (should change rarely and conservatively):
3 #   OS: Ubuntu oldest supported
4 #   Compiler: Clang newest supported
5 #   MPI: OpenMPI
6 #   GPU: no
7 #   Features: double precision FP
8 #   Scope: configure, build, unit tests, regression tests
9 # Test implementation choices (free to change as needed):
10 #   OS: Ubuntu 20.04
11 #   Build type: RelWithAssert
12 #   Compiler: Clang 12
13 #   MPI: OpenMPI 3.1
14 #   SIMD: AVX2_256
15 #   FFT: FFTW3
16 #   Parallelism np/ntomp: 4/2
17
18 gromacs:clang-12:release:configure:
19   extends:
20     - .gromacs:base:release:configure
21     - .use-clang:base
22     - .use-mpi
23     - .rules:nightly-only-for-release
24   image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-llvm-12
25   variables:
26     CMAKE: /usr/local/cmake-3.16.3/bin/cmake
27     COMPILER_MAJOR_VERSION: 12
28     RELEASE_BUILD_DIR: release-builds-clang
29     CMAKE_PRECISION_OPTIONS: "-DGMX_DOUBLE=ON"
30     CMAKE_BUILD_TYPE_OPTIONS: "-DCMAKE_BUILD_TYPE=RelWithAssert"
31   dependencies:
32     - archive:package
33     - regressiontests:package
34     - prepare-release-version
35
36 gromacs:clang-12:release:build:
37   extends:
38     - .variables:default
39     - .gromacs:base:build
40     - .before_script:default
41     - .use-ccache
42     - .rules:nightly-only-for-release
43   stage: release-build
44   variables:
45     CMAKE: /usr/local/cmake-3.16.3/bin/cmake
46     BUILD_DIR: release-builds-clang
47   image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-llvm-12
48   needs:
49     - job: gromacs:clang-12:release:configure
50
51 gromacs:clang-12:release:test:
52   extends:
53     - .gromacs:base:test
54     - .rules:nightly-only-for-release
55   stage: release-tests
56   image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-llvm-12
57   variables:
58     CMAKE: /usr/local/cmake-3.16.3/bin/cmake
59     BUILD_DIR: release-builds-clang
60   needs:
61     - job: gromacs:clang-12:release:configure
62     - job: gromacs:clang-12:release:build
63
64 gromacs:clang-12:release:regressiontest:
65   extends:
66     - .gromacs:base:regressiontest
67     - .rules:nightly-only-for-release
68   stage: release-tests
69   image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-llvm-12
70   variables:
71     CMAKE: /usr/local/cmake-3.16.3/bin/cmake
72     BUILD_DIR: release-builds-clang
73     REGRESSIONTEST_DOUBLE: "-double"
74     REGRESSIONTEST_PARALLEL: "-np"
75   tags:
76     - k8s-scilifelab
77   needs:
78     - job: gromacs:clang-12:release:build
79     - job: regressiontests:package
80