@@ -196,7 +196,7 @@ void Iso3dfdIterationSLM(sycl::nd_item<3> &it, float *next, float *prev,
196
196
*
197
197
*/
198
198
void Iso3dfdIterationGlobal (sycl::nd_item<3 > &it, float *next, float *prev,
199
- float *vel, const float *coeff, int nx, int nxy,
199
+ const float *vel, const float *coeff, int nx, int nxy,
200
200
int bx, int by, int z_offset, int full_end_z) {
201
201
// We compute the start and the end position in the grid
202
202
// for each work-item.
@@ -381,17 +381,17 @@ bool Iso3dfdDevice(sycl::queue &q, float *ptr_next, float *ptr_prev,
381
381
if (i % 2 == 0 )
382
382
h.parallel_for (
383
383
nd_range (global_nd_range, local_nd_range), [=](auto it) {
384
- Iso3dfdIterationSLM (it, next.get_pointer (), prev.get_pointer (),
385
- vel.get_pointer (), coeff.get_pointer (),
386
- tab.get_pointer (), nx, nxy, bx, by,
384
+ Iso3dfdIterationSLM (it, next.get (), prev.get (),
385
+ vel.get (), coeff.get (),
386
+ tab.get (), nx, nxy, bx, by,
387
387
n3_block, end_z);
388
388
});
389
389
else
390
390
h.parallel_for (
391
391
nd_range (global_nd_range, local_nd_range), [=](auto it) {
392
- Iso3dfdIterationSLM (it, prev.get_pointer (), next.get_pointer (),
393
- vel.get_pointer (), coeff.get_pointer (),
394
- tab.get_pointer (), nx, nxy, bx, by,
392
+ Iso3dfdIterationSLM (it, prev.get (), next.get (),
393
+ vel.get (), coeff.get (),
394
+ tab.get (), nx, nxy, bx, by,
395
395
n3_block, end_z);
396
396
});
397
397
@@ -408,17 +408,25 @@ bool Iso3dfdDevice(sycl::queue &q, float *ptr_next, float *ptr_prev,
408
408
if (i % 2 == 0 )
409
409
h.parallel_for (
410
410
nd_range (global_nd_range, local_nd_range), [=](auto it) {
411
- Iso3dfdIterationGlobal (it, next.get_pointer (),
412
- prev.get_pointer (), vel.get_pointer (),
413
- coeff.get_pointer (), nx, nxy, bx, by,
411
+ auto next_ptr = next.template get_multi_ptr <sycl::access ::decorated::no>();
412
+ auto prev_ptr = prev.template get_multi_ptr <sycl::access ::decorated::no>();
413
+ auto vel_ptr = vel.template get_multi_ptr <sycl::access ::decorated::no>();
414
+ auto coeff_ptr = coeff.template get_multi_ptr <sycl::access ::decorated::no>();
415
+ Iso3dfdIterationGlobal (it, next_ptr.get (),
416
+ prev_ptr.get (), vel_ptr.get (),
417
+ coeff_ptr.get (), nx, nxy, bx, by,
414
418
n3_block, end_z);
415
419
});
416
420
else
417
421
h.parallel_for (
418
422
nd_range (global_nd_range, local_nd_range), [=](auto it) {
419
- Iso3dfdIterationGlobal (it, prev.get_pointer (),
420
- next.get_pointer (), vel.get_pointer (),
421
- coeff.get_pointer (), nx, nxy, bx, by,
423
+ auto next_ptr = next.template get_multi_ptr <sycl::access ::decorated::no>();
424
+ auto prev_ptr = prev.template get_multi_ptr <sycl::access ::decorated::no>();
425
+ auto vel_ptr = vel.template get_multi_ptr <sycl::access ::decorated::no>();
426
+ auto coeff_ptr = coeff.template get_multi_ptr <sycl::access ::decorated::no>();
427
+ Iso3dfdIterationGlobal (it, prev_ptr.get (),
428
+ next_ptr.get (), vel_ptr.get (),
429
+ coeff_ptr.get (), nx, nxy, bx, by,
422
430
n3_block, end_z);
423
431
});
424
432
#endif
0 commit comments