clCreateProgramWithBuiltInKernels(3clc)

clCreateProgramWithBuiltInKernels3clc

Creates a program object for a context, and loads the information related to the built-in kernels into a program object.

cl_program clCreateProgramWithBuiltInKernels(cl_context context, cl_uint num_devices, const cl_device_id *device_list, const char *kernel_names, cl_int *errcode_ret);

Parameters

context

Must be a valid OpenCL context.

num_devices

The number of devices listed in device_list.

device_list

A pointer to a list of devices that are in context. device_list must be a non-NULL value. The built-in kernels are loaded for devices specified in this list.

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.

kernel_names

A semi-colon separated list of built-in kernel names.

Errors

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_CONTEXT if context is not a valid context.

• CL_INVALID_VALUE if device_list is NULL or num_devices is zero;

• CL_INVALID_VALUE if kernel_names is NULL or kernel_names contains a kernel name that is not supported by any of the devices in device_list.

• CL_INVALID_DEVICE if devices listed in device_list are not in the list of devices associated with context.

• CL_OUT_OF_RESOURCES if there is a failure to allocate resources required by the OpenCL implementation on the device.

• CL_OUT_OF_HOST_MEMORY if there is a failure to allocate resources required by the OpenCL implementation on the host.

Specification

OpenCL Specification[1]

Notes

1.

OpenCL Specification

page 135, section 5.6.1 - Creating Program Objects

Releases

5 releases since Debian 8 (Jessie); the text changed 3 times.

  1. 8–9
  2. 10
  3. 11
  4. 13

Authors

The Khronos Group

From opencl-1.2-man-doc 1.0~svn33624-5.1 in Debian 13 (Trixie). Parsed by carta from the page's man source.