Visible to Intel only — GUID: GUID-FB8CA301-E6AA-4A1E-B287-9913601633C9
Visible to Intel only — GUID: GUID-FB8CA301-E6AA-4A1E-B287-9913601633C9
Mismatched Queue
Occurs when a pointer allocated for a certain queue is used for a different queue.
ID |
Code Location |
Description |
---|---|---|
1 |
Allocation site |
Represents source location of memory allocation in a Data Parallel C++ (DPC++) code. |
DPC++ programs use queues for planning tasks for kernels. Each pointer is allocated for a certain device and is associated with a certain queue. Using a pointer allocated for one queue with another queue results in an error.
DPC++ Example
cl::sycl::queue queue_1(cl::sycl::cpu_selector{}); cl::sycl::queue queue_2(cl::sycl::cpu_selector{}); int* deviceData = (int*)sycl::malloc_device(sizeInBytes, queue_1.get_device(), queue_1.get_context()); queue_2.memcpy(deviceData, hostData, sizeInBytes).wait(); // it should be queue_1.memcpy(deviceData, hostData, sizeInBytes).wait();
Possible Correction Strategies
Consider reducing the amount of queues or using one queue if possible.
If you are using multiple queues, consider using shared memory pointers.
Did you find the information on this page useful?
Feedback Message
Characters remaining: