<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic We were not able to reproduce in OpenCL* for CPU</title>
    <link>https://community.intel.com/t5/OpenCL-for-CPU/OpenCL-Deconstruction-Fails/m-p/961670#M2196</link>
    <description>&lt;P&gt;We were not able to reproduce the issue you are having. Can you share your system configuration? Also what SDK version and driver version are you using?&lt;/P&gt;</description>
    <pubDate>Tue, 05 Mar 2013 22:20:33 GMT</pubDate>
    <dc:creator>Chuck_De_Sylva</dc:creator>
    <dc:date>2013-03-05T22:20:33Z</dc:date>
    <item>
      <title>OpenCL Deconstruction Fails</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/OpenCL-Deconstruction-Fails/m-p/961668#M2194</link>
      <description>&lt;P&gt;Hi there,&lt;/P&gt;
&lt;P&gt;it seems that there is a bug in the openCL implementation. With that Code:&lt;/P&gt;
&lt;P&gt;[cpp]&lt;BR /&gt;for (int run = 0; run &amp;lt; 10; run++) {&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;cl_int iError; &amp;nbsp;&amp;nbsp; &lt;BR /&gt;cl_uint uiPlatformCount; &amp;nbsp;&amp;nbsp; &lt;BR /&gt;clGetPlatformIDs(0, nullptr, &amp;amp;uiPlatformCount); &amp;nbsp;&amp;nbsp; &lt;BR /&gt;cl_platform_id* pPlatformIDs = new cl_platform_id[uiPlatformCount]; &amp;nbsp;&amp;nbsp; &lt;BR /&gt;clGetPlatformIDs(uiPlatformCount, pPlatformIDs, nullptr); &amp;nbsp;&amp;nbsp; &lt;BR /&gt;for (int i = 0; i &amp;lt; (int)uiPlatformCount; i++) &amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; cl_platform_id pID = pPlatformIDs&lt;I&gt;; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; char cPlatformInfo[1024]; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; iError = clGetPlatformInfo(pID, CL_PLATFORM_NAME, sizeof(cPlatformInfo), cPlatformInfo, nullptr); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; std::wcout &amp;lt;&amp;lt; "&amp;nbsp; Plattform Name:\t" &amp;lt;&amp;lt; cPlatformInfo &amp;lt;&amp;lt;&amp;nbsp; std::endl; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; cl_uint uiDeviceCount; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; iError = clGetDeviceIDs(pID, CL_DEVICE_TYPE_ALL, 0, nullptr, &amp;amp;uiDeviceCount); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; cl_device_id* pDeviceIDs = new cl_device_id[uiDeviceCount]; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; iError = clGetDeviceIDs(pID, CL_DEVICE_TYPE_ALL, uiDeviceCount, pDeviceIDs, &amp;amp;uiDeviceCount); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; cl_context ctx; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; cl_context_properties pContextProperties[3] = {CL_CONTEXT_PLATFORM, (cl_context_properties)pID, 0}; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; ctx = clCreateContext(pContextProperties, uiDeviceCount, pDeviceIDs,&amp;nbsp;nullptr, nullptr, &amp;amp;iError);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;for (int j = 0; j &amp;lt; (int)uiDeviceCount; j++) &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp; { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_device_id dID = pDeviceIDs&lt;J&gt;; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_command_queue queue = clCreateCommandQueue(ctx, dID, CL_QUEUE_PROFILING_ENABLE, &amp;amp;iError); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; clReleaseCommandQueue(queue);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp; clReleaseContext(ctx); &amp;nbsp;&amp;nbsp; &lt;BR /&gt;} &lt;BR /&gt;}&lt;BR /&gt;[/cpp]&lt;/J&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;Deconstruction with NVidia platform works but won't work with intel platform. But when you use the intel platform by compiling a Kernel and release it again, it works.&lt;/P&gt;
&lt;P&gt;[cpp]&lt;BR /&gt;for&amp;nbsp;(int&amp;nbsp;run&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;run&amp;nbsp;&amp;lt;&amp;nbsp;10;&amp;nbsp;run++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp; cl_int&amp;nbsp;iError; cl_uint&amp;nbsp;uiPlatformCount;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; clGetPlatformIDs(0,&amp;nbsp;nullptr,&amp;nbsp;&amp;amp;uiPlatformCount);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; cl_platform_id*&amp;nbsp;pPlatformIDs&amp;nbsp;=&amp;nbsp;new&amp;nbsp;cl_platform_id[uiPlatformCount];&lt;BR /&gt;&amp;nbsp;&amp;nbsp; clGetPlatformIDs(uiPlatformCount,&amp;nbsp;pPlatformIDs,&amp;nbsp;nullptr);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; for&amp;nbsp;(int&amp;nbsp;i&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;i&amp;nbsp;&amp;lt;&amp;nbsp;(int)uiPlatformCount;&amp;nbsp;i++) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_platform_id&amp;nbsp;pID&amp;nbsp;=&amp;nbsp;pPlatformIDs&lt;I&gt;; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char&amp;nbsp;cPlatformInfo[1024];&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; iError&amp;nbsp;=&amp;nbsp;clGetPlatformInfo(pID,&amp;nbsp;CL_PLATFORM_NAME,&amp;nbsp;sizeof(cPlatformInfo),&amp;nbsp;cPlatformInfo,&amp;nbsp;nullptr); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; std::wcout&amp;nbsp;&amp;lt;&amp;lt;&amp;nbsp;"&amp;nbsp;&amp;nbsp;Plattform&amp;nbsp;Name:\t"&amp;nbsp;&amp;lt;&amp;lt;&amp;nbsp;cPlatformInfo&amp;nbsp;&amp;lt;&amp;lt;&amp;nbsp;&amp;nbsp;std::endl;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char&amp;nbsp;*sIntel&amp;nbsp;=&amp;nbsp;"Intel"; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(strstr(cPlatformInfo,&amp;nbsp;sIntel)) { &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //continue; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_uint&amp;nbsp;uiDeviceCount;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iError&amp;nbsp;=&amp;nbsp;clGetDeviceIDs(pID,&amp;nbsp;CL_DEVICE_TYPE_ALL,&amp;nbsp;0,&amp;nbsp;nullptr,&amp;nbsp;&amp;amp;uiDeviceCount);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_device_id*&amp;nbsp;pDeviceIDs&amp;nbsp;=&amp;nbsp;new&amp;nbsp;cl_device_id[uiDeviceCount]; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; iError&amp;nbsp;=&amp;nbsp;clGetDeviceIDs(pID,&amp;nbsp;CL_DEVICE_TYPE_ALL,&amp;nbsp;uiDeviceCount,&amp;nbsp;pDeviceIDs,&amp;nbsp;&amp;amp;uiDeviceCount); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_context&amp;nbsp;ctx; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_context_properties&amp;nbsp;pContextProperties[3]&amp;nbsp;=&amp;nbsp;{CL_CONTEXT_PLATFORM,&amp;nbsp;(cl_context_properties)pID,&amp;nbsp;0}; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ctx&amp;nbsp;=&amp;nbsp;clCreateContext(pContextProperties,&amp;nbsp;uiDeviceCount,&amp;nbsp;pDeviceIDs, nullptr,&amp;nbsp;nullptr,&amp;nbsp;&amp;amp;iError); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CString&amp;nbsp;sKernel&amp;nbsp;=&amp;nbsp;_T("__kernel&amp;nbsp;void&amp;nbsp;crunch(float&amp;nbsp;f)&amp;nbsp;{&amp;nbsp;float&amp;nbsp;x,y,cs,sn,xx,yy;&amp;nbsp;x&amp;nbsp;=&amp;nbsp;1.0f;&amp;nbsp;y&amp;nbsp;=&amp;nbsp;0.0f;&amp;nbsp;cs&amp;nbsp;=&amp;nbsp;cos(2.0f);&amp;nbsp;sn&amp;nbsp;=&amp;nbsp;sin(2.0f);&amp;nbsp;for&amp;nbsp;(int&amp;nbsp;i=0;i&amp;lt;40000;i++){&amp;nbsp;xx&amp;nbsp;=&amp;nbsp;cs&amp;nbsp;*&amp;nbsp;x&amp;nbsp;-&amp;nbsp;sn&amp;nbsp;*&amp;nbsp;y;&amp;nbsp;yy&amp;nbsp;=&amp;nbsp;cs&amp;nbsp;*&amp;nbsp;y&amp;nbsp;+&amp;nbsp;sn&amp;nbsp;*&amp;nbsp;x;&amp;nbsp;x&amp;nbsp;=&amp;nbsp;xx;&amp;nbsp;y&amp;nbsp;=&amp;nbsp;yy;&amp;nbsp;}&amp;nbsp;&amp;nbsp;}&amp;nbsp;"); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; size_t&amp;nbsp;szSourceSize&amp;nbsp;=&amp;nbsp;(size_t)&amp;nbsp;sKernel.GetLength(); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CStringA&amp;nbsp;saCode&amp;nbsp;=&amp;nbsp;sKernel; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; const&amp;nbsp;char*&amp;nbsp;cpKernel&amp;nbsp;=&amp;nbsp;saCode; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_program&amp;nbsp;pclProgram&amp;nbsp;=&amp;nbsp;clCreateProgramWithSource(ctx,&amp;nbsp;1,&amp;nbsp;&amp;amp;cpKernel,&amp;nbsp;&amp;amp;szSourceSize,&amp;nbsp;&amp;amp;iError); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; char&amp;nbsp;*pOptions&amp;nbsp;=&amp;nbsp;"-Werror"; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; iError&amp;nbsp;=&amp;nbsp;clBuildProgram(pclProgram,&amp;nbsp;uiDeviceCount,&amp;nbsp;pDeviceIDs,&amp;nbsp;/*nullptr*/pOptions,&amp;nbsp;nullptr,&amp;nbsp;nullptr); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; const&amp;nbsp;char*&amp;nbsp;kernelName&amp;nbsp;=&amp;nbsp;"crunch"; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_kernel&amp;nbsp;pclKernel&amp;nbsp;=&amp;nbsp;clCreateKernel(pclProgram,&amp;nbsp;kernelName,&amp;nbsp;&amp;amp;iError); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for&amp;nbsp;(int&amp;nbsp;j&amp;nbsp;=&amp;nbsp;0;&amp;nbsp;j&amp;nbsp;&amp;lt;&amp;nbsp;(int)uiDeviceCount;&amp;nbsp;j++) { &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_device_id&amp;nbsp;dID&amp;nbsp;=&amp;nbsp;pDeviceIDs&lt;J&gt;; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_command_queue&amp;nbsp;queue&amp;nbsp;=&amp;nbsp;clCreateCommandQueue(ctx,&amp;nbsp;dID,&amp;nbsp;CL_QUEUE_PROFILING_ENABLE,&amp;nbsp;&amp;amp;iError); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_kernel&amp;nbsp;pclKernel&amp;nbsp;=&amp;nbsp;clCreateKernel(pclProgram,&amp;nbsp;kernelName,&amp;nbsp;&amp;amp;iError); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; float&amp;nbsp;f&amp;nbsp;=&amp;nbsp;1.f; iError&amp;nbsp;=&amp;nbsp;clSetKernelArg(pclKernel,&amp;nbsp;0,&amp;nbsp;sizeof(cl_mem),&amp;nbsp;&amp;amp;f); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; size_t&amp;nbsp;lws[1]&amp;nbsp;=&amp;nbsp;{256}; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; size_t&amp;nbsp;gws[1]&amp;nbsp;=&amp;nbsp;{256}; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iError&amp;nbsp;=&amp;nbsp;clEnqueueNDRangeKernel(queue,&amp;nbsp;pclKernel,&amp;nbsp;1,&amp;nbsp;nullptr, gws,&amp;nbsp;lws,&amp;nbsp;0,nullptr,&amp;nbsp;nullptr); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clReleaseKernel(pclKernel); clReleaseProgram(pclProgram); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*float&amp;nbsp;pfTemp[4]&amp;nbsp;=&amp;nbsp;{0}; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cl_mem&amp;nbsp;pBuffer&amp;nbsp;=&amp;nbsp;clCreateBuffer(ctx,&amp;nbsp;CL_MEM_READ_WRITE,&amp;nbsp;4&amp;nbsp;*&amp;nbsp;sizeof(float),&amp;nbsp;&amp;amp;pfTemp[0],&amp;nbsp;&amp;amp;iError); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; clReleaseMemObject(pBuffer);*/ &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iError&amp;nbsp;=&amp;nbsp;clReleaseCommandQueue(queue); &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iError&amp;nbsp;=&amp;nbsp;clReleaseContext(ctx);&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;} &lt;BR /&gt;}&amp;nbsp;&lt;BR /&gt;[/cpp]&lt;/J&gt;&lt;/I&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 05 Mar 2013 12:11:46 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/OpenCL-Deconstruction-Fails/m-p/961668#M2194</guid>
      <dc:creator>Malte_P_</dc:creator>
      <dc:date>2013-03-05T12:11:46Z</dc:date>
    </item>
    <item>
      <title>Forgot to say that i use</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/OpenCL-Deconstruction-Fails/m-p/961669#M2195</link>
      <description>&lt;P&gt;Forgot to say that i use windows 7 on an x990 with OpenCL 1.1 Build 31360.31441 in Visual studio&lt;/P&gt;</description>
      <pubDate>Tue, 05 Mar 2013 12:29:41 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/OpenCL-Deconstruction-Fails/m-p/961669#M2195</guid>
      <dc:creator>Malte_P_</dc:creator>
      <dc:date>2013-03-05T12:29:41Z</dc:date>
    </item>
    <item>
      <title>We were not able to reproduce</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/OpenCL-Deconstruction-Fails/m-p/961670#M2196</link>
      <description>&lt;P&gt;We were not able to reproduce the issue you are having. Can you share your system configuration? Also what SDK version and driver version are you using?&lt;/P&gt;</description>
      <pubDate>Tue, 05 Mar 2013 22:20:33 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/OpenCL-Deconstruction-Fails/m-p/961670#M2196</guid>
      <dc:creator>Chuck_De_Sylva</dc:creator>
      <dc:date>2013-03-05T22:20:33Z</dc:date>
    </item>
    <item>
      <title>Deinstalled and reinstalled</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/OpenCL-Deconstruction-Fails/m-p/961671#M2197</link>
      <description>&lt;P&gt;Deinstalled and reinstalled the SDK and it worked fine. Don't have a clue, what went wrong. Thanks for your reply&lt;/P&gt;</description>
      <pubDate>Thu, 07 Mar 2013 12:59:00 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/OpenCL-Deconstruction-Fails/m-p/961671#M2197</guid>
      <dc:creator>Malte_P_</dc:creator>
      <dc:date>2013-03-07T12:59:00Z</dc:date>
    </item>
  </channel>
</rss>

