37
37
#include "utils/type_dispatch.hpp"
38
38
#include "utils/type_utils.hpp"
39
39
40
+ #include "dpnp_utils.hpp"
41
+
42
+ static_assert(INTEL_MKL_VERSION >= __INTEL_MKL_2023_2_0_VERSION_REQUIRED,
43
+ "OneMKL does not meet minimum version requirement");
44
+
40
45
// OneMKL namespace with VM functions
41
46
namespace mkl_vm = oneapi::mkl::vm;
42
47
@@ -272,7 +277,6 @@ bool need_to_call_unary_ufunc(sycl::queue exec_q,
272
277
dpctl::tensor::usm_ndarray dst,
273
278
const dispatchT &dispatch_vector)
274
279
{
275
- #if INTEL_MKL_VERSION >= 20230002
276
280
// check type_nums
277
281
int src_typenum = src.get_typenum();
278
282
int dst_typenum = dst.get_typenum();
@@ -356,16 +360,6 @@ bool need_to_call_unary_ufunc(sycl::queue exec_q,
356
360
return false;
357
361
}
358
362
return true;
359
- #else
360
- // In OneMKL 2023.1.0 the call of oneapi::mkl::vm::div() is going to dead
361
- // lock inside ~usm_wrapper_to_host()->{...; q_->wait_and_throw(); ...}
362
-
363
- (void)exec_q;
364
- (void)src;
365
- (void)dst;
366
- (void)dispatch_vector;
367
- return false;
368
- #endif // INTEL_MKL_VERSION >= 20230002
369
363
}
370
364
371
365
template <typename dispatchT>
@@ -375,7 +369,6 @@ bool need_to_call_binary_ufunc(sycl::queue exec_q,
375
369
dpctl::tensor::usm_ndarray dst,
376
370
const dispatchT &dispatch_vector)
377
371
{
378
- #if INTEL_MKL_VERSION >= 20230002
379
372
// check type_nums
380
373
int src1_typenum = src1.get_typenum();
381
374
int src2_typenum = src2.get_typenum();
@@ -465,17 +458,6 @@ bool need_to_call_binary_ufunc(sycl::queue exec_q,
465
458
return false;
466
459
}
467
460
return true;
468
- #else
469
- // In OneMKL 2023.1.0 the call of oneapi::mkl::vm::div() is going to dead
470
- // lock inside ~usm_wrapper_to_host()->{...; q_->wait_and_throw(); ...}
471
-
472
- (void)exec_q;
473
- (void)src1;
474
- (void)src2;
475
- (void)dst;
476
- (void)dispatch_vector;
477
- return false;
478
- #endif // INTEL_MKL_VERSION >= 20230002
479
461
}
480
462
481
463
template <typename dispatchT,
0 commit comments