I have a problem. I want to implement transfer using pinned host memory (NOT zero copy buffer).
According to table memory object in AMD APP SDK, it can be achieve by using CL_MEM_ALLOC_HOST_PTR + using CL_Enqueue_Map_Buffer.
If I use it,the result is zero copy buffer since VM is enabled by default.
According to table, to achieve transfer data using pinned host memory, we can use CL_MEM_ALLOC_HOST_PTR + using CL_Enqueue_Map_Buffer without VM.
So, How to disable virtual memory (VM) ??
table 5.2 tells where is buffer placed if you use it as kernel argument. buffer created with CL_MEM_ALLOC_HOST_PTR is always pinned host memory until you use it as kernel argument. regardless if is VM enabled or not. GPU with VM wlll modify buffer directly through PCIe. the system without VM must copy it to device memory.