1 # Test goal: old versions of GCC with CUDA; GPU communications with tMPI
2 # Test intents (should change rarely and conservatively):
3 # OS: Ubuntu oldest supported
4 # Compiler: GCC oldest supported
5 # GPU: CUDA oldest supported
6 # HW: NVIDIA GPU, dual NVIDIA GPU
8 # Features: GPU direct communications + update (unit tests)
9 # Features: GPU direct communications + update (regression tests with dual GPU)
10 # Features: GPU update (regression tests with dual GPU)
11 # Scope: configure, build, unit tests, regression tests
12 # Test implementation choices (free to change as needed):
19 # Parallelism nt/ntomp: 4/2 (unit tests)
20 # Parallelism nt/ntomp: 2/1 (regression tests)
21 # Parallelism nt/ntomp: 4/1 (regression tests with dual GPU)
23 gromacs:gcc-7-cuda-10.2:configure:
25 - .gromacs:base:configure
28 - .rules:merge-and-post-merge-acceptance
29 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2:release-2021
31 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
32 CMAKE_SIMD_OPTIONS: "-DGMX_SIMD=SSE4.1"
33 COMPILER_MAJOR_VERSION: 7
35 gromacs:gcc-7-cuda-10.2:build:
39 - .before_script:default
41 - .rules:merge-and-post-merge-acceptance
42 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2:release-2021
44 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
46 - job: gromacs:gcc-7-cuda-10.2:configure
48 gromacs:gcc-7-cuda-10.2:test:
51 - .rules:merge-requests
52 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2:release-2021
54 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
55 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
56 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
60 - job: gromacs:gcc-7-cuda-10.2:build
62 gromacs:gcc-7-cuda-10.2:test-gpucommupd:
65 - .rules:post-merge-acceptance
66 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2:release-2021
68 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
69 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
70 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
72 GMX_GPU_PME_PP_COMMS: 1
73 GMX_FORCE_UPDATE_DEFAULT_GPU: 1
77 - job: gromacs:gcc-7-cuda-10.2:build
79 gromacs:gcc-7-cuda-10.2:regressiontest:
81 - .gromacs:base:regressiontest
82 - .rules:merge-requests
83 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2:release-2021
85 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
86 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
87 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 1
88 REGRESSIONTEST_PME_RANK_NUMBER: 0
89 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
90 REGRESSIONTEST_OMP_RANK_NUMBER: 1
94 - job: gromacs:gcc-7-cuda-10.2:build
95 - job: regressiontests:prepare
97 gromacs:gcc-7-cuda-10.2:regressiontest-gpucommupd-tMPI:
99 - .gromacs:base:regressiontest
100 - .rules:post-merge-acceptance
101 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2:release-2021
103 CMAKE: /usr/local/cmake-3.15.7/bin/cmake
104 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
105 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 2
106 REGRESSIONTEST_PME_RANK_NUMBER: 0
107 REGRESSIONTEST_TOTAL_RANK_NUMBER: 4
108 REGRESSIONTEST_OMP_RANK_NUMBER: 1
110 GMX_GPU_PME_PP_COMMS: 1
111 GMX_FORCE_UPDATE_DEFAULT_GPU: 1
115 - job: gromacs:gcc-7-cuda-10.2:build
116 - job: regressiontests:prepare
123 gromacs:gcc-7-cuda-10.2:regressiontest-upd-tMPI:
125 - .gromacs:base:regressiontest
126 - .rules:post-merge-acceptance
127 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-18.04-gcc-7-cuda-10.2:release-2021
129 KUBERNETES_EXTENDED_RESOURCE_NAME: "nvidia.com/gpu"
130 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 2
131 REGRESSIONTEST_PME_RANK_NUMBER: 0
132 REGRESSIONTEST_TOTAL_RANK_NUMBER: 4
133 REGRESSIONTEST_OMP_RANK_NUMBER: 1
134 GMX_FORCE_UPDATE_DEFAULT_GPU: 1
138 - job: gromacs:gcc-7-cuda-10.2:build
139 - job: regressiontests:prepare