cl_mem buffer = clCreateBuffer(context, CL_MEM_READ_WRITE, size, NULL, &status);
no host pointer
Raistmer,
On linux this works for me. I allocate a buffer of 128 MB on the GPU and the process
size on the host is only about 40MB total. Are you on linux or windows?
I have not checked this on linux but on windows OpenCL always allocates one temporary buffer. Even if you use CL_DEVICE_TYPE_CPU and specify CL_USE_MEM_HOST_PTR in buffer creation, it will still allocate a temp buffer on host.
This creates problems in porting existing apps to OpenCL which require large buffers.