Multiple Map/Unmap buffer

According to OpenCL 1.2 spec:

​clEnqueueMapBuffer and clEnqueueMapImage increment the mapped count of the memory object. The initial mapped count value of a memory object is zero. Multiple calls to clEnqueueMapBuffer or clEnqueueMapImage on the same memory object will increment this mapped count by appropriate number of calls. clEnqueueUnmapMemObject decrements the mapped count of the memory object.​

kernel “vector + vector”, return the right result only if vector's length is a multiple of 64

I'm new to OpenCL. And I'm trying to run a kernel “vector + vector”, I could get the right result only if vector's length equals  a multiple of 64. For example, I will get the output below when I set the length to 16. 

Compiling OpenCL 2.0 atomics


I am trying to compile a simple kernel using OpenCL 2.0 atomics using exactly the device, driver, and kernel described in:

However, I cannot even get the kernel to compile, as it does not seem to recognize the atomic types and functions. My error log (along with some environment info) is:

change image format of image object in opencl

I have written a small code to create an image object in opencl as below:

img_fmt.image_channel_order = CL_R;
img_fmt.image_channel_data_type = CL_UNSIGNED_INT8;      
memobj_in_luma = clCreateImage2D(p->context, CL_MEM_READ_ONLY, &img_fmt, p->width, p->height, 0, NULL, &ret);

After creating this object I want to change the image format to CL_RGBA. Is there any way to do this?

HD4400 bitwise and operation on uchar2 data

we are seeing different results when implementing "bitwise and" operation in OpenCL kernel working on uchar2 data. The OpenCL kernel code like this:
uchar2 val1;
uchar2 val2;
uchar3 res;
res = val1 & val2;

produce wrong results, while code like below:

res = (uchar2)(val1.x & val2.x, val1.y & val2.y)
produce correct result.

BTW, the same behaviour detected for bitwise or/xor and uchar3/4 data, although attached test case was prepared only for "bitwise and" on uchar2 data. 

What Resources Are Available to Developers Using Intel® INDE?

New to Intel® Integrated Native Develop Experience (also called Intel® INDE)? Are you confused as to what is available and how it can help you? INDE is a cross-platform productivity suite, which provides developers many resources and tools to develop, debug and optimize their applications, while achieving native performance and look-and-feel. In this article, we will introduce the components of INDE and show how developers can use them to create new applications and optimize existing applications. To start with Intel® INDE provides support for IDE integration.
Assine o OpenCL*