@@ -181,6 +181,58 @@ jobs:
181181 echo "Grep for SubmissionInfo:"
182182 sudo nm -A /opt/intel/oneapi/mkl/2025.1/lib/libmkl_sycl_vm.so.5 | grep SubmissionInfo
183183
184+ - name : Create test file
185+ 186+ with :
187+ path : ' example'
188+ isAbsolutePath : false
189+ file : ' test.cpp'
190+ content : |
191+ #include <sycl/sycl.hpp>
192+ #include <oneapi/mkl.hpp>
193+
194+ namespace mkl_vm = oneapi::mkl::vm;
195+
196+ int main(void)
197+ {
198+ sycl::queue q{sycl::default_selector_v};
199+
200+ const auto &dev = q.get_device();
201+ std::cout << "Device: " << dev.get_info<sycl::info::device::name>() << std::endl;
202+ std::cout << "Driver_version: " << dev.get_info<sycl::info::device::driver_version>() << std::endl;
203+
204+ using T = float;
205+ constexpr std::size_t size = 10;
206+
207+ T *data = sycl::malloc_device<T>(size, q);
208+ T *res = sycl::malloc_device<T>(size, q);
209+
210+ auto fill_ev = q.fill<T>(data, T(-1.0), size);
211+
212+ mkl_vm::abs(q, size, data, res, {fill_ev}).wait_and_throw();
213+
214+ sycl::free(data, q);
215+ sycl::free(res, q);
216+
217+ std::cout << "Exit" << std::endl;
218+ return 0;
219+ }
220+
221+ - name : Cat test file
222+ run : cat example/test.cpp
223+
224+ - name : Build test file
225+ run : |
226+ [ -f /opt/intel/oneapi/setvars.sh ] && source /opt/intel/oneapi/setvars.sh
227+ icpx -fsycl test.cpp -DMKL_ILP64 -qmkl-ilp64=parallel -qtbb -o test.x
228+ working-directory : example
229+
230+ - name : Run test file
231+ run : |
232+ [ -f /opt/intel/oneapi/setvars.sh ] && source /opt/intel/oneapi/setvars.sh
233+ ./test.x
234+ working-directory : example
235+
184236 new-release-old-compiler :
185237 name : Install oneAPI with 2025.1, but DPC++ from 2025.0
186238 runs-on : ubuntu-latest
@@ -243,6 +295,58 @@ jobs:
243295 echo "Grep for SubmissionInfo:"
244296 sudo nm -A /opt/intel/oneapi/mkl/2025.1/lib/libmkl_sycl_vm.so.5 | grep SubmissionInfo
245297
298+ - name : Create test file
299+ 300+ with :
301+ path : ' example'
302+ isAbsolutePath : false
303+ file : ' test.cpp'
304+ content : |
305+ #include <sycl/sycl.hpp>
306+ #include <oneapi/mkl.hpp>
307+
308+ namespace mkl_vm = oneapi::mkl::vm;
309+
310+ int main(void)
311+ {
312+ sycl::queue q{sycl::default_selector_v};
313+
314+ const auto &dev = q.get_device();
315+ std::cout << "Device: " << dev.get_info<sycl::info::device::name>() << std::endl;
316+ std::cout << "Driver_version: " << dev.get_info<sycl::info::device::driver_version>() << std::endl;
317+
318+ using T = float;
319+ constexpr std::size_t size = 10;
320+
321+ T *data = sycl::malloc_device<T>(size, q);
322+ T *res = sycl::malloc_device<T>(size, q);
323+
324+ auto fill_ev = q.fill<T>(data, T(-1.0), size);
325+
326+ mkl_vm::abs(q, size, data, res, {fill_ev}).wait_and_throw();
327+
328+ sycl::free(data, q);
329+ sycl::free(res, q);
330+
331+ std::cout << "Exit" << std::endl;
332+ return 0;
333+ }
334+
335+ - name : Cat test file
336+ run : cat example/test.cpp
337+
338+ - name : Build test file
339+ run : |
340+ [ -f /opt/intel/oneapi/setvars.sh ] && source /opt/intel/oneapi/setvars.sh
341+ icpx -fsycl test.cpp -DMKL_ILP64 -qmkl-ilp64=parallel -qtbb -o test.x
342+ working-directory : example
343+
344+ - name : Run test file
345+ run : |
346+ [ -f /opt/intel/oneapi/setvars.sh ] && source /opt/intel/oneapi/setvars.sh
347+ ./test.x
348+ working-directory : example
349+
246350 generate-coverage :
247351 name : Generate coverage and push to Coveralls.io
248352 runs-on : ubuntu-latest
0 commit comments