[SYCL] Pass explicit async_handler to queue constructor

This commit is contained in:
Tom Deakin 2020-05-11 17:13:36 +01:00
parent 7f1637d679
commit 1d6da069b3
2 changed files with 3 additions and 2 deletions

View File

@ -6,6 +6,7 @@ All notable changes to this project will be documented in this file.
### Changed
- Use cl::sycl::id parameters instead of cl::sycl::item.
- Update local copy of OpenCL C++ header file.
- Ensure correct SYCL queue constructor with explicit async_handler.
### Removed
- Pre-building of kernels in SYCL version to ensure compatibility with SYCL 1.2.1.

View File

@ -45,7 +45,7 @@ SYCLStream<T>::SYCLStream(const unsigned int ARRAY_SIZE, const int device_index)
std::cout << "Driver: " << getDeviceDriver(device_index) << std::endl;
std::cout << "Reduction kernel config: " << dot_num_groups << " groups of size " << dot_wgsize << std::endl;
queue = new cl::sycl::queue(dev, [&](cl::sycl::exception_list l)
queue = new cl::sycl::queue(dev, cl::sycl::async_handler{[&](cl::sycl::exception_list l)
{
bool error = false;
for(auto e: l)
@ -64,7 +64,7 @@ SYCLStream<T>::SYCLStream(const unsigned int ARRAY_SIZE, const int device_index)
{
throw std::runtime_error("SYCL errors detected");
}
});
}});
// Create buffers
d_a = new buffer<T>(array_size);