C Specification
To create a program object for a context and loads the information related to the built-in kernels into that object, call the function
// Provided by CL_VERSION_1_2
cl_program clCreateProgramWithBuiltInKernels(
cl_context context,
cl_uint num_devices,
const cl_device_id* device_list,
const char* kernel_names,
cl_int* errcode_ret);
| clCreateProgramWithBuiltInKernels is missing before version 1.2. |
Parameters
-
context must be a valid OpenCL context.
-
num_devices is the number of devices listed in device_list.
-
device_list is a pointer to a list of devices that are in context. device_list must be a non-
NULLvalue. The built-in kernels are loaded for devices specified in this list. -
kernel_names is a semi-colon separated list of built-in kernel names.
Description
The devices associated with the program object will be the list of devices specified by device_list. The list of devices specified by device_list must be devices associated with context.
clCreateProgramWithBuiltInKernels returns a valid non-zero program object
and errcode_ret is set to CL_SUCCESS if the program object is created
successfully.
Otherwise, it returns a NULL value with one of the following error values
returned in errcode_ret:
-
CL_INVALID_if context is not a valid context.CONTEXT -
CL_INVALID_if device_list isVALUE NULLor num_devices is zero. -
CL_INVALID_if kernel_names isVALUE NULLor kernel_names contains a kernel name that is not supported by any of the devices in device_list. -
CL_INVALID_if any device in device_list is not in the list of devices associated with context.DEVICE -
CL_OUT_if there is a failure to allocate resources required by the OpenCL implementation on the device.OF_ RESOURCES -
CL_OUT_if there is a failure to allocate resources required by the OpenCL implementation on the host.OF_ HOST_ MEMORY
Document Notes
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.