@@ -3,6 +3,7 @@ name: Nightly
3
3
4
4
# This job is run at 00:00 UTC every day or on demand.
5
5
on :
6
+ push :
6
7
workflow_dispatch :
7
8
schedule :
8
9
- cron : ' 0 0 * * *'
88
89
89
90
- name : Run tests under valgrind
90
91
run : ${{github.workspace}}/test/test_valgrind.sh ${{github.workspace}} ${{github.workspace}}/build ${{matrix.tool}}
92
+
93
+ icx :
94
+ name : ICX
95
+ env :
96
+ VCPKG_PATH : " ${{github.workspace}}/build/vcpkg/packages/hwloc_x64-windows;${{github.workspace}}/build/vcpkg/packages/tbb_x64-windows;${{github.workspace}}/build/vcpkg/packages/jemalloc_x64-windows"
97
+ BUILD_DIR : " ${{github.workspace}}/build"
98
+ strategy :
99
+ matrix :
100
+ os : ['windows-2019', 'windows-2022']
101
+ build_type : [Debug]
102
+ compiler : [{c: icx, cxx: icx}]
103
+ shared_library : ['ON', 'OFF']
104
+ include :
105
+ - os : windows-2022
106
+ build_type : Release
107
+ compiler : {c: icx, cxx: icx}
108
+ shared_library : ' ON'
109
+
110
+ runs-on : ${{matrix.os}}
111
+
112
+ steps :
113
+ - name : Checkout
114
+ uses : actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
115
+ with :
116
+ fetch-depth : 0
117
+
118
+ - name : Initialize vcpkg
119
+ uses : lukka/run-vcpkg@5e0cab206a5ea620130caf672fce3e4a6b5666a1 # v11.5
120
+ with :
121
+ vcpkgGitCommitId : 3dd44b931481d7a8e9ba412621fa810232b66289
122
+ vcpkgDirectory : ${{env.BUILD_DIR}}/vcpkg
123
+ vcpkgJsonGlob : ' **/vcpkg.json'
124
+
125
+ - name : Install dependencies
126
+ run : vcpkg install
127
+
128
+ - name : Install Ninja
129
+ uses : seanmiddleditch/gha-setup-ninja@96bed6edff20d1dd61ecff9b75cc519d516e6401 # v5
130
+
131
+ - name : Download icx compiler
132
+ env :
133
+ # Link source: https://www.intel.com/content/www/us/en/developer/tools/oneapi/dpc-compiler-download.html
134
+ CMPLR_LINK : " https://registrationcenter-download.intel.com/akdlm/IRC_NAS/15a35578-2f9a-4f39-804b-3906e0a5f8fc/w_dpcpp-cpp-compiler_p_2024.2.1.83_offline.exe"
135
+ run : |
136
+ Invoke-WebRequest -Uri "${{ env.CMPLR_LINK }}" -OutFile compiler_install.exe
137
+
138
+ - name : Install icx compiler
139
+ shell : cmd
140
+ run : |
141
+ start /b /wait .\compiler_install.exe -s -x -f extracted --log extract.log
142
+ extracted\bootstrapper.exe -s --action install --eula=accept -p=NEED_VS2017_INTEGRATION=0 ^
143
+ -p=NEED_VS2019_INTEGRATION=0 -p=NEED_VS2022_INTEGRATION=0 --log-dir=.
144
+
145
+ - name : Configure build
146
+ shell : cmd
147
+ run : |
148
+ call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat"
149
+ call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat"
150
+ cmake ^
151
+ -B ${{env.BUILD_DIR}} ^
152
+ -DCMAKE_PREFIX_PATH="${{env.VCPKG_PATH}}" ^
153
+ -DCMAKE_C_COMPILER=${{matrix.compiler.c}} ^
154
+ -DCMAKE_CXX_COMPILER=${{matrix.compiler.cxx}} ^
155
+ -G Ninja ^
156
+ -DUMF_BUILD_SHARED_LIBRARY=${{matrix.shared_library}} ^
157
+ -DUMF_FORMAT_CODE_STYLE=OFF ^
158
+ -DUMF_DEVELOPER_MODE=ON ^
159
+ -DUMF_BUILD_LIBUMF_POOL_DISJOINT=ON ^
160
+ -DUMF_BUILD_LIBUMF_POOL_JEMALLOC=ON ^
161
+ -DUMF_BUILD_LEVEL_ZERO_PROVIDER=ON ^
162
+ -DUMF_BUILD_CUDA_PROVIDER=ON ^
163
+ -DUMF_TESTS_FAIL_ON_SKIP=ON
164
+
165
+ - name : Build UMF
166
+ shell : cmd
167
+ run : |
168
+ call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat"
169
+ call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat"
170
+ cmake --build ${{env.BUILD_DIR}} --config ${{matrix.build_type}} -j %NUMBER_OF_PROCESSORS%
171
+
172
+ - name : Run tests
173
+ shell : cmd
174
+ working-directory : ${{env.BUILD_DIR}}
175
+ run : |
176
+ call "C:\Program Files (x86)\Intel\oneAPI\setvars.bat"
177
+ call "C:\Program Files (x86)\Intel\oneAPI\setvars-vcvarsall.bat"
178
+ ctest -C ${{matrix.build_type}} --output-on-failure --test-dir test
0 commit comments