[SYCL 2020] Add nstream kernel

This commit is contained in:
Tom Deakin 2021-02-22 15:19:56 +00:00
parent 5490253342
commit 67da8f6a8e

View File

@ -131,12 +131,13 @@ template <class T>
void SYCLStream<T>::nstream() void SYCLStream<T>::nstream()
{ {
const T scalar = startScalar; const T scalar = startScalar;
queue->submit([&](handler &cgh)
queue->submit([&](sycl::handler &cgh)
{ {
auto ka = d_a->template get_access<access::mode::read_write>(cgh); sycl::accessor ka {d_a, cgh};
auto kb = d_b->template get_access<access::mode::read>(cgh); sycl::accessor kb {d_b, cgh, sycl::read_only};
auto kc = d_c->template get_access<access::mode::read>(cgh); sycl::accessor kc {d_c, cgh, sycl::read_only};
cgh.parallel_for<nstream_kernel>(range<1>{array_size}, [=](id<1> idx) cgh.parallel_for(sycl::range<1>{array_size}, [=](sycl::id<1> idx)
{ {
ka[idx] += kb[idx] + scalar * kc[idx]; ka[idx] += kb[idx] + scalar * kc[idx];
}); });