<?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 &amp;gt;&amp;gt;...Why is the limit set to in OpenCL* for CPU</title>
    <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922262#M1433</link>
    <description>&amp;gt;&amp;gt;...Why is the limit set to 1/4th?

I think this needs to be addressed to somebody from &lt;STRONG&gt;Khronos&lt;/STRONG&gt; who is responsible for &lt;STRONG&gt;OpenCL&lt;/STRONG&gt; specifications.</description>
    <pubDate>Thu, 15 Sep 2016 00:41:54 GMT</pubDate>
    <dc:creator>SergeyKostrov</dc:creator>
    <dc:date>2016-09-15T00:41:54Z</dc:date>
    <item>
      <title>Allocating large buffers</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922255#M1426</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;How can I allocate a single large buffer of 8GB ?&lt;/P&gt;
&lt;P&gt;My Core i7 reports&lt;/P&gt;
&lt;P&gt;CL_DEVICE_GLOBAL_MEM_SIZE:&amp;nbsp;&amp;nbsp;&amp;nbsp; 16780570624&lt;/P&gt;
&lt;P&gt;but&lt;/P&gt;
&lt;P&gt;CL_DEVICE_MAX_MEM_ALLOC_SIZE:&amp;nbsp;&amp;nbsp;&amp;nbsp; 4195142656&lt;/P&gt;
&lt;P&gt;How can I increase the MAX ALLOC SIZE limit in Intel OpenCL SDK?&lt;/P&gt;
&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Sat, 15 Jun 2013 13:29:16 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922255#M1426</guid>
      <dc:creator>Luis_Aguilar</dc:creator>
      <dc:date>2013-06-15T13:29:16Z</dc:date>
    </item>
    <item>
      <title>Sorry it took a while for</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922256#M1427</link>
      <description>&lt;P&gt;Sorry it took a while for responding. Not sure if you are still looking for an answer. In theory you cannot allocate a buffer whose size is more than&amp;nbsp;&amp;nbsp;CL_DEVICE_MAX_MEM_ALLOC_SIZE (OpenCL doesn't allow that). But if you need a buffer that's larger than&amp;nbsp;&amp;nbsp;CL_DEVICE_MAX_MEM_ALLOC_SIZE, you might have to allocate multiple buffers and implement logic in your code to merge the result from these multiple buffers. What exactly are you trying to do?&lt;/P&gt;
&lt;P&gt;Thanks,&lt;BR /&gt;Raghu&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 21 Aug 2013 18:48:29 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922256#M1427</guid>
      <dc:creator>Raghupathi_M_Intel</dc:creator>
      <dc:date>2013-08-21T18:48:29Z</dc:date>
    </item>
    <item>
      <title>I know this is an old thread,</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922257#M1428</link>
      <description>&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;I know this is an old thread, however I have the same issue - I cannot allocate buffers that are &amp;gt; 1/4th of my available memory due to someone implementing an artificial limit.&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;The OpenCL specification does not seem to imply this limit. Please read &lt;A href="https://www.khronos.org/registry/cl/specs/opencl-1.2.pdf" target="_blank"&gt;https://www.khronos.org/registry/cl/specs/opencl-1.2.pdf&lt;/A&gt; on page 39 table 4.3 it states:&lt;/P&gt;

&lt;P&gt;CL_DEVICE_MAX_MEM_ALLOC_SIZE&amp;nbsp;&lt;BR /&gt;
	cl_ulong&amp;nbsp;&lt;BR /&gt;
	Max size of memory object allocation in bytes. The minimum value is max (1/4th of CL_DEVICE_GLOBAL_MEM_SIZE , 128*1024*1024) for devices that are not of type CL_DEVICE_TYPE_CUSTOM.&lt;/P&gt;

&lt;P&gt;Can someone please tell me why Intel OpenCL drivers (v4.4 of July 2014) impose the minimum value and not just let the CL_DEVICE_MAX_MEM_ALLOC_SIZE be set to be as big as the memory available?&lt;/P&gt;

&lt;P&gt;Thanks,&lt;BR /&gt;
	Josh&lt;/P&gt;

&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 25 Jul 2014 01:53:49 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922257#M1428</guid>
      <dc:creator>joshbowden</dc:creator>
      <dc:date>2014-07-25T01:53:49Z</dc:date>
    </item>
    <item>
      <title>I know this thread is old and</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922258#M1429</link>
      <description>&lt;P&gt;I know this thread is old and was unearthed before but this is exactly the question I would like to ask and I did not want to open another thread. Maybe somebody got the answer somewhere in the meantime.&lt;/P&gt;

&lt;P&gt;Why is the limit set to 1/4th?&lt;/P&gt;

&lt;P&gt;Thank you&lt;/P&gt;</description>
      <pubDate>Fri, 02 Sep 2016 17:30:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922258#M1429</guid>
      <dc:creator>Harald_S_</dc:creator>
      <dc:date>2016-09-02T17:30:56Z</dc:date>
    </item>
    <item>
      <title>Do you need to know just for</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922259#M1430</link>
      <description>&lt;P&gt;Do you need to know just for CPU, or do you need more info about the GPU max alloc size too?&lt;/P&gt;</description>
      <pubDate>Sat, 10 Sep 2016 00:36:29 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922259#M1430</guid>
      <dc:creator>Jeffrey_M_Intel1</dc:creator>
      <dc:date>2016-09-10T00:36:29Z</dc:date>
    </item>
    <item>
      <title>Especially CPU but if you can</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922260#M1431</link>
      <description>&lt;P&gt;Especially CPU but if you can tell me about the GPU limitation as well I would appreciate that. :)&lt;/P&gt;</description>
      <pubDate>Wed, 14 Sep 2016 18:44:06 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922260#M1431</guid>
      <dc:creator>Harald_S_</dc:creator>
      <dc:date>2016-09-14T18:44:06Z</dc:date>
    </item>
    <item>
      <title>&gt;&gt;My Core i7 reports</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922261#M1432</link>
      <description>&amp;gt;&amp;gt;My Core i7 reports
&amp;gt;&amp;gt;
&amp;gt;&amp;gt;CL_DEVICE_GLOBAL_MEM_SIZE:    16780570624
&amp;gt;&amp;gt;
&amp;gt;&amp;gt;but
&amp;gt;&amp;gt;
&amp;gt;&amp;gt;CL_DEVICE_MAX_MEM_ALLOC_SIZE:    4195142656

I just checked a video card on my Dell Precision Mobile Workstation ( M4700 ) and it looks like the &lt;STRONG&gt;1/4th-rule&lt;/STRONG&gt; is applicable to all devices:

...
&lt;STRONG&gt;oclDeviceQuery.exe&lt;/STRONG&gt; Starting...

OpenCL SW Info:

 CL_PLATFORM_NAME: 		NVIDIA CUDA
 CL_PLATFORM_VERSION: 	OpenCL 1.2 CUDA 8.0.0
 OpenCL SDK Revision: 		7027912


OpenCL Device Info:

 1 devices found supporting OpenCL:

 ---------------------------------
&lt;STRONG&gt;Device Quadro K1000M&lt;/STRONG&gt;
 ---------------------------------
  CL_DEVICE_NAME: 			Quadro K1000M
  CL_DEVICE_VENDOR: 			NVIDIA Corporation
  CL_DRIVER_VERSION: 			369.26
  CL_DEVICE_VERSION: 			OpenCL 1.2 CUDA
  CL_DEVICE_OPENCL_C_VERSION: 		OpenCL C 1.2 
  CL_DEVICE_TYPE:			CL_DEVICE_TYPE_GPU
  CL_DEVICE_MAX_COMPUTE_UNITS:		1
  CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS:	3
  CL_DEVICE_MAX_WORK_ITEM_SIZES:	1024 / 1024 / 64 
  CL_DEVICE_MAX_WORK_GROUP_SIZE:	1024
  CL_DEVICE_MAX_CLOCK_FREQUENCY:	850 MHz
  CL_DEVICE_ADDRESS_BITS:		64
  &lt;STRONG&gt;CL_DEVICE_MAX_MEM_ALLOC_SIZE:	512 MByte&lt;/STRONG&gt;
  &lt;STRONG&gt;CL_DEVICE_GLOBAL_MEM_SIZE:		2048 MByte&lt;/STRONG&gt;
  CL_DEVICE_ERROR_CORRECTION_SUPPORT:	no
  CL_DEVICE_LOCAL_MEM_TYPE:		local
  CL_DEVICE_LOCAL_MEM_SIZE:		48 KByte
  CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE:	64 KByte
  CL_DEVICE_QUEUE_PROPERTIES:		CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE
  CL_DEVICE_QUEUE_PROPERTIES:		CL_QUEUE_PROFILING_ENABLE
  CL_DEVICE_IMAGE_SUPPORT:		1
  CL_DEVICE_MAX_READ_IMAGE_ARGS:	256
  CL_DEVICE_MAX_WRITE_IMAGE_ARGS:	16
  CL_DEVICE_SINGLE_FP_CONFIG:		denorms INF-quietNaNs round-to-nearest round-to-zero round-to-inf fma 
...</description>
      <pubDate>Thu, 15 Sep 2016 00:29:03 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922261#M1432</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2016-09-15T00:29:03Z</dc:date>
    </item>
    <item>
      <title>&gt;&gt;...Why is the limit set to</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922262#M1433</link>
      <description>&amp;gt;&amp;gt;...Why is the limit set to 1/4th?

I think this needs to be addressed to somebody from &lt;STRONG&gt;Khronos&lt;/STRONG&gt; who is responsible for &lt;STRONG&gt;OpenCL&lt;/STRONG&gt; specifications.</description>
      <pubDate>Thu, 15 Sep 2016 00:41:54 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922262#M1433</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2016-09-15T00:41:54Z</dc:date>
    </item>
    <item>
      <title>I'm not an expert on the</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922263#M1434</link>
      <description>&lt;P&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;I'm not an expert on the OpenCL specification, however this is what OpenCL 1.2 spec sheet says: "&lt;/SPAN&gt;&lt;SPAN style="font-size: 12px; line-height: 18px;"&gt;The&lt;EM&gt; &lt;STRONG&gt;minimum value&lt;/STRONG&gt;&lt;/EM&gt; is max (1/4th of CL_DEVICE_GLOBAL_MEM_SIZE , 128*1024*1024)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="font-size: 1em; line-height: 1.5;"&gt;"&lt;/SPAN&gt;&lt;/P&gt;

&lt;P&gt;so, the specification specifies a minimum value. This does not mean the minimum value should be &lt;STRONG&gt;&lt;EM&gt;implemented &lt;/EM&gt;&lt;/STRONG&gt;as the maximum value!&lt;/P&gt;</description>
      <pubDate>Thu, 15 Sep 2016 01:14:16 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922263#M1434</guid>
      <dc:creator>joshbowden</dc:creator>
      <dc:date>2016-09-15T01:14:16Z</dc:date>
    </item>
    <item>
      <title>There is a 2nd part of the</title>
      <link>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922264#M1435</link>
      <description>There is a 2nd part of the statement about "...for devices that are not of type &lt;STRONG&gt;CL_DEVICE_TYPE_CUSTOM&lt;/STRONG&gt;..."

In case of my &lt;STRONG&gt;Quadro K1000M&lt;/STRONG&gt; card this is:
...
CL_DEVICE_TYPE:			&lt;STRONG&gt;CL_DEVICE_TYPE_GPU&lt;/STRONG&gt;
...
I wonder if &lt;STRONG&gt;Altera&lt;/STRONG&gt; FPGA cards are classified as &lt;STRONG&gt;CL_DEVICE_TYPE_CUSTOM&lt;/STRONG&gt; and do Not have that restriction. Could somebody from &lt;STRONG&gt;Intel&lt;/STRONG&gt; verify it?</description>
      <pubDate>Thu, 15 Sep 2016 15:12:45 GMT</pubDate>
      <guid>https://community.intel.com/t5/OpenCL-for-CPU/Allocating-large-buffers/m-p/922264#M1435</guid>
      <dc:creator>SergeyKostrov</dc:creator>
      <dc:date>2016-09-15T15:12:45Z</dc:date>
    </item>
  </channel>
</rss>

