Hello,
I Create buffer object with CL_MEM_ALLOC_HOST_PTR in Linux, it is said in program guide that memory object is created in device memory, but i found it is created in host memory, as in Windows.
Where is the memory object location, in device memory or in host memory?
PS, I use Radeon HD 6930 card, driver is 12.2. Host OS is Fedora 14 (x86_64), and AMD sdk is 2.6.
Thanks a lot!
The buffer is created in host memory, but if you try to bind the buffer to a kernel, then the buffer will be migrated to the device.
You can use host memory for source and destination of copies without worrying about migration.
Thanks for your answer!
That means zero copy is not supported in Linux, is it right?
Then how about Windows, if create buffer object with CL_MEM_ALLOC_HOST_PTR in Windows, is zero copy supported?
Thanks!
Zero copy is supported whenever VM is supported. See the "driver version" in the device info query.