Hi,
I try to copy host data to shared virtual memory buffer using clEnqueueSVMMemcpy (and the other way), but
it does not work. It does not copy the data. Example in the attached file (ofc OpenCL 2.0 is required).
Everything is fine if I use map/unmap operations instead of clEnqueueSVMMemcpy to copy data between host
array and svm buffer.
Environment:
Device: AMD Radeon R9 380OS: Linux Mint 17.2 (3.16) x64
Platform Version: OpenCL 2.0 AMD-APP (1800.11)
Device OpenCL C version: OpenCL C 2.0
AMD GPU Drivers: 15.9 (15.201.1151)
I check and when I assign an event to clEnqueueSVMMemcpy() operation and want to get CL_PROFILING_COMMAND_START and CL_PROFILING_COMMAND_END using clGetEventProfilingInfo() I get error
CL_PROFILING_INFO_NOT_AVAILABLE (with CL_QUEUE_PROFILING_ENABLE set ofc). I can't even wait for that event, because I get CL_EXEC_STATUS_ERROR_FOR_EVENTS_IN_WAIT_LIST.
If I measure execution time with std::chrono it's always 0 ms, no matter how big copied data is.