Innovation Think!

I have been hosting a program, started in March of 2015, called “Innovation Think” with the intent to get people exposed to technology that stimulates innovation either directly or through the exercising of the creative mind.



当我们进入 《勇者大冒险》游戏中,突然发现原来置身在这千年古墓中的我们可以大搞破坏?这是一种什么感觉,那还用说吗,当然是这种feel倍儿爽啦!





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:

Required Product License Upgrade for Intel® Parallel Studio XE 2016

If you have an older version of Intel® Parallel Studio XE or Intel® System Studio, and your subscription period for the current product is active and is eligible for the upgrade, you will be prompted to upgrade your product.

How does it work?

You will receive a product update notification email with a download link.
When you upgrade to the 2016 version you will receive a new serial number to be used at Installation.

You can also upgrade your product by following the steps below:

  • Sviluppatori
  • Partner
  • Professori
  • Studenti
  • Apple OS X*
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 10
  • Microsoft Windows* 8.x
  • C/C++
  • Fortran
  • Strumenti di sviluppo
  • 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. 

    Iscriversi a Partner