I have a 2D image object which has a new image written to it for every iteration of the kernel running. The code correctly compiles and runs on NVIDIA hardware but on a Radeon 5770, crashes. I'm using Windows 7 64-bit with the latest drivers and SDK.
I create the 2D image as follows (in a loop with iterator i):
t_dev_img = clCreateImage2D(context, CL_MEM_READ_ONLY | CL_MEM_ALLOC_HOST_PTR, &img_format, img_dim[0], img_dim[1], 0, NULL, &error);
This works successfully. The image format I use is initiated as:
size_t img_origin[3] = {0, 0, 0};
size_t img_region[3] = {img_dim[0], img_dim[1], 1};
size_t img_row_pitch = img_dim[0] * sizeof(float);
cl_image_format img_format;
img_format.image_channel_order = CL_RGBA;
img_format.image_channel_data_type = CL_FLOAT;
The clEnqueueWriteImage is called as follows (in a loop with iterator i):
clEnqueueWriteImage(command_queue, t_dev_img, CL_FALSE, img_origin, img_region, img_row_pitch, 0, cbi->img, 0, NULL, &img_event);
When I then called clFinish, it crashes.
achinda99,
Could you provide a testcase to reproduce the issue. Its easier to track down and solve the issue that way.