Skip to content

Commit de80230

Browse files
authored
Merge pull request #2577 from IgorOchocki/fix_2029
Fix ONSAM-2029
2 parents 9ca331e + 139bd59 commit de80230

File tree

1 file changed

+6
-7
lines changed
  • DirectProgramming/C++SYCL/SpectralMethods/DiscreteCosineTransform/src

1 file changed

+6
-7
lines changed

DirectProgramming/C++SYCL/SpectralMethods/DiscreteCosineTransform/src/DCT.cpp

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,9 @@ SYCL_EXTERNAL void MatrixMultiply(multi_ptr<const float, access::address_space::
6161
}
6262

6363
// Processes an individual 8x8 subset of image data
64-
SYCL_EXTERNAL void ProcessBlock(multi_ptr<const rgb, access::address_space::global_space, (sycl::access::decorated)2> indataset, rgb* outdataset,
65-
multi_ptr<const float, access::address_space::global_space, (sycl::access::decorated)2> dct,
66-
multi_ptr<const float, access::address_space::global_space, (sycl::access::decorated)2> dctinv,
64+
SYCL_EXTERNAL void ProcessBlock(multi_ptr<const rgb, access::address_space::global_space, sycl::access::decorated::no> indataset, rgb* outdataset,
65+
multi_ptr<const float, access::address_space::global_space, sycl::access::decorated::no> dct,
66+
multi_ptr<const float, access::address_space::global_space, sycl::access::decorated::no> dctinv,
6767
int start_index, int width) {
6868
float interim[block_size], product[block_size], red_input[block_size],
6969
blue_input[block_size], green_input[block_size], temp[block_size];
@@ -225,7 +225,6 @@ void ProcessImage(rgb* indataset, rgb* outdataset, int width, int height) {
225225
buffer outdata_buf(outdataset, range<1>(image_size));
226226
buffer dct_buf(dct, range<1>(block_size));
227227
buffer dctinv_buf(dctinv, range<1>(block_size));
228-
229228
q.submit([&](handler& h) {
230229
auto i_acc = indata_buf.get_access(h,read_only);
231230
auto o_acc = outdata_buf.get_access(h);
@@ -236,12 +235,12 @@ void ProcessImage(rgb* indataset, rgb* outdataset, int width, int height) {
236235
h.parallel_for(
237236
range<2>(width / block_dims, height / block_dims), [=](auto idx) {
238237
int start_index = idx[0] * block_dims + idx[1] * block_dims * width;
239-
ProcessBlock(i_acc.get_pointer(), o_acc.get_pointer(),
240-
d_acc.get_pointer(), di_acc.get_pointer(), start_index,
238+
ProcessBlock(i_acc.get_multi_ptr<sycl::access::decorated::no>(), o_acc.get_multi_ptr<sycl::access::decorated::no>().get(),
239+
d_acc.get_multi_ptr<sycl::access::decorated::no>(), di_acc.get_multi_ptr<sycl::access::decorated::no>(), start_index,
241240
width);
242241
});
243242
});
244-
q.wait_and_throw();
243+
//q.wait_and_throw();
245244
} catch (sycl::exception e) {
246245
std::cout << "SYCL exception caught: " << e.what() << "\n";
247246
exit(1);

0 commit comments

Comments
 (0)