public static extern ComputeErrorCode GetKernelWorkGroupInfo( CLKernelHandle kernel, CLDeviceHandle device, ComputeKernelWorkGroupInfo param_name, IntPtr param_value_size, IntPtr param_value, out IntPtr param_value_size_ret);
public static extern ComputeErrorCode EnqueueNDRangeKernel( CLCommandQueueHandle command_queue, CLKernelHandle kernel, Int32 work_dim, [MarshalAs(UnmanagedType.LPArray)] IntPtr[] global_work_offset, [MarshalAs(UnmanagedType.LPArray)] IntPtr[] global_work_size, [MarshalAs(UnmanagedType.LPArray)] IntPtr[] local_work_size, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst = 1)] CLEventHandle[] new_event);
public static extern ComputeErrorCode EnqueueTask( CLCommandQueueHandle command_queue, CLKernelHandle kernel, Int32 num_events_in_wait_list, [MarshalAs(UnmanagedType.LPArray)] CLEventHandle[] event_wait_list, [Out, MarshalAs(UnmanagedType.LPArray, SizeConst = 1)] CLEventHandle[] new_event);
public static extern ComputeErrorCode GetKernelInfo( CLKernelHandle kernel, ComputeKernelInfo param_name, IntPtr param_value_size, IntPtr param_value, out IntPtr param_value_size_ret);
public static extern ComputeErrorCode SetKernelArg( CLKernelHandle kernel, Int32 arg_index, IntPtr arg_size, ref double arg_value);
public static extern ComputeErrorCode ReleaseKernel( CLKernelHandle kernel);