<?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 Bug in clCreateImage2D() in OpenCL* for CPU</title>
    <link>https://community.intel.com/t5/OpenCL-for-CPU/Bug-in-clCreateImage2D/m-p/809224#M861</link>
    <description>&amp;gt;&amp;gt;First - would love to see Windows x64 support.&lt;BR /&gt;The lastest SDK includes x64 support !!! Please, notice Intel refreshed the Alpha just a few days ago!&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt;Second - clCreateImage2D() crashes consistently, if CL_MEM_COPY_HOST_PTR is passed.&lt;BR /&gt;Yep, it's strange... in theory should work with 0 but perhaps you could try to pass sizeof(cl_float4)*arrayWidth instead.&lt;BR /&gt;&lt;BR /&gt;The CL 1.1 spec, section "5.3.1 Creating Image Objects" around page 74 is clear though, the image pitch could be zero and it should work:&lt;BR /&gt;&lt;BR /&gt;&lt;I&gt;image_row_pitch is the scan-line pitch in bytes. This must be 0 if host_ptr is NULL and can be&lt;BR /&gt;either 0 or &amp;gt;= image_width * size of element in bytes if host_ptr is not NULL. If host_ptr is not&lt;BR /&gt;NULL and image_row_pitch = 0, image_row_pitch is calculated as image_width * size of&lt;BR /&gt;element in bytes. If image_row_pitch is not 0, it must be a multiple of the image element size in&lt;BR /&gt;bytes&lt;/I&gt;&lt;BR /&gt;</description>
    <pubDate>Thu, 03 Feb 2011 21:11:55 GMT</pubDate>
    <dc:creator>jogshy</dc:creator>
    <dc:date>2011-02-03T21:11:55Z</dc:date>
    <item>
      <title>Bug in clCreateImage2D()</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Bug-in-clCreateImage2D/m-p/809223#M860</link>
      <description>First - would love to see Windows x64 support.&lt;DIV&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;Second - clCreateImage2D() crashes consistently, if CL_MEM_COPY_HOST_PTR is passed.&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;To repro, modify the GodRays sample. In GodRays.cpp, within ExecuteGodRaysKernel(), replace the first clCreateBuffer() call with the following lines:&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;PRE&gt;[cpp]const cl_image_format imgfmt = { CL_RGBA, CL_FLOAT };
g_inputBuffer = clCreateImage2D(g_context, CL_MEM_READ_ONLY | CL_MEM_COPY_HOST_PTR, &amp;amp;imgfmt, arrayWidth, arrayHeight, 0, inputArray, &amp;amp;err);
[/cpp]&lt;/PRE&gt; &lt;/DIV&gt;&lt;DIV&gt;You don't need to modify the .cl; you should see an access violation within clCreateImage2D(), in intelocl.dll at offset 0x4037b.&lt;/DIV&gt;</description>
      <pubDate>Thu, 03 Feb 2011 08:12:47 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Bug-in-clCreateImage2D/m-p/809223#M860</guid>
      <dc:creator>danielkoch</dc:creator>
      <dc:date>2011-02-03T08:12:47Z</dc:date>
    </item>
    <item>
      <title>Bug in clCreateImage2D()</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Bug-in-clCreateImage2D/m-p/809224#M861</link>
      <description>&amp;gt;&amp;gt;First - would love to see Windows x64 support.&lt;BR /&gt;The lastest SDK includes x64 support !!! Please, notice Intel refreshed the Alpha just a few days ago!&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt;Second - clCreateImage2D() crashes consistently, if CL_MEM_COPY_HOST_PTR is passed.&lt;BR /&gt;Yep, it's strange... in theory should work with 0 but perhaps you could try to pass sizeof(cl_float4)*arrayWidth instead.&lt;BR /&gt;&lt;BR /&gt;The CL 1.1 spec, section "5.3.1 Creating Image Objects" around page 74 is clear though, the image pitch could be zero and it should work:&lt;BR /&gt;&lt;BR /&gt;&lt;I&gt;image_row_pitch is the scan-line pitch in bytes. This must be 0 if host_ptr is NULL and can be&lt;BR /&gt;either 0 or &amp;gt;= image_width * size of element in bytes if host_ptr is not NULL. If host_ptr is not&lt;BR /&gt;NULL and image_row_pitch = 0, image_row_pitch is calculated as image_width * size of&lt;BR /&gt;element in bytes. If image_row_pitch is not 0, it must be a multiple of the image element size in&lt;BR /&gt;bytes&lt;/I&gt;&lt;BR /&gt;</description>
      <pubDate>Thu, 03 Feb 2011 21:11:55 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Bug-in-clCreateImage2D/m-p/809224#M861</guid>
      <dc:creator>jogshy</dc:creator>
      <dc:date>2011-02-03T21:11:55Z</dc:date>
    </item>
    <item>
      <title>Bug in clCreateImage2D()</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Bug-in-clCreateImage2D/m-p/809225#M862</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;DIV&gt;&lt;SPAN style="font-family: Verdana, Arial, Helvetica, sans-serif;"&gt;Please, notice Intel refreshed the Alpha just a few days ago!&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;DIV&gt;&lt;BR /&gt;&lt;DIV&gt;Cool, didn't see that. x64! and they even fixed my clCreateImage2D() bug! Thanks guys.&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Guess my report was just a few days late :-)&lt;/DIV&gt;&lt;BR /&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;BLOCKQUOTE&gt;&lt;DIV&gt;you could try to pass sizeof(cl_float4)*arrayWidth instead&lt;/DIV&gt;&lt;/BLOCKQUOTE&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Yeah, I did try that. Only thing that worked for me was switching to CL_MEM_USE_HOST_PTR instead of COPY. But it's fixed now, so I'm happy. Thanks for the heads-up.&lt;/DIV&gt;</description>
      <pubDate>Fri, 04 Feb 2011 07:37:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Bug-in-clCreateImage2D/m-p/809225#M862</guid>
      <dc:creator>danielkoch</dc:creator>
      <dc:date>2011-02-04T07:37:36Z</dc:date>
    </item>
  </channel>
</rss>

