Returns information about the kernel object.
cl_int clGetKernelInfo(cl_kernel kernel,
cl_kernel_info param_name,
size_t param_value_size,
void *param_value,
size_t *param_value_size_ret)kernel-
Specifies the kernel object being queried.
param_name-
Specifies the information to query. The list of supported
param_nametypes and the information returned inparam_valuebyclGetKernelInfois described in the table below. param_value-
A pointer to memory where the appropriate result being queried is returned. If
param_valueis NULL, it is ignored. param_value_size-
Used to specify the size in bytes of memory pointed to by
param_value. This size must be ≥ size of return type as described in the table below.cl_kernel_info Return Type Info. returned in param_valueCL_KERNEL_FUNCTION_NAMEchar[]
Return the kernel function name.
CL_KERNEL_NUM_ARGScl_uint
Return the number of arguments to
kernel.CL_KERNEL_REFERENCE_COUNTcl_uint
Return the
kernelreference count.The reference count returned should be considered immediately stale. It is unsuitable for general use in applications. This feature is provided for identifying memory leaks.
CL_KERNEL_CONTEXTcl_context
Return the context associated with
kernel.CL_KERNEL_PROGRAMcl_program
Return the program object associated with
kernel.CL_KERNEL_ATTRIBUTESchar[]
Returns any attributes specified using the
attributequalifier with the kernel function declaration in the program source. These attributes include those on theattributepage and other attributes supported by an implementation.Attributes are returned as they were declared inside
attribute…, with any surrounding whitespace and embedded newlines removed. When multiple attributes are present, they are returned as a single, space delimited string.For kernels not created from OpenCL C source and the
clCreateProgramWithSourceAPI call the string returned from this query will be empty. param_value_size_ret-
the actual size in bytes of data copied to
param_value. Ifparam_value_size_retis NULL, it is ignored.
Returns CL_SUCCESS if the function is executed successfully.
Otherwise, it returns one of the following errors:
-
CL_INVALID_VALUEifparam_nameis not valid, or if size in bytes specified byparam_value_sizeis < size of return type as described in the table above andparam_valueis not NULL. -
CL_INVALID_KERNELifkernelis not a valid kernel object. -
CL_OUT_OF_RESOURCESif there is a failure to allocate resources required by the OpenCL implementation on the device. -
CL_OUT_OF_HOST_MEMORYif there is a failure to allocate resources required by the OpenCL implementation on the host.