4
4
5
5
namespace sycl {
6
6
inline namespace _V1 {
7
+
7
8
#ifdef __DPCPP_ENABLE_UNFINISHED_KHR_EXTENSIONS
8
9
namespace khr {
9
10
@@ -75,23 +76,17 @@ void launch(handler &h, range<3> r, const kernel &k, ArgsT &&...args) {
75
76
76
77
template <typename ... ArgsT>
77
78
void launch (queue q, range<1 > r, const kernel &k, ArgsT &&...args) {
78
- submit (q, [&](handler &h) {
79
- parallel_for (h, r, k, std::forward<ArgsT>(args)...);
80
- });
79
+ submit (q, [&](handler &h) { launch (h, r, k, std::forward<ArgsT>(args)...); });
81
80
}
82
81
83
82
template <typename ... ArgsT>
84
83
void launch (queue q, range<2 > r, const kernel &k, ArgsT &&...args) {
85
- submit (q, [&](handler &h) {
86
- parallel_for (h, r, k, std::forward<ArgsT>(args)...);
87
- });
84
+ submit (q, [&](handler &h) { launch (h, r, k, std::forward<ArgsT>(args)...); });
88
85
}
89
86
90
87
template <typename ... ArgsT>
91
88
void launch (queue q, range<3 > r, const kernel &k, ArgsT &&...args) {
92
- submit (q, [&](handler &h) {
93
- parallel_for (h, r, k, std::forward<ArgsT>(args)...);
94
- });
89
+ submit (q, [&](handler &h) { launch (h, r, k, std::forward<ArgsT>(args)...); });
95
90
}
96
91
97
92
template <typename KernelType, typename ... Reductions>
@@ -303,7 +298,7 @@ inline void memcpy(handler &h, void *dest, const void *src, size_t numBytes) {
303
298
inline void memcpy (queue q, void *dest, const void *src, size_t numBytes,
304
299
const sycl::detail::code_location &codeLoc =
305
300
sycl::detail::code_location::current ()) {
306
- q. submit ([&](handler &h) { memcpy (h , dest, src, numBytes); } , codeLoc);
301
+ sycl::ext::oneapi::experimental:: memcpy (q , dest, src, numBytes, codeLoc);
307
302
}
308
303
309
304
template <typename T>
@@ -335,7 +330,8 @@ void copy(queue q, const SrcT *src,
335
330
accessor<DestT, DestDims, DestMode, target::device> dest,
336
331
const sycl::detail::code_location &codeLoc =
337
332
sycl::detail::code_location::current ()) {
338
- q.submit (
333
+ submit (
334
+ q,
339
335
[&](handler &h) {
340
336
h.require (dest);
341
337
copy (h, src, dest);
@@ -348,7 +344,8 @@ void copy(queue q, std::shared_ptr<SrcT> src,
348
344
accessor<DestT, DestDims, DestMode, target::device> dest,
349
345
const sycl::detail::code_location &codeLoc =
350
346
sycl::detail::code_location::current ()) {
351
- q.submit (
347
+ submit (
348
+ q,
352
349
[&](handler &h) {
353
350
h.require (dest);
354
351
copy (h, src, dest);
@@ -373,7 +370,8 @@ void copy(queue q, accessor<SrcT, SrcDims, SrcMode, target::device> src,
373
370
DestT *dest,
374
371
const sycl::detail::code_location &codeLoc =
375
372
sycl::detail::code_location::current ()) {
376
- q.submit (
373
+ submit (
374
+ q,
377
375
[&](handler &h) {
378
376
h.require (src);
379
377
copy (h, src, dest);
@@ -386,7 +384,8 @@ void copy(queue q, accessor<SrcT, SrcDims, SrcMode, target::device> src,
386
384
std::shared_ptr<DestT> dest,
387
385
const sycl::detail::code_location &codeLoc =
388
386
sycl::detail::code_location::current ()) {
389
- q.submit (
387
+ submit (
388
+ q,
390
389
[&](handler &h) {
391
390
h.require (src);
392
391
copy (h, src, dest);
@@ -407,7 +406,8 @@ void copy(queue q, accessor<SrcT, SrcDims, SrcMode, target::device> src,
407
406
accessor<DestT, DestDims, DestMode, target::device> dest,
408
407
const sycl::detail::code_location &codeLoc =
409
408
sycl::detail::code_location::current ()) {
410
- q.submit (
409
+ submit (
410
+ q,
411
411
[&](handler &h) {
412
412
h.require (src);
413
413
h.require (dest);
@@ -422,7 +422,7 @@ inline void memset(handler &h, void *ptr, int value, size_t numBytes) {
422
422
inline void memset (queue q, void *ptr, int value, size_t numBytes,
423
423
const sycl::detail::code_location &codeLoc =
424
424
sycl::detail::code_location::current ()) {
425
- q. submit ([&](handler &h) { memset (h , ptr, value, numBytes); } , codeLoc);
425
+ sycl::ext::oneapi::experimental:: memset (q , ptr, value, numBytes, codeLoc);
426
426
}
427
427
428
428
template <typename T>
@@ -440,14 +440,15 @@ template <typename T>
440
440
void fill (queue q, T *ptr, const T &pattern, size_t count,
441
441
const sycl::detail::code_location &codeLoc =
442
442
sycl::detail::code_location::current ()) {
443
- q. submit ([&](handler &h) { fill (h, ptr, pattern, count); }, codeLoc);
443
+ submit (q, [&](handler &h) { fill (h, ptr, pattern, count); }, codeLoc);
444
444
}
445
445
446
446
template <typename T, int Dims, access_mode Mode>
447
447
void fill (queue q, accessor<T, Dims, Mode, target::device> dest, const T &src,
448
448
const sycl::detail::code_location &codeLoc =
449
449
sycl::detail::code_location::current ()) {
450
- q.submit (
450
+ submit (
451
+ q,
451
452
[&](handler &h) {
452
453
h.require (dest);
453
454
fill (h, dest, src);
@@ -464,7 +465,8 @@ template <typename T, int Dims, access_mode Mode>
464
465
void update_host (queue q, accessor<T, Dims, Mode, target::device> acc,
465
466
const sycl::detail::code_location &codeLoc =
466
467
sycl::detail::code_location::current ()) {
467
- q.submit (
468
+ submit (
469
+ q,
468
470
[&](handler &h) {
469
471
h.require (acc);
470
472
update_host (h, acc);
@@ -478,7 +480,7 @@ inline void prefetch(handler &h, void *ptr, size_t numBytes) {
478
480
inline void prefetch (queue q, void *ptr, size_t numBytes,
479
481
const sycl::detail::code_location &codeLoc =
480
482
sycl::detail::code_location::current ()) {
481
- q. submit ([&](handler &h) { prefetch (h, ptr, numBytes); }, codeLoc);
483
+ submit (q, [&](handler &h) { prefetch (h, ptr, numBytes); }, codeLoc);
482
484
}
483
485
484
486
inline void mem_advise (handler &h, void *ptr, size_t numBytes, int advice) {
@@ -488,7 +490,8 @@ inline void mem_advise(handler &h, void *ptr, size_t numBytes, int advice) {
488
490
inline void mem_advise (queue q, void *ptr, size_t numBytes, int advice,
489
491
const sycl::detail::code_location &codeLoc =
490
492
sycl::detail::code_location::current ()) {
491
- q.submit ([&](handler &h) { mem_advise (h, ptr, numBytes, advice); }, codeLoc);
493
+ sycl::ext::oneapi::experimental::mem_advise (q, ptr, numBytes, advice,
494
+ codeLoc);
492
495
}
493
496
494
497
inline void command_barrier (handler &h) { h.ext_oneapi_barrier (); }
0 commit comments