File tree Expand file tree Collapse file tree 2 files changed +18
-26
lines changed Expand file tree Collapse file tree 2 files changed +18
-26
lines changed Original file line number Diff line number Diff line change 24
24
25
25
#include < CL/sycl.hpp>
26
26
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
-
39
27
int main (int argc, char *argv[]) {
40
28
constexpr const size_t N = 100000 ;
41
29
const sycl::range VecSize{N};
@@ -56,7 +44,15 @@ int main(int argc, char *argv[]) {
56
44
}
57
45
}
58
46
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};
60
56
61
57
// Command Group creation
62
58
auto cg = [&](sycl::handler &h) {
Original file line number Diff line number Diff line change 24
24
25
25
#include < CL/sycl.hpp>
26
26
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
-
39
27
int main (int argc, char *argv[]) {
40
28
constexpr const size_t n = 100000 ;
41
29
42
30
// 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};
44
40
45
41
// Host input vectors
46
42
double *h_a;
You can’t perform that action at this time.
0 commit comments