File tree Expand file tree Collapse file tree 1 file changed +10
-6
lines changed Expand file tree Collapse file tree 1 file changed +10
-6
lines changed Original file line number Diff line number Diff line change @@ -54,10 +54,9 @@ class QMgrHelper
54
54
public:
55
55
using QVec = vector_class<queue>;
56
56
57
- static QVec get_opencl_cpu_queues ()
58
- {
59
- QVec queues;
60
-
57
+ static QVec* init_opencl_cpu_queues () {
58
+ QVec *queues = new QVec ();
59
+
61
60
for (auto &p : platform::get_platforms ()) {
62
61
auto Devices = p.get_devices ();
63
62
auto Ctx = context (Devices);
@@ -66,13 +65,18 @@ class QMgrHelper
66
65
auto devty = d.get_info <info::device::device_type>();
67
66
auto be = p.get_backend ();
68
67
if (devty == info::device_type::cpu && be == backend::opencl) {
69
- queues. emplace_back (Ctx, d);
68
+ queues-> emplace_back (Ctx, d);
70
69
}
71
70
}
72
71
}
73
-
74
72
return queues;
75
73
}
74
+
75
+ static QVec& get_opencl_cpu_queues ()
76
+ {
77
+ static QVec* queues = init_opencl_cpu_queues ();
78
+ return *queues;
79
+ }
76
80
77
81
static QVec get_opencl_gpu_queues ()
78
82
{
You can’t perform that action at this time.
0 commit comments