Update CI containers to oneAPI 2021.4.0
[alexxy/gromacs.git] / admin / gitlab-ci / gromacs.matrix / gromacs.oneapi-2021.4.0-opencl-release.gitlab-ci.yml
1 # Test goal: Newest ICPX build with OpenCL, release build
2 # Test intents (should change rarely and conservatively):
3 #   OS: Ubuntu oldest supported
4 #   Compiler: ICPX newest supported
5 #   Build type: RelWithAssert
6 #   FFT: MKL
7 #   GPU: OpenCL
8 #   Scope: configure, build, unit tests, regression tests
9 # Test implementation choices (free to change as needed):
10 #   OS: Ubuntu 20.04
11 #   Compiler: ICPX 2021.4
12 #   MPI: thread_MPI
13 #   SIMD: AVX2_256
14 #   Parallelism nt/ntomp: 4/2 (unit tests)
15 #   Parallelism nt/ntomp: 2/1 (regression tests)
16
17 gromacs:oneapi-2021.4.0-opencl:release:configure:
18   extends:
19    - .gromacs:base:release:configure
20    - .use-oneapi:base
21    - .use-opencl
22    - .rules:nightly-only-for-release
23   image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-7-oneapi-2021.4.0
24   variables:
25     CMAKE: /usr/local/cmake-3.17.2/bin/cmake
26     COMPILER_MAJOR_VERSION: 2021
27     RELEASE_BUILD_DIR: release-builds-oneapi
28
29 gromacs:oneapi-2021.4.0-opencl:release:build:
30   extends:
31     - .variables:default
32     - .gromacs:base:build
33     - .use-oneapi:base
34     - .use-opencl
35     - .use-ccache
36     - .rules:nightly-only-for-release
37   stage: release-build
38   variables:
39     CMAKE: /usr/local/cmake-3.17.2/bin/cmake
40     BUILD_DIR: release-builds-oneapi
41     COMPILER_MAJOR_VERSION: 2021
42   image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-7-oneapi-2021.4.0
43   needs:
44     - job: gromacs:oneapi-2021.4.0-opencl:release:configure
45
46 gromacs:oneapi-2021.4.0-opencl:release:test:
47   extends:
48     - .gromacs:base:test
49     - .use-oneapi:base
50     - .rules:nightly-only-for-release
51   stage: release-tests
52   image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-7-oneapi-2021.4.0
53   variables:
54     CMAKE: /usr/local/cmake-3.17.2/bin/cmake
55     BUILD_DIR: release-builds-oneapi
56   needs:
57     - job: gromacs:oneapi-2021.4.0-opencl:release:configure
58     - job: gromacs:oneapi-2021.4.0-opencl:release:build
59
60 gromacs:oneapi-2021.4.0-opencl:release:regressiontest:
61   extends:
62     - .gromacs:base:regressiontest
63     - .use-oneapi:base
64     - .rules:nightly-only-for-release
65   stage: release-tests
66   image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-7-oneapi-2021.4.0
67   variables:
68     CMAKE: /usr/local/cmake-3.17.2/bin/cmake
69     BUILD_DIR: release-builds-oneapi
70     REGRESSIONTEST_PME_RANK_NUMBER: 0
71     REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
72     REGRESSIONTEST_OMP_RANK_NUMBER: 1
73   needs:
74     - job: gromacs:oneapi-2021.4.0-opencl:release:build
75     - job: regressiontests:package