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).
Did you find the information on this page useful?