• 2019 Update 4
  • 03/20/2019
  • Public Content
Contents

Global Memory Size

OpenCL™ “global” memory is allocated from system (host) memory for the CPU and the Intel® Graphics devices. The amount of available memory depends on the amount of computer system memory and the operating system (32 or 64 bit). For example, a system with 4GB of RAM running on a 32-bit OS usually has less than 3GB available for system memory. This impacts the amount of global memory available for the Intel® Processor Graphics and CPU device. Use the
clGetDeviceInfo(…,CL_DEVICE_GLOBAL_MEM_SIZE)
query to get information on the
total
available amount of memory. Notice that the maximum size of an individual memory allocation for the device can be queried with
clGetDeviceInfo(…,CL_DEVICE_MAX_MEM_ALLOC_SIZE)
.
Your code should handle the failures to allocate resources, for example manifested by
CL_OUT_OF_RESOURCES
error.
Global memory performance depends on the frequency of DDR memory.
Since global memory is shared between the CPU and the Intel® Processor Graphics, it is important to use mapping for memory objects (see the "Mapping Memory Objects" section).
See Also

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804