1 # Test goal: Newest ICPX build with SYCL with tests on Intel GPUs
2 # Test intents (should change rarely and conservatively):
3 # OS: Ubuntu newest supported
4 # Compiler: ICPX newest supported
7 # Scope: configure, build, unit tests, regression tests
8 # Test implementation choices (free to change as needed):
10 # Build type: RelWithAssert
11 # Compiler: ICPX 2021.2
14 # Parallelism nt/ntomp: 2/1
16 gromacs:oneapi-2021.2.0-sycl-nightly:configure:
18 - .gromacs:base:configure
21 - .rules:nightly-not-for-release
22 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-7-oneapi-2021.2.0-intel-21.21.19914:latest
24 CMAKE: /usr/local/cmake-3.18.4/bin/cmake
25 COMPILER_MAJOR_VERSION: 2021
27 gromacs:oneapi-2021.2.0-sycl-nightly:build:
33 - .rules:nightly-not-for-release
34 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-7-oneapi-2021.2.0-intel-21.21.19914:latest
36 CMAKE: /usr/local/cmake-3.18.4/bin/cmake
38 - job: gromacs:oneapi-2021.2.0-sycl-nightly:configure
40 gromacs:oneapi-2021.2.0-sycl-nightly:test-opencl:
44 - .rules:nightly-not-for-release
47 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-7-oneapi-2021.2.0-intel-21.21.19914:latest
49 CMAKE: /usr/local/cmake-3.18.4/bin/cmake
50 SYCL_DEVICE_FILTER: "opencl:gpu"
51 # The following two variables are not used by k8s, since this job runs on a separate host
52 # But it's easier to set them up and use the existing scripts for job preparation that rely on them
53 KUBERNETES_EXTENDED_RESOURCE_NAME: "intel.com/gpu"
54 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 2
55 # Except we now don't request any GPUs, so we must set this one up manually until !1585 is merged
56 GMX_TEST_REQUIRED_NUMBER_OF_DEVICES: 2
58 - job: gromacs:oneapi-2021.2.0-sycl-nightly:build
60 gromacs:oneapi-2021.2.0-sycl-nightly:regressiontest-opencl:
62 - .gromacs:base:regressiontest
64 - .rules:nightly-not-for-release
67 image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-7-oneapi-2021.2.0-intel-21.21.19914:latest
69 CMAKE: /usr/local/cmake-3.18.4/bin/cmake
70 SYCL_DEVICE_FILTER: "opencl:gpu"
71 # Default not working, see #2980
72 REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
73 REGRESSIONTEST_OMP_RANK_NUMBER: 1
74 # The following two variables are not used by k8s, since this job runs on a separate host
75 # But it's easier to set them up and use the existing scripts for job preparation that rely on them
76 KUBERNETES_EXTENDED_RESOURCE_NAME: "intel.com/gpu"
77 KUBERNETES_EXTENDED_RESOURCE_LIMIT: 2
78 # Except we now don't request any GPUs, so we must set this one up manually until !1585 is merged
79 GMX_TEST_REQUIRED_NUMBER_OF_DEVICES: 2
81 - job: gromacs:oneapi-2021.2.0-sycl-nightly:build
82 - job: regressiontests:prepare
84 # We have to disable LevelZero tests until https://github.com/intel/llvm/pull/3045 makes it into
85 # the OneAPI release. Without this patch, some of the tests deadlock.
87 #gromacs:oneapi-2021.2.0-sycl-nightly:test-levelzero:
89 # - .gromacs:base:test
91 # - .rules:nightly-not-for-release
94 # image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-7-oneapi-2021.2.0-intel-21.21.19914:latest
96 # CMAKE: /usr/local/cmake-3.18.4/bin/cmake
97 # SYCL_DEVICE_FILTER: "level_zero:gpu"
98 # # The following two variables are not used by k8s, since this job runs on a separate host
99 # # But it's easier to set them up and use the existing scripts for job preparation that rely on them
100 # KUBERNETES_EXTENDED_RESOURCE_NAME: "intel.com/gpu"
101 # KUBERNETES_EXTENDED_RESOURCE_LIMIT: 2
102 # # Except we now don't request any GPUs, so we must set this one up manually until !1585 is merged
103 # GMX_TEST_REQUIRED_NUMBER_OF_DEVICES: 2
105 # - job: gromacs:oneapi-2021.2.0-sycl-nightly:build
107 #gromacs:oneapi-2021.2.0-sycl-nightly:regressiontest-levelzero:
109 # - .gromacs:base:regressiontest
111 # - .rules:nightly-not-for-release
114 # image: ${CI_REGISTRY}/gromacs/gromacs/ci-ubuntu-20.04-gcc-7-oneapi-2021.2.0-intel-21.21.19914:latest
116 # CMAKE: /usr/local/cmake-3.18.4/bin/cmake
117 # SYCL_DEVICE_FILTER: "level_zero:gpu"
118 # # Default not working, see #2980
119 # REGRESSIONTEST_TOTAL_RANK_NUMBER: 2
120 # REGRESSIONTEST_OMP_RANK_NUMBER: 1
121 # # The following two variables are not used by k8s, since this job runs on a separate host
122 # # But it's easier to set them up and use the existing scripts for job preparation that rely on them
123 # KUBERNETES_EXTENDED_RESOURCE_NAME: "intel.com/gpu"
124 # KUBERNETES_EXTENDED_RESOURCE_LIMIT: 2
125 # # Except we now don't request any GPUs, so we must set this one up manually until !1585 is merged
126 # GMX_TEST_REQUIRED_NUMBER_OF_DEVICES: 2
128 # - job: gromacs:oneapi-2021.2.0-sycl-nightly:build
129 # - job: regressiontests:prepare