CLGetInfoInteger
Returns the value of an integer property for an OpenCL object or device.
long CLGetInfoInteger( |
Parameters
handle
[in] A handle to the OpenCL object or number of the OpenCL device. Numbering of OpenCL devices starts with zero.
prop
[in] The type of a requested property from the ENUM_OPENCL_PROPERTY_INTEGER enumeration, the value of which you want to obtain.
Return Value
The value of the property if successful or -1 in case of an error. For information about the error, use the GetLastError() function.
Identifier | Description | Type |
|---|---|---|
CL_DEVICE_COUNT | The number of devices with OpenCL support. This property does not require specification of the first parameter, i.e. you can pass a zero value for the handle parameter. | int |
CL_DEVICE_TYPE | Type of device | |
CL_DEVICE_VENDOR_ID | Unique vendor identifier | uint |
CL_DEVICE_MAX_COMPUTE_UNITS | Number of parallel calculated tasks in OpenCL device. One working group solves one computational task. The lowest value is 1 | uint |
CL_DEVICE_MAX_CLOCK_FREQUENCY | Highest set frequency of the device in MHz. | uint |
CL_DEVICE_GLOBAL_MEM_SIZE | Size of the global memory of the device in bytes | ulong |
CL_DEVICE_LOCAL_MEM_SIZE | Size of the processed data (scene) local memory in bytes | uint |
CL_BUFFER_SIZE | Actual size of the OpenCL buffer in bytes | ulong |
CL_DEVICE_MAX_WORK_GROUP_SIZE | The total number of the local working groups available for an OpenCL device. | ulong |
CL_KERNEL_WORK_GROUP_SIZE | The total number of the local working groups available for an OpenCL program. | ulong |
CL_KERNEL_LOCAL_MEM_SIZE | Size of the local memory (in bytes) used by an OpenCL program for solving all parallel tasks in a group. Use CL_DEVICE_LOCAL_MEM_SIZE to receive the maximum available value | ulong |
CL_KERNEL_PRIVATE_MEM_SIZE | The minimum size of the private memory (in bytes) used by each task in the OpenCL program kernel. | ulong |
CL_LAST_ERROR | The value of the last OpenCL error | int |
The ENUM_CL_DEVICE_TYPE enumeration contains possible types of devices supporting OpenCL. You can receive the type of device by its number or the handle of the OpenCL object by calling CLGetInfoInteger(handle_or_deviceN, CL_DEVICE_TYPE).
Identifier | Description |
|---|---|
CL_DEVICE_ACCELERATOR | Dedicated OpenCL accelerators (for example, the IBM CELL Blade). These devices communicate with the host processor using a peripheral interconnect such as PCIe. |
CL_DEVICE_CPU | An OpenCL device that is the host processor. The host processor runs the OpenCL implementations and is a single or multi-core CPU. |
CL_DEVICE_GPU | An OpenCL device that is a GPU. |
CL_DEVICE_DEFAULT | The default OpenCL device in the system. The default device cannot be a CL_DEVICE_TYPE_CUSTOM device. |
CL_DEVICE_CUSTOM | Dedicated accelerators that do not support programs written in OpenCL C. |
Example:
void OnStart() |