To create an OpenCL context from a specific device type , call the function:
const cl_context_properties* properties,
void (CL_CALLBACK* pfn_notify)(const char* errinfo, const void* private_info, size_t cb, void* user_data),
properties specifies a list of context property names and their corresponding values. Each property name is immediately followed by the corresponding desired value. The list of supported properties is described in the Context Properties table. properties can also be
NULLin which case the platform that is selected is implementation-defined.
device_type is a bit-field that identifies the type of device and is described in the Device Types table.
pfn_notify and user_data are described in clCreateContext.
errcode_ret will return an appropriate error code. If errcode_ret is
NULL, no error code is returned.
Only devices that are returned by clGetDeviceIDs for device_type are used to create the context. The context does not reference any sub-devices that may have been created from these devices.
clCreateContextFromType returns a valid non-zero context and errcode_ret
is set to
CL_SUCCESS if the context is created successfully.
Otherwise, it returns a
NULL value with the following error values
returned in errcode_ret:
CL_INVALID_if properties is
NULLand no platform could be selected or if platform value specified in properties is not a valid platform.
CL_INVALID_if context property name in properties is not a supported property name, if the value specified for a supported property name is not valid, or if the same property name is specified more than once. This error code is missing before version 1.1.
CL_INVALID_if pfn_notify is
NULLbut user_data is not
CL_INVALID_if device_type is not a valid value.
CL_DEVICE_if no devices that match device_type and property values specified in properties are currently available.
CL_DEVICE_if no devices that match device_type and property values specified in properties were found.
CL_OUT_if there is a failure to allocate resources required by the OpenCL implementation on the device.
CL_OUT_if there is a failure to allocate resources required by the OpenCL implementation on the host.
OF_ HOST_ MEMORY
For more information, see the OpenCL Specification
This page is extracted from the OpenCL Specification. Fixes and changes should be made to the Specification, not directly.