Skip to content

Commit 4d59331

Browse files
authored
Merge pull request #26 from codeplaysoftware/update-vec-add
Update vector_addition for new device selector
2 parents 380fe4f + 66ee339 commit 4d59331

File tree

2 files changed

+18
-26
lines changed

2 files changed

+18
-26
lines changed

examples/vector_addition/vector_addition.cpp

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -24,18 +24,6 @@
2424

2525
#include <CL/sycl.hpp>
2626

27-
class CUDASelector : public sycl::device_selector {
28-
public:
29-
int operator()(const sycl::device &device) const override {
30-
if(device.get_platform().get_backend() == sycl::backend::ext_oneapi_cuda){
31-
std::cout << " CUDA device found " << std::endl;
32-
return 1;
33-
} else{
34-
return -1;
35-
}
36-
}
37-
};
38-
3927
int main(int argc, char *argv[]) {
4028
constexpr const size_t N = 100000;
4129
const sycl::range VecSize{N};
@@ -56,7 +44,15 @@ int main(int argc, char *argv[]) {
5644
}
5745
}
5846

59-
sycl::queue myQueue{CUDASelector()};
47+
auto CUDASelector = [](sycl::device const &dev) {
48+
if (dev.get_platform().get_backend() == sycl::backend::ext_oneapi_cuda) {
49+
std::cout << " CUDA device found " << std::endl;
50+
return 1;
51+
} else {
52+
return -1;
53+
}
54+
};
55+
sycl::queue myQueue{CUDASelector};
6056

6157
// Command Group creation
6258
auto cg = [&](sycl::handler &h) {

examples/vector_addition/vector_addition_usm.cpp

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -24,23 +24,19 @@
2424

2525
#include <CL/sycl.hpp>
2626

27-
class CUDASelector : public sycl::device_selector {
28-
public:
29-
int operator()(const sycl::device &device) const override {
30-
if(device.get_platform().get_backend() == sycl::backend::ext_oneapi_cuda){
31-
std::cout << " CUDA device found " << std::endl;
32-
return 1;
33-
} else{
34-
return -1;
35-
}
36-
}
37-
};
38-
3927
int main(int argc, char *argv[]) {
4028
constexpr const size_t n = 100000;
4129

4230
// Create a sycl queue with our CUDASelector
43-
sycl::queue myQueue{CUDASelector()};
31+
auto CUDASelector = [](sycl::device const &dev) {
32+
if (dev.get_platform().get_backend() == sycl::backend::ext_oneapi_cuda) {
33+
std::cout << " CUDA device found " << std::endl;
34+
return 1;
35+
} else {
36+
return -1;
37+
}
38+
};
39+
sycl::queue myQueue{CUDASelector};
4440

4541
// Host input vectors
4642
double *h_a;

0 commit comments

Comments
 (0)