Hi folks,

My first few steps with OpenCL and I am facing this below problem.

The Kernel signature looks like

Code :
__kernel void knapsack(__global value_type *val,
                       __global weight_type *wgt,
                       __global value_type *soln,
		       __global int *i)

- value_type and weight_type are unsigned int
- val, wgt, soln and i are allocated using clCreateBuffer
- val, wgt (5 elements each) are of type CL_MEM_READ_ONLY and soln (126 elements) and i (single element) are CL_MEM_READ_WRITE

I set the arguments as required and launch the kernel. I enqueue a blocking read on 'i' to find the following

* if in the kernel, a write is performed on soln, the clEnqueueReadBuffer returns with a CL_OUT_OF_RESOURCES
* if no writes are performed (reads are OK, writes on 'i' are OK) on soln the clEnqueueReadBuffer returns with a CL_SUCCESS

I would like to know if I am doing something wrong.
I am using an Nvidia card. Please let me know if you need more information.