Show / Hide Table of Contents

Class CL

Inheritance
object
CLBase
CL
Inherited Members
CLBase.RegisterOpenCLResolver()
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: OpenTK.Compute.OpenCL
Assembly: OpenTK.Compute.dll
Syntax
public class CL : CLBase

Methods

BuildProgram(CLProgram, CLDevice[], string, ClEventCallback)

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode BuildProgram(CLProgram program, CLDevice[] deviceList, string options, CL.ClEventCallback callback)
Parameters
Type Name Description
CLProgram program
CLDevice[] deviceList
string options
CL.ClEventCallback callback
Returns
Type Description
CLResultCode

BuildProgram(CLProgram, uint, CLDevice[], string, IntPtr, IntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode BuildProgram(CLProgram program, uint numberOfDevices, CLDevice[] deviceList, string options, IntPtr notificationCallback, IntPtr userData)
Parameters
Type Name Description
CLProgram program
uint numberOfDevices
CLDevice[] deviceList
string options
IntPtr notificationCallback
IntPtr userData
Returns
Type Description
CLResultCode

CloneKernel(CLKernel, out CLResultCode)

Introduced in OpenCL 2.1.

Declaration
public static extern CLKernel CloneKernel(CLKernel sourceKernel, out CLResultCode resultCode)
Parameters
Type Name Description
CLKernel sourceKernel
CLResultCode resultCode
Returns
Type Description
CLKernel

CompileProgram(CLProgram, uint, CLDevice[], string, uint, IntPtr[], out IntPtr, IntPtr, IntPtr)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode CompileProgram(CLProgram program, uint numberOfDevices, CLDevice[] deviceList, string options, uint numberOfInputDevices, IntPtr[] inputHeaders, out IntPtr headerIncludeNames, IntPtr notificationCallback, IntPtr userData)
Parameters
Type Name Description
CLProgram program
uint numberOfDevices
CLDevice[] deviceList
string options
uint numberOfInputDevices
IntPtr[] inputHeaders
IntPtr headerIncludeNames
IntPtr notificationCallback
IntPtr userData
Returns
Type Description
CLResultCode

CreateBuffer(CLContext, MemoryFlags, UIntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static extern CLBuffer CreateBuffer(CLContext context, MemoryFlags flags, UIntPtr size, IntPtr hostPtr, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
MemoryFlags flags
UIntPtr size
IntPtr hostPtr
CLResultCode resultCode
Returns
Type Description
CLBuffer

CreateBuffer<T>(CLContext, MemoryFlags, T[], out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static CLBuffer CreateBuffer<T>(CLContext context, MemoryFlags flags, T[] array, out CLResultCode resultCode) where T : unmanaged
Parameters
Type Name Description
CLContext context
MemoryFlags flags
T[] array
CLResultCode resultCode
Returns
Type Description
CLBuffer
Type Parameters
Name Description
T

CreateBuffer<T>(CLContext, MemoryFlags, Span<T>, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static CLBuffer CreateBuffer<T>(CLContext context, MemoryFlags flags, Span<T> span, out CLResultCode resultCode) where T : unmanaged
Parameters
Type Name Description
CLContext context
MemoryFlags flags
Span<T> span
CLResultCode resultCode
Returns
Type Description
CLBuffer
Type Parameters
Name Description
T

CreateCommandQueue(CLContext, CLDevice, CommandQueueProperty, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
[Obsolete("Deprecated in OpenCL 1.2, use CreateCommandQueueWithProperties.")]
public static extern CLCommandQueue CreateCommandQueue(CLContext context, CLDevice device, CommandQueueProperty properties, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
CLDevice device
CommandQueueProperty properties
CLResultCode resultCode
Returns
Type Description
CLCommandQueue

CreateCommandQueueWithProperties(CLContext, IntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 2.0.

Declaration
public static extern CLCommandQueue CreateCommandQueueWithProperties(CLContext context, IntPtr device, IntPtr properties, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
IntPtr device
IntPtr properties
CLResultCode resultCode
Returns
Type Description
CLCommandQueue

CreateContext(IntPtr, CLDevice[], IntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static CLContext CreateContext(IntPtr properties, CLDevice[] devices, IntPtr notificationCallback, IntPtr userData, out CLResultCode resultCode)
Parameters
Type Name Description
IntPtr properties
CLDevice[] devices
IntPtr notificationCallback
IntPtr userData
CLResultCode resultCode
Returns
Type Description
CLContext

CreateContext(IntPtr, uint, CLDevice[], IntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static extern CLContext CreateContext(IntPtr properties, uint numberOfDevices, CLDevice[] devices, IntPtr notificationCallback, IntPtr userData, out CLResultCode resultCode)
Parameters
Type Name Description
IntPtr properties
uint numberOfDevices
CLDevice[] devices
IntPtr notificationCallback
IntPtr userData
CLResultCode resultCode
Returns
Type Description
CLContext

CreateContext(IntPtr[], CLDevice[], IntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static CLContext CreateContext(IntPtr[] properties, CLDevice[] devices, IntPtr notificationCallback, IntPtr userData, out CLResultCode resultCode)
Parameters
Type Name Description
IntPtr[] properties
CLDevice[] devices
IntPtr notificationCallback
IntPtr userData
CLResultCode resultCode
Returns
Type Description
CLContext

CreateContext(IntPtr[], uint, CLDevice[], IntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static extern CLContext CreateContext(IntPtr[] properties, uint numberOfDevices, CLDevice[] devices, IntPtr notificationCallback, IntPtr userData, out CLResultCode resultCode)
Parameters
Type Name Description
IntPtr[] properties
uint numberOfDevices
CLDevice[] devices
IntPtr notificationCallback
IntPtr userData
CLResultCode resultCode
Returns
Type Description
CLContext

CreateContextFromType(IntPtr, DeviceType, IntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static extern CLContext CreateContextFromType(IntPtr properties, DeviceType deviceType, IntPtr notificationCallback, IntPtr userData, out CLResultCode resultCode)
Parameters
Type Name Description
IntPtr properties
DeviceType deviceType
IntPtr notificationCallback
IntPtr userData
CLResultCode resultCode
Returns
Type Description
CLContext

CreateContextFromType(IntPtr[], DeviceType, IntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static extern CLContext CreateContextFromType(IntPtr[] properties, DeviceType deviceType, IntPtr notificationCallback, IntPtr userData, out CLResultCode resultCode)
Parameters
Type Name Description
IntPtr[] properties
DeviceType deviceType
IntPtr notificationCallback
IntPtr userData
CLResultCode resultCode
Returns
Type Description
CLContext

CreateImage(CLContext, MemoryFlags, ref ImageFormat, ref ImageDescription, IntPtr, out CLResultCode)

Introduced in OpenCL 1.2.

Declaration
public static extern CLImage CreateImage(CLContext context, MemoryFlags flags, ref ImageFormat imageFormat, ref ImageDescription imageDesc, IntPtr hostPointer, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
MemoryFlags flags
ImageFormat imageFormat
ImageDescription imageDesc
IntPtr hostPointer
CLResultCode resultCode
Returns
Type Description
CLImage

CreateImage2D(CLContext, MemoryFlags, ref ImageFormat, UIntPtr, UIntPtr, UIntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
[Obsolete("Deprecated method, use CreateImage instead")]
public static extern CLImage CreateImage2D(CLContext context, MemoryFlags flags, ref ImageFormat imageFormat, UIntPtr imageWidth, UIntPtr imageHeight, UIntPtr imageRowPitch, IntPtr hostPointer, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
MemoryFlags flags
ImageFormat imageFormat
UIntPtr imageWidth
UIntPtr imageHeight
UIntPtr imageRowPitch
IntPtr hostPointer
CLResultCode resultCode
Returns
Type Description
CLImage

CreateImage3D(CLContext, MemoryFlags, ref ImageFormat, UIntPtr, UIntPtr, UIntPtr, UIntPtr, UIntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
[Obsolete("Deprecated method, use CreateImage instead")]
public static extern CLImage CreateImage3D(CLContext context, MemoryFlags flags, ref ImageFormat imageFormat, UIntPtr imageWidth, UIntPtr imageHeight, UIntPtr imageDepth, UIntPtr imageRowPitch, UIntPtr imageSlicePitch, IntPtr hostPointer, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
MemoryFlags flags
ImageFormat imageFormat
UIntPtr imageWidth
UIntPtr imageHeight
UIntPtr imageDepth
UIntPtr imageRowPitch
UIntPtr imageSlicePitch
IntPtr hostPointer
CLResultCode resultCode
Returns
Type Description
CLImage

CreateKernel(CLProgram, string, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static extern CLKernel CreateKernel(CLProgram program, string name, out CLResultCode resultCode)
Parameters
Type Name Description
CLProgram program
string name
CLResultCode resultCode
Returns
Type Description
CLKernel

CreateKernelsInProgram(CLProgram, out CLKernel[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode CreateKernelsInProgram(CLProgram program, out CLKernel[] kernels)
Parameters
Type Name Description
CLProgram program
CLKernel[] kernels
Returns
Type Description
CLResultCode

CreateKernelsInProgram(CLProgram, uint, CLKernel[], out uint)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode CreateKernelsInProgram(CLProgram program, uint numberOfKernels, CLKernel[] kernels, out uint numberOfKernelsReturned)
Parameters
Type Name Description
CLProgram program
uint numberOfKernels
CLKernel[] kernels
uint numberOfKernelsReturned
Returns
Type Description
CLResultCode

CreatePipe(CLContext, MemoryFlags, uint, uint, IntPtr[], out CLResultCode)

Introduced in OpenCL 2.0.

Declaration
public static extern CLPipe CreatePipe(CLContext context, MemoryFlags flags, uint pipePacketSize, uint pipeMaxPackets, IntPtr[] properties, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
MemoryFlags flags
uint pipePacketSize
uint pipeMaxPackets
IntPtr[] properties
CLResultCode resultCode
Returns
Type Description
CLPipe

CreateProgramWithBinary(CLContext, uint, IntPtr[], UIntPtr[], IntPtr[], out CLResultCode[], out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static extern CLProgram CreateProgramWithBinary(CLContext context, uint numberOfDevices, IntPtr[] deviceList, UIntPtr[] lengths, IntPtr[] binaries, out CLResultCode[] binaryStatus, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
uint numberOfDevices
IntPtr[] deviceList
UIntPtr[] lengths
IntPtr[] binaries
CLResultCode[] binaryStatus
CLResultCode resultCode
Returns
Type Description
CLProgram

CreateProgramWithBuiltInKernels(CLContext, uint, IntPtr[], string, out CLResultCode)

Introduced in OpenCL 1.2.

Declaration
public static extern CLProgram CreateProgramWithBuiltInKernels(CLContext context, uint numberOfDevices, IntPtr[] deviceList, string kernelNames, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
uint numberOfDevices
IntPtr[] deviceList
string kernelNames
CLResultCode resultCode
Returns
Type Description
CLProgram

CreateProgramWithIL(CLContext, IntPtr, UIntPtr, out CLResultCode)

Introduced in OpenCL 2.1.

Declaration
public static extern CLProgram CreateProgramWithIL(CLContext context, IntPtr il, UIntPtr length, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
IntPtr il
UIntPtr length
CLResultCode resultCode
Returns
Type Description
CLProgram

CreateProgramWithSource(CLContext, string, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static CLProgram CreateProgramWithSource(CLContext context, string source, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
string source
CLResultCode resultCode
Returns
Type Description
CLProgram

CreateProgramWithSource(CLContext, uint, IntPtr[], uint[], out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static extern CLProgram CreateProgramWithSource(CLContext context, uint count, IntPtr[] strings, uint[] lengths, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
uint count
IntPtr[] strings
uint[] lengths
CLResultCode resultCode
Returns
Type Description
CLProgram

CreateSampler(CLContext, uint, AddressingMode, FilterMode, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
[Obsolete("Deprecated in OpenCL 1.2")]
public static extern CLSampler CreateSampler(CLContext context, uint normalizedCoordinates, AddressingMode addressingMode, FilterMode filterMode, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
uint normalizedCoordinates
AddressingMode addressingMode
FilterMode filterMode
CLResultCode resultCode
Returns
Type Description
CLSampler

CreateSamplerWithProperties(CLContext, IntPtr, out CLResultCode)

Introduced in OpenCL 2.0.

Declaration
public static extern CLSampler CreateSamplerWithProperties(CLContext context, IntPtr samplerProperties, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
IntPtr samplerProperties
CLResultCode resultCode
Returns
Type Description
CLSampler

CreateSubBuffer(CLBuffer, MemoryFlags, BufferCreateType, IntPtr, out CLResultCode)

Introduced in OpenCL 1.1.

Declaration
public static extern CLBuffer CreateSubBuffer(CLBuffer buffer, MemoryFlags flags, BufferCreateType bufferCreateType, IntPtr bufferCreateInfo, out CLResultCode resultCode)
Parameters
Type Name Description
CLBuffer buffer
MemoryFlags flags
BufferCreateType bufferCreateType
IntPtr bufferCreateInfo
CLResultCode resultCode
Returns
Type Description
CLBuffer

CreateSubDevices(CLDevice, IntPtr[], uint, CLDevice[], out uint)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode CreateSubDevices(CLDevice inDevice, IntPtr[] properties, uint numberOfDevices, CLDevice[] outDevices, out uint devicesReturned)
Parameters
Type Name Description
CLDevice inDevice
IntPtr[] properties
uint numberOfDevices
CLDevice[] outDevices
uint devicesReturned
Returns
Type Description
CLResultCode

CreateUserEvent(CLContext, out CLResultCode)

Introduced in OpenCL 1.1.

Declaration
public static extern CLEvent CreateUserEvent(CLContext context, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
CLResultCode resultCode
Returns
Type Description
CLEvent

EnqueueBarrier(CLCommandQueue)

Introduced in OpenCL 1.0.

Declaration
[Obsolete("Deprecated in OpenCL 1.1, use EnqueueBarrierWithWaitList.")]
public static extern CLResultCode EnqueueBarrier(CLCommandQueue commandQueue)
Parameters
Type Name Description
CLCommandQueue commandQueue
Returns
Type Description
CLResultCode

EnqueueBarrierWithWaitList(CLCommandQueue, uint, IntPtr[], IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode EnqueueBarrierWithWaitList(CLCommandQueue commandQueue, uint numberOfMemoryObjects, IntPtr[] memoryObjects, IntPtr argumentsMemoryLocation, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
uint numberOfMemoryObjects
IntPtr[] memoryObjects
IntPtr argumentsMemoryLocation
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueCopyBuffer(CLCommandQueue, CLBuffer, CLBuffer, UIntPtr, UIntPtr, UIntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueCopyBuffer(CLCommandQueue commandQueue, CLBuffer srcBuffer, CLBuffer dstBuffer, UIntPtr srcOffset, UIntPtr dstOffset, UIntPtr size, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer srcBuffer
CLBuffer dstBuffer
UIntPtr srcOffset
UIntPtr dstOffset
UIntPtr size
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueCopyBufferRect(CLCommandQueue, CLBuffer, CLBuffer, UIntPtr[], UIntPtr[], UIntPtr[], UIntPtr, UIntPtr, UIntPtr, UIntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.1.

Declaration
public static extern CLResultCode EnqueueCopyBufferRect(CLCommandQueue commandQueue, CLBuffer srcBuffer, CLBuffer dstBuffer, UIntPtr[] srcOrigin, UIntPtr[] dstOrigin, UIntPtr[] region, UIntPtr srcRowPitch, UIntPtr srcSlicePitch, UIntPtr dstRowPitch, UIntPtr dstSlicePitch, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer srcBuffer
CLBuffer dstBuffer
UIntPtr[] srcOrigin
UIntPtr[] dstOrigin
UIntPtr[] region
UIntPtr srcRowPitch
UIntPtr srcSlicePitch
UIntPtr dstRowPitch
UIntPtr dstSlicePitch
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueCopyBufferToImage(CLCommandQueue, CLBuffer, CLImage, UIntPtr, UIntPtr[], UIntPtr[], uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueCopyBufferToImage(CLCommandQueue commandQueue, CLBuffer srcBuffer, CLImage dstImage, UIntPtr srcOffset, UIntPtr[] dstOrigin, UIntPtr[] region, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer srcBuffer
CLImage dstImage
UIntPtr srcOffset
UIntPtr[] dstOrigin
UIntPtr[] region
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueCopyImage(CLCommandQueue, CLImage, CLImage, UIntPtr[], UIntPtr[], UIntPtr[], uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueCopyImage(CLCommandQueue commandQueue, CLImage srcImage, CLImage dstImage, UIntPtr[] srcOrigin, UIntPtr[] dstOrigin, UIntPtr[] region, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLImage srcImage
CLImage dstImage
UIntPtr[] srcOrigin
UIntPtr[] dstOrigin
UIntPtr[] region
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueCopyImageToBuffer(CLCommandQueue, CLImage, CLBuffer, UIntPtr[], UIntPtr[], UIntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueCopyImageToBuffer(CLCommandQueue commandQueue, CLImage srcImage, CLBuffer dstBuffer, UIntPtr[] srcOrigin, UIntPtr[] region, UIntPtr dstOffset, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLImage srcImage
CLBuffer dstBuffer
UIntPtr[] srcOrigin
UIntPtr[] region
UIntPtr dstOffset
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueFillBuffer(CLCommandQueue, CLBuffer, IntPtr, UIntPtr, UIntPtr, UIntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode EnqueueFillBuffer(CLCommandQueue commandQueue, CLBuffer buffer, IntPtr pattern, UIntPtr patternSize, UIntPtr offset, UIntPtr size, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
IntPtr pattern
UIntPtr patternSize
UIntPtr offset
UIntPtr size
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueFillBuffer<T>(CLCommandQueue, CLBuffer, T[], UIntPtr, UIntPtr, CLEvent[], out CLEvent)

Introduced in OpenCL 1.2.

Declaration
public static CLResultCode EnqueueFillBuffer<T>(CLCommandQueue commandQueue, CLBuffer buffer, T[] pattern, UIntPtr offset, UIntPtr size, CLEvent[] eventWaitList, out CLEvent @event) where T : unmanaged
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
T[] pattern
UIntPtr offset
UIntPtr size
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode
Type Parameters
Name Description
T

EnqueueFillImage(CLCommandQueue, CLImage, IntPtr, UIntPtr[], UIntPtr[], uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode EnqueueFillImage(CLCommandQueue commandQueue, CLImage image, IntPtr fillColor, UIntPtr[] origin, UIntPtr[] region, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLImage image
IntPtr fillColor
UIntPtr[] origin
UIntPtr[] region
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueMapBuffer(CLCommandQueue, CLBuffer, bool, MapFlags, UIntPtr, UIntPtr, uint, CLEvent[], out CLEvent, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static extern IntPtr EnqueueMapBuffer(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingMap, MapFlags flags, UIntPtr offset, UIntPtr size, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event, out CLResultCode resultCode)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingMap
MapFlags flags
UIntPtr offset
UIntPtr size
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
CLResultCode resultCode
Returns
Type Description
IntPtr

EnqueueMapImage(CLCommandQueue, CLImage, bool, MapFlags, UIntPtr[], UIntPtr[], UIntPtr, UIntPtr, uint, CLEvent[], out CLEvent, out CLResultCode)

Introduced in OpenCL 1.0.

Declaration
public static extern IntPtr EnqueueMapImage(CLCommandQueue commandQueue, CLImage image, bool blockingMap, MapFlags flags, UIntPtr[] origin, UIntPtr[] region, UIntPtr rowPitch, UIntPtr slicePitch, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event, out CLResultCode resultCode)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLImage image
bool blockingMap
MapFlags flags
UIntPtr[] origin
UIntPtr[] region
UIntPtr rowPitch
UIntPtr slicePitch
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
CLResultCode resultCode
Returns
Type Description
IntPtr

EnqueueMarker(CLCommandQueue, CLEvent)

Introduced in OpenCL 1.0.

Declaration
[Obsolete("Deprecated in OpenCL 1.1, use EnqueueMarkerWithWaitList.")]
public static extern CLResultCode EnqueueMarker(CLCommandQueue commandQueue, CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLEvent event
Returns
Type Description
CLResultCode

EnqueueMarkerWithWaitList(CLCommandQueue, uint, IntPtr[], IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode EnqueueMarkerWithWaitList(CLCommandQueue commandQueue, uint numberOfMemoryObjects, IntPtr[] memoryObjects, IntPtr argumentsMemoryLocation, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
uint numberOfMemoryObjects
IntPtr[] memoryObjects
IntPtr argumentsMemoryLocation
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueMigrateMemoryObjects(CLCommandQueue, uint, IntPtr[], MemoryMigrationFlags, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode EnqueueMigrateMemoryObjects(CLCommandQueue commandQueue, uint numberOfMemoryObjects, IntPtr[] memoryObjects, MemoryMigrationFlags flags, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
uint numberOfMemoryObjects
IntPtr[] memoryObjects
MemoryMigrationFlags flags
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueNativeKernel(CLCommandQueue, IntPtr, IntPtr[], UIntPtr, uint, IntPtr[], IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueNativeKernel(CLCommandQueue commandQueue, IntPtr userFunction, IntPtr[] arguments, UIntPtr argumentSize, uint numberOfMemoryObjects, IntPtr[] memoryObjects, IntPtr argumentsMemoryLocation, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
IntPtr userFunction
IntPtr[] arguments
UIntPtr argumentSize
uint numberOfMemoryObjects
IntPtr[] memoryObjects
IntPtr argumentsMemoryLocation
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueNDRangeKernel(CLCommandQueue, CLKernel, uint, UIntPtr[], UIntPtr[], UIntPtr[], uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueNDRangeKernel(CLCommandQueue commandQueue, CLKernel kernel, uint workDimension, UIntPtr[] globalWorkOffset, UIntPtr[] globalWorkSize, UIntPtr[] localWorkSize, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLKernel kernel
uint workDimension
UIntPtr[] globalWorkOffset
UIntPtr[] globalWorkSize
UIntPtr[] localWorkSize
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueReadBuffer(CLCommandQueue, CLBuffer, bool, UIntPtr, UIntPtr, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueReadBuffer(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingRead, UIntPtr offset, UIntPtr size, IntPtr pointer, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingRead
UIntPtr offset
UIntPtr size
IntPtr pointer
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueReadBuffer<T>(CLCommandQueue, CLBuffer, bool, UIntPtr, T[], CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode EnqueueReadBuffer<T>(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingRead, UIntPtr offset, T[] array, CLEvent[] eventWaitList, out CLEvent eventHandle) where T : unmanaged
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingRead
UIntPtr offset
T[] array
CLEvent[] eventWaitList
CLEvent eventHandle
Returns
Type Description
CLResultCode
Type Parameters
Name Description
T

EnqueueReadBuffer<T>(CLCommandQueue, CLBuffer, bool, UIntPtr, Span<T>, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode EnqueueReadBuffer<T>(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingRead, UIntPtr offset, Span<T> span, CLEvent[] eventWaitList, out CLEvent eventHandle) where T : unmanaged
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingRead
UIntPtr offset
Span<T> span
CLEvent[] eventWaitList
CLEvent eventHandle
Returns
Type Description
CLResultCode
Type Parameters
Name Description
T

EnqueueReadBufferRect(CLCommandQueue, CLBuffer, bool, UIntPtr[], UIntPtr[], UIntPtr[], UIntPtr, UIntPtr, UIntPtr, UIntPtr, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.1.

Declaration
public static extern CLResultCode EnqueueReadBufferRect(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingRead, UIntPtr[] bufferOffset, UIntPtr[] hostOffset, UIntPtr[] region, UIntPtr bufferRowPitch, UIntPtr bufferSlicePitch, UIntPtr hostRowPitch, UIntPtr hostSlicePitch, IntPtr pointer, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingRead
UIntPtr[] bufferOffset
UIntPtr[] hostOffset
UIntPtr[] region
UIntPtr bufferRowPitch
UIntPtr bufferSlicePitch
UIntPtr hostRowPitch
UIntPtr hostSlicePitch
IntPtr pointer
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueReadBufferRect<T>(CLCommandQueue, CLBuffer, bool, UIntPtr[], UIntPtr[], UIntPtr[], UIntPtr, UIntPtr, UIntPtr, UIntPtr, T[], CLEvent[], out CLEvent)

Introduced in OpenCL 1.1.

Declaration
public static CLResultCode EnqueueReadBufferRect<T>(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingRead, UIntPtr[] bufferOffset, UIntPtr[] hostOffset, UIntPtr[] region, UIntPtr bufferRowPitch, UIntPtr bufferSlicePitch, UIntPtr hostRowPitch, UIntPtr hostSlicePitch, T[] array, CLEvent[] eventWaitList, out CLEvent @event) where T : unmanaged
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingRead
UIntPtr[] bufferOffset
UIntPtr[] hostOffset
UIntPtr[] region
UIntPtr bufferRowPitch
UIntPtr bufferSlicePitch
UIntPtr hostRowPitch
UIntPtr hostSlicePitch
T[] array
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode
Type Parameters
Name Description
T

EnqueueReadBufferRect<T>(CLCommandQueue, CLBuffer, bool, UIntPtr[], UIntPtr[], UIntPtr[], UIntPtr, UIntPtr, UIntPtr, UIntPtr, Span<T>, CLEvent[], out CLEvent)

Introduced in OpenCL 1.1.

Declaration
public static CLResultCode EnqueueReadBufferRect<T>(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingRead, UIntPtr[] bufferOffset, UIntPtr[] hostOffset, UIntPtr[] region, UIntPtr bufferRowPitch, UIntPtr bufferSlicePitch, UIntPtr hostRowPitch, UIntPtr hostSlicePitch, Span<T> span, CLEvent[] eventWaitList, out CLEvent @event) where T : unmanaged
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingRead
UIntPtr[] bufferOffset
UIntPtr[] hostOffset
UIntPtr[] region
UIntPtr bufferRowPitch
UIntPtr bufferSlicePitch
UIntPtr hostRowPitch
UIntPtr hostSlicePitch
Span<T> span
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode
Type Parameters
Name Description
T

EnqueueReadImage(CLCommandQueue, CLImage, bool, UIntPtr[], UIntPtr[], UIntPtr, UIntPtr, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueReadImage(CLCommandQueue commandQueue, CLImage image, bool blockingRead, UIntPtr[] origin, UIntPtr[] region, UIntPtr rowPitch, UIntPtr slicePitch, IntPtr pointer, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLImage image
bool blockingRead
UIntPtr[] origin
UIntPtr[] region
UIntPtr rowPitch
UIntPtr slicePitch
IntPtr pointer
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueSVMFree(CLCommandQueue, uint, IntPtr[], IntPtr, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 2.0.

Declaration
public static extern CLResultCode EnqueueSVMFree(CLCommandQueue commandQueue, uint numberOfSvmPointers, IntPtr[] svmPointers, IntPtr svmFreePointersCallback, IntPtr userData, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
uint numberOfSvmPointers
IntPtr[] svmPointers
IntPtr svmFreePointersCallback
IntPtr userData
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueSvmMap(CLCommandQueue, bool, MapFlags, IntPtr, UIntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 2.0.

Declaration
public static extern CLResultCode EnqueueSvmMap(CLCommandQueue commandQueue, bool blockingMap, MapFlags mapFlag, IntPtr svmPointer, UIntPtr size, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
bool blockingMap
MapFlags mapFlag
IntPtr svmPointer
UIntPtr size
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueSvmMemoryCopy(CLCommandQueue, bool, IntPtr, IntPtr, UIntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 2.0.

Declaration
public static extern CLResultCode EnqueueSvmMemoryCopy(CLCommandQueue commandQueue, bool blockingCopy, IntPtr dstPointer, IntPtr srcPointer, UIntPtr size, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
bool blockingCopy
IntPtr dstPointer
IntPtr srcPointer
UIntPtr size
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueSvmMemoryFill(CLCommandQueue, IntPtr, IntPtr, UIntPtr, UIntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 2.0.

Declaration
public static extern CLResultCode EnqueueSvmMemoryFill(CLCommandQueue commandQueue, IntPtr svmPointer, IntPtr pattern, UIntPtr patternSize, UIntPtr size, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
IntPtr svmPointer
IntPtr pattern
UIntPtr patternSize
UIntPtr size
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueSvmMigrateMemory(CLCommandQueue, uint, IntPtr[], UIntPtr[], MemoryMigrationFlags, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 2.1.

Declaration
public static extern CLResultCode EnqueueSvmMigrateMemory(CLCommandQueue commandQueue, uint numberOfSvmPointers, IntPtr[] svmPointers, UIntPtr[] sizes, MemoryMigrationFlags memoryMigrationFlags, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
uint numberOfSvmPointers
IntPtr[] svmPointers
UIntPtr[] sizes
MemoryMigrationFlags memoryMigrationFlags
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueSVMUnmap(CLCommandQueue, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 2.0.

Declaration
public static extern CLResultCode EnqueueSVMUnmap(CLCommandQueue commandQueue, IntPtr svmPointer, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
IntPtr svmPointer
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueTask(CLCommandQueue, CLKernel, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
[Obsolete("Deprecated in OpenCL 1.2")]
public static extern CLResultCode EnqueueTask(CLCommandQueue commandQueue, CLKernel kernel, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLKernel kernel
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueUnmapMemoryObject(CLCommandQueue, CLBuffer, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueUnmapMemoryObject(CLCommandQueue commandQueue, CLBuffer memoryObject, IntPtr mapperPtr, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer memoryObject
IntPtr mapperPtr
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueUnmapMemoryObject(CLCommandQueue, CLImage, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueUnmapMemoryObject(CLCommandQueue commandQueue, CLImage memoryObject, IntPtr mapperPtr, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLImage memoryObject
IntPtr mapperPtr
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueUnmapMemoryObject(CLCommandQueue, IntPtr, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueUnmapMemoryObject(CLCommandQueue commandQueue, IntPtr memoryObject, IntPtr mapperPtr, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
IntPtr memoryObject
IntPtr mapperPtr
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueWaitForEvents(CLCommandQueue, uint, CLEvent[])

Introduced in OpenCL 1.0.

Declaration
[Obsolete("Deprecated in OpenCL 1.1, use EnqueueMarkerWithWaitList.")]
public static extern CLResultCode EnqueueWaitForEvents(CLCommandQueue commandQueue, uint numberOfEventsInWaitList, CLEvent[] eventList)
Parameters
Type Name Description
CLCommandQueue commandQueue
uint numberOfEventsInWaitList
CLEvent[] eventList
Returns
Type Description
CLResultCode

EnqueueWriteBuffer(CLCommandQueue, CLBuffer, bool, UIntPtr, UIntPtr, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueWriteBuffer(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingWrite, UIntPtr offset, UIntPtr size, IntPtr pointer, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingWrite
UIntPtr offset
UIntPtr size
IntPtr pointer
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueWriteBuffer<T>(CLCommandQueue, CLBuffer, bool, UIntPtr, T[], CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode EnqueueWriteBuffer<T>(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingWrite, UIntPtr offset, T[] array, CLEvent[] eventWaitList, out CLEvent @event) where T : unmanaged
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingWrite
UIntPtr offset
T[] array
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode
Type Parameters
Name Description
T

EnqueueWriteBuffer<T>(CLCommandQueue, CLBuffer, bool, UIntPtr, Span<T>, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode EnqueueWriteBuffer<T>(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingWrite, UIntPtr offset, Span<T> span, CLEvent[] eventWaitList, out CLEvent @event) where T : unmanaged
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingWrite
UIntPtr offset
Span<T> span
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode
Type Parameters
Name Description
T

EnqueueWriteBufferRect(CLCommandQueue, CLBuffer, bool, UIntPtr[], UIntPtr[], UIntPtr[], UIntPtr, UIntPtr, UIntPtr, UIntPtr, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.1.

Declaration
public static extern CLResultCode EnqueueWriteBufferRect(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingWrite, UIntPtr[] bufferOffset, UIntPtr[] hostOffset, UIntPtr[] region, UIntPtr bufferRowPitch, UIntPtr bufferSlicePitch, UIntPtr hostRowPitch, UIntPtr hostSlicePitch, IntPtr pointer, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingWrite
UIntPtr[] bufferOffset
UIntPtr[] hostOffset
UIntPtr[] region
UIntPtr bufferRowPitch
UIntPtr bufferSlicePitch
UIntPtr hostRowPitch
UIntPtr hostSlicePitch
IntPtr pointer
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

EnqueueWriteBufferRect<T>(CLCommandQueue, CLBuffer, bool, UIntPtr[], UIntPtr[], UIntPtr[], UIntPtr, UIntPtr, UIntPtr, UIntPtr, T[], CLEvent[], out CLEvent)

Introduced in OpenCL 1.1.

Declaration
public static CLResultCode EnqueueWriteBufferRect<T>(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingWrite, UIntPtr[] bufferOffset, UIntPtr[] hostOffset, UIntPtr[] region, UIntPtr bufferRowPitch, UIntPtr bufferSlicePitch, UIntPtr hostRowPitch, UIntPtr hostSlicePitch, T[] array, CLEvent[] eventWaitList, out CLEvent @event) where T : unmanaged
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingWrite
UIntPtr[] bufferOffset
UIntPtr[] hostOffset
UIntPtr[] region
UIntPtr bufferRowPitch
UIntPtr bufferSlicePitch
UIntPtr hostRowPitch
UIntPtr hostSlicePitch
T[] array
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode
Type Parameters
Name Description
T

EnqueueWriteBufferRect<T>(CLCommandQueue, CLBuffer, bool, UIntPtr[], UIntPtr[], UIntPtr[], UIntPtr, UIntPtr, UIntPtr, UIntPtr, Span<T>, CLEvent[], out CLEvent)

Introduced in OpenCL 1.1.

Declaration
public static CLResultCode EnqueueWriteBufferRect<T>(CLCommandQueue commandQueue, CLBuffer buffer, bool blockingWrite, UIntPtr[] bufferOffset, UIntPtr[] hostOffset, UIntPtr[] region, UIntPtr bufferRowPitch, UIntPtr bufferSlicePitch, UIntPtr hostRowPitch, UIntPtr hostSlicePitch, Span<T> span, CLEvent[] eventWaitList, out CLEvent @event) where T : unmanaged
Parameters
Type Name Description
CLCommandQueue commandQueue
CLBuffer buffer
bool blockingWrite
UIntPtr[] bufferOffset
UIntPtr[] hostOffset
UIntPtr[] region
UIntPtr bufferRowPitch
UIntPtr bufferSlicePitch
UIntPtr hostRowPitch
UIntPtr hostSlicePitch
Span<T> span
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode
Type Parameters
Name Description
T

EnqueueWriteImage(CLCommandQueue, CLImage, bool, UIntPtr[], UIntPtr[], UIntPtr, UIntPtr, IntPtr, uint, CLEvent[], out CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode EnqueueWriteImage(CLCommandQueue commandQueue, CLImage image, bool blockingWrite, UIntPtr[] origin, UIntPtr[] region, UIntPtr inputRowPitch, UIntPtr inputSlicePitch, IntPtr pointer, uint numberOfEventsInWaitList, CLEvent[] eventWaitList, out CLEvent @event)
Parameters
Type Name Description
CLCommandQueue commandQueue
CLImage image
bool blockingWrite
UIntPtr[] origin
UIntPtr[] region
UIntPtr inputRowPitch
UIntPtr inputSlicePitch
IntPtr pointer
uint numberOfEventsInWaitList
CLEvent[] eventWaitList
CLEvent event
Returns
Type Description
CLResultCode

Finish(CLCommandQueue)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode Finish(CLCommandQueue commandQueue)
Parameters
Type Name Description
CLCommandQueue commandQueue
Returns
Type Description
CLResultCode

Flush(CLCommandQueue)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode Flush(CLCommandQueue commandQueue)
Parameters
Type Name Description
CLCommandQueue commandQueue
Returns
Type Description
CLResultCode

GetCommandQueueInfo(CLCommandQueue, CommandQueueInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetCommandQueueInfo(CLCommandQueue queue, CommandQueueInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLCommandQueue queue
CommandQueueInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetCommandQueueInfo(CLCommandQueue, CommandQueueInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetCommandQueueInfo(CLCommandQueue commandQueue, CommandQueueInfo paramName, UIntPtr paramSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLCommandQueue commandQueue
CommandQueueInfo paramName
UIntPtr paramSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetContextInfo(CLContext, ContextInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetContextInfo(CLContext context, ContextInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLContext context
ContextInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetContextInfo(CLContext, ContextInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetContextInfo(CLContext context, ContextInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLContext context
ContextInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetDeviceAndHostTimer(CLDevice, IntPtr, IntPtr)

Introduced in OpenCL 2.1.

Declaration
public static extern CLResultCode GetDeviceAndHostTimer(CLDevice device, IntPtr deviceTimestamp, IntPtr hostTimestamp)
Parameters
Type Name Description
CLDevice device
IntPtr deviceTimestamp
IntPtr hostTimestamp
Returns
Type Description
CLResultCode

GetDeviceIds(CLPlatform, DeviceType, out CLDevice[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetDeviceIds(CLPlatform platform, DeviceType deviceType, out CLDevice[] deviceIds)
Parameters
Type Name Description
CLPlatform platform
DeviceType deviceType
CLDevice[] deviceIds
Returns
Type Description
CLResultCode

GetDeviceIds(CLPlatform, DeviceType, uint, CLDevice[], out uint)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetDeviceIds(CLPlatform platform, DeviceType deviceType, uint numberOfEntries, CLDevice[] devices, out uint numberOfDevicesReturned)
Parameters
Type Name Description
CLPlatform platform
DeviceType deviceType
uint numberOfEntries
CLDevice[] devices
uint numberOfDevicesReturned
Returns
Type Description
CLResultCode

GetDeviceInfo(CLDevice, DeviceInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetDeviceInfo(CLDevice device, DeviceInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLDevice device
DeviceInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetDeviceInfo(CLDevice, DeviceInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetDeviceInfo(CLDevice device, DeviceInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLDevice device
DeviceInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetEventInfo(CLEvent, EventInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetEventInfo(CLEvent @event, EventInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLEvent event
EventInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetEventInfo(CLEvent, EventInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetEventInfo(CLEvent @event, EventInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramSizeReturned)
Parameters
Type Name Description
CLEvent event
EventInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramSizeReturned
Returns
Type Description
CLResultCode

GetEventProfilingInfo(CLEvent, ProfilingInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetEventProfilingInfo(CLEvent @event, ProfilingInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLEvent event
ProfilingInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetEventProfilingInfo(CLEvent, ProfilingInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetEventProfilingInfo(CLEvent @event, ProfilingInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLEvent event
ProfilingInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetExtensionFunctionAddress(string)

Introduced in OpenCL 1.0.

Declaration
[Obsolete("Deprecated method")]
public static extern CLResultCode GetExtensionFunctionAddress(string funcName)
Parameters
Type Name Description
string funcName
Returns
Type Description
CLResultCode

GetExtensionFunctionAddressForPlatform(CLPlatform, string)

Introduced in OpenCL 1.2.

Declaration
public static extern IntPtr GetExtensionFunctionAddressForPlatform(CLPlatform platform, string functionName)
Parameters
Type Name Description
CLPlatform platform
string functionName
Returns
Type Description
IntPtr

GetHostTimer(CLDevice, IntPtr)

Introduced in OpenCL 2.1.

Declaration
public static extern CLResultCode GetHostTimer(CLDevice device, IntPtr hostTimestamp)
Parameters
Type Name Description
CLDevice device
IntPtr hostTimestamp
Returns
Type Description
CLResultCode

GetImageInfo(CLImage, ImageInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetImageInfo(CLImage image, ImageInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLImage image
ImageInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetImageInfo(CLImage, ImageInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetImageInfo(CLImage image, ImageInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLImage image
ImageInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetKernelArgInfo(CLKernel, uint, KernelArgInfo, out byte[])

Introduced in OpenCL 1.2.

Declaration
public static CLResultCode GetKernelArgInfo(CLKernel kernel, uint argumentIndex, KernelArgInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLKernel kernel
uint argumentIndex
KernelArgInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetKernelArgInfo(CLKernel, uint, KernelArgInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode GetKernelArgInfo(CLKernel kernel, uint argumentIndex, KernelArgInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramSizeReturned)
Parameters
Type Name Description
CLKernel kernel
uint argumentIndex
KernelArgInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramSizeReturned
Returns
Type Description
CLResultCode

GetKernelInfo(CLKernel, KernelInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetKernelInfo(CLKernel kernel, KernelInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLKernel kernel
KernelInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetKernelInfo(CLKernel, KernelInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetKernelInfo(CLKernel kernel, KernelInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramSizeReturned)
Parameters
Type Name Description
CLKernel kernel
KernelInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramSizeReturned
Returns
Type Description
CLResultCode

GetKernelSubGroupInfo(CLKernel, CLDevice, KernelSubGroupInfo, UIntPtr, IntPtr, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 2.1.

Declaration
public static extern CLResultCode GetKernelSubGroupInfo(CLKernel kernel, CLDevice device, KernelSubGroupInfo paramName, UIntPtr inputValueSize, IntPtr inputValue, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramSizeReturned)
Parameters
Type Name Description
CLKernel kernel
CLDevice device
KernelSubGroupInfo paramName
UIntPtr inputValueSize
IntPtr inputValue
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramSizeReturned
Returns
Type Description
CLResultCode

GetKernelWorkGroupInfo(CLKernel, CLDevice, KernelWorkGroupInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetKernelWorkGroupInfo(CLKernel kernel, CLDevice device, KernelWorkGroupInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLKernel kernel
CLDevice device
KernelWorkGroupInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetKernelWorkGroupInfo(CLKernel, CLDevice, KernelWorkGroupInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetKernelWorkGroupInfo(CLKernel kernel, CLDevice device, KernelWorkGroupInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramSizeReturned)
Parameters
Type Name Description
CLKernel kernel
CLDevice device
KernelWorkGroupInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramSizeReturned
Returns
Type Description
CLResultCode

GetMemObjectInfo(CLBuffer, MemoryObjectInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetMemObjectInfo(CLBuffer memoryObject, MemoryObjectInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLBuffer memoryObject
MemoryObjectInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetMemObjectInfo(CLBuffer, MemoryObjectInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetMemObjectInfo(CLBuffer memoryObject, MemoryObjectInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLBuffer memoryObject
MemoryObjectInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetMemObjectInfo(CLImage, MemoryObjectInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetMemObjectInfo(CLImage memoryObject, MemoryObjectInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLImage memoryObject
MemoryObjectInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetMemObjectInfo(CLImage, MemoryObjectInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetMemObjectInfo(CLImage memoryObject, MemoryObjectInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLImage memoryObject
MemoryObjectInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetMemObjectInfo(CLPipe, MemoryObjectInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetMemObjectInfo(CLPipe memoryObject, MemoryObjectInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLPipe memoryObject
MemoryObjectInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetMemObjectInfo(CLPipe, MemoryObjectInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetMemObjectInfo(CLPipe memoryObject, MemoryObjectInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLPipe memoryObject
MemoryObjectInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetMemObjectInfo(IntPtr, MemoryObjectInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetMemObjectInfo(IntPtr memoryObject, MemoryObjectInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
IntPtr memoryObject
MemoryObjectInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetMemObjectInfo(IntPtr, MemoryObjectInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetMemObjectInfo(IntPtr memoryObject, MemoryObjectInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
IntPtr memoryObject
MemoryObjectInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetPipeInfo(CLPipe, PipeInfo, out byte[])

Introduced in OpenCL 2.0.

Declaration
public static CLResultCode GetPipeInfo(CLPipe pipe, PipeInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLPipe pipe
PipeInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetPipeInfo(CLPipe, PipeInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 2.0.

Declaration
public static extern CLResultCode GetPipeInfo(CLPipe pipe, PipeInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLPipe pipe
PipeInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetPlatformIds(out CLPlatform[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetPlatformIds(out CLPlatform[] platformIds)
Parameters
Type Name Description
CLPlatform[] platformIds

returns a list of OpenCL platforms found. The CLPlatform values returned in platforms can be used to identify a specific OpenCL platform.

Returns
Type Description
CLResultCode

returns Success if the function is executed successfully. Otherwise, it returns one of the following errors: -InvalidValue if numberOfEntries is equal to zero and platforms is not NULL or if both numberOfPlatforms and platforms are NULL. -OutOfHostMemory if there is a failure to allocate resources required by the OpenCL implementation on the host.

GetPlatformIds(uint, CLPlatform[], out uint)

Introduced in OpenCL 1.0. See more: https://www.khronos.org/registry/OpenCL/sdk/2.2/docs/man/html/clGetPlatformIDs.html.

Declaration
public static extern CLResultCode GetPlatformIds(uint numberOfEntries, CLPlatform[] platforms, out uint numberOfPlatforms)
Parameters
Type Name Description
uint numberOfEntries

number of CLPlatform entries that can be added to platforms. If platforms is not NULL, numberOfEntries must be greater than zero.

CLPlatform[] platforms

returns a list of OpenCL platforms found. The CLPlatform values returned in platforms can be used to identify a specific OpenCL platform. If platforms is NULL, this argument is ignored. The number of OpenCL platforms returned is the minimum of the value specified by numberOfEntries or the number of OpenCL platforms available.

uint numberOfPlatforms

returns the number of OpenCL platforms available. If numberOfPlatforms is NULL, this argument is ignored.

Returns
Type Description
CLResultCode

returns Success if the function is executed successfully. Otherwise, it returns one of the following errors: -InvalidValue if numberOfEntries is equal to zero and platforms is not NULL or if both numberOfPlatforms and platforms are NULL. -OutOfHostMemory if there is a failure to allocate resources required by the OpenCL implementation on the host.

GetPlatformInfo(CLPlatform, PlatformInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetPlatformInfo(CLPlatform platform, PlatformInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLPlatform platform
PlatformInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetPlatformInfo(CLPlatform, PlatformInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetPlatformInfo(CLPlatform platform, PlatformInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLPlatform platform
PlatformInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetProgramBuildInfo(CLProgram, CLDevice, ProgramBuildInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetProgramBuildInfo(CLProgram program, CLDevice device, ProgramBuildInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLProgram program
CLDevice device
ProgramBuildInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetProgramBuildInfo(CLProgram, CLDevice, ProgramBuildInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetProgramBuildInfo(CLProgram program, CLDevice device, ProgramBuildInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLProgram program
CLDevice device
ProgramBuildInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetProgramInfo(CLProgram, ProgramInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetProgramInfo(CLProgram program, ProgramInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLProgram program
ProgramInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetProgramInfo(CLProgram, ProgramInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetProgramInfo(CLProgram program, ProgramInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLProgram program
ProgramInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetSamplerInfo(CLSampler, SamplerInfo, out byte[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetSamplerInfo(CLSampler sampler, SamplerInfo paramName, out byte[] paramValue)
Parameters
Type Name Description
CLSampler sampler
SamplerInfo paramName
byte[] paramValue
Returns
Type Description
CLResultCode

GetSamplerInfo(CLSampler, SamplerInfo, UIntPtr, byte[], out UIntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetSamplerInfo(CLSampler sampler, SamplerInfo paramName, UIntPtr paramValueSize, byte[] paramValue, out UIntPtr paramValueSizeReturned)
Parameters
Type Name Description
CLSampler sampler
SamplerInfo paramName
UIntPtr paramValueSize
byte[] paramValue
UIntPtr paramValueSizeReturned
Returns
Type Description
CLResultCode

GetSupportedImageFormats(CLContext, MemoryFlags, MemoryObjectType, out ImageFormat[])

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode GetSupportedImageFormats(CLContext context, MemoryFlags flags, MemoryObjectType imageType, out ImageFormat[] imageFormats)
Parameters
Type Name Description
CLContext context
MemoryFlags flags
MemoryObjectType imageType
ImageFormat[] imageFormats
Returns
Type Description
CLResultCode

GetSupportedImageFormats(CLContext, MemoryFlags, MemoryObjectType, uint, ImageFormat[], out uint)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode GetSupportedImageFormats(CLContext context, MemoryFlags flags, MemoryObjectType imageType, uint numberOfEntries, ImageFormat[] imageFormats, out uint numberOfImageFormats)
Parameters
Type Name Description
CLContext context
MemoryFlags flags
MemoryObjectType imageType
uint numberOfEntries
ImageFormat[] imageFormats
uint numberOfImageFormats
Returns
Type Description
CLResultCode

LinkProgram(CLContext, uint, CLDevice[], string, uint, CLProgram[], IntPtr, IntPtr, out CLResultCode)

Introduced in OpenCL 1.2.

Declaration
public static extern CLProgram LinkProgram(CLContext context, uint numberOfDevices, CLDevice[] deviceList, string options, uint numberOfPrograms, CLProgram[] inputPrograms, IntPtr notificationCallback, IntPtr userData, out CLResultCode resultCode)
Parameters
Type Name Description
CLContext context
uint numberOfDevices
CLDevice[] deviceList
string options
uint numberOfPrograms
CLProgram[] inputPrograms
IntPtr notificationCallback
IntPtr userData
CLResultCode resultCode
Returns
Type Description
CLProgram

ReleaseCommandQueue(CLCommandQueue)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode ReleaseCommandQueue(CLCommandQueue commandQueue)
Parameters
Type Name Description
CLCommandQueue commandQueue
Returns
Type Description
CLResultCode

ReleaseContext(CLContext)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode ReleaseContext(CLContext context)
Parameters
Type Name Description
CLContext context
Returns
Type Description
CLResultCode

ReleaseDevice(CLDevice)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode ReleaseDevice(CLDevice device)
Parameters
Type Name Description
CLDevice device
Returns
Type Description
CLResultCode

ReleaseEvent(CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode ReleaseEvent(CLEvent @event)
Parameters
Type Name Description
CLEvent event
Returns
Type Description
CLResultCode

ReleaseKernel(CLKernel)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode ReleaseKernel(CLKernel kernel)
Parameters
Type Name Description
CLKernel kernel
Returns
Type Description
CLResultCode

ReleaseMemoryObject(CLBuffer)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode ReleaseMemoryObject(CLBuffer memoryObject)
Parameters
Type Name Description
CLBuffer memoryObject
Returns
Type Description
CLResultCode

ReleaseMemoryObject(CLImage)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode ReleaseMemoryObject(CLImage memoryObject)
Parameters
Type Name Description
CLImage memoryObject
Returns
Type Description
CLResultCode

ReleaseMemoryObject(CLPipe)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode ReleaseMemoryObject(CLPipe memoryObject)
Parameters
Type Name Description
CLPipe memoryObject
Returns
Type Description
CLResultCode

ReleaseMemoryObject(IntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode ReleaseMemoryObject(IntPtr memoryObject)
Parameters
Type Name Description
IntPtr memoryObject
Returns
Type Description
CLResultCode

ReleaseProgram(CLProgram)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode ReleaseProgram(CLProgram program)
Parameters
Type Name Description
CLProgram program
Returns
Type Description
CLResultCode

ReleaseSampler(CLSampler)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode ReleaseSampler(CLSampler sampler)
Parameters
Type Name Description
CLSampler sampler
Returns
Type Description
CLResultCode

RetainCommandQueue(CLCommandQueue)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode RetainCommandQueue(CLCommandQueue commandQueue)
Parameters
Type Name Description
CLCommandQueue commandQueue
Returns
Type Description
CLResultCode

RetainContext(CLContext)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode RetainContext(CLContext context)
Parameters
Type Name Description
CLContext context
Returns
Type Description
CLResultCode

RetainDevice(CLDevice)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode RetainDevice(CLDevice device)
Parameters
Type Name Description
CLDevice device
Returns
Type Description
CLResultCode

RetainEvent(CLEvent)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode RetainEvent(CLEvent @event)
Parameters
Type Name Description
CLEvent event
Returns
Type Description
CLResultCode

RetainKernel(CLKernel)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode RetainKernel(CLKernel kernel)
Parameters
Type Name Description
CLKernel kernel
Returns
Type Description
CLResultCode

RetainMemoryObject(CLBuffer)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode RetainMemoryObject(CLBuffer memoryObject)
Parameters
Type Name Description
CLBuffer memoryObject
Returns
Type Description
CLResultCode

RetainMemoryObject(CLImage)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode RetainMemoryObject(CLImage memoryObject)
Parameters
Type Name Description
CLImage memoryObject
Returns
Type Description
CLResultCode

RetainMemoryObject(CLPipe)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode RetainMemoryObject(CLPipe memoryObject)
Parameters
Type Name Description
CLPipe memoryObject
Returns
Type Description
CLResultCode

RetainMemoryObject(IntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode RetainMemoryObject(IntPtr memoryObject)
Parameters
Type Name Description
IntPtr memoryObject
Returns
Type Description
CLResultCode

RetainProgram(CLProgram)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode RetainProgram(CLProgram program)
Parameters
Type Name Description
CLProgram program
Returns
Type Description
CLResultCode

RetainSampler(CLSampler)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode RetainSampler(CLSampler sampler)
Parameters
Type Name Description
CLSampler sampler
Returns
Type Description
CLResultCode

SetDefaultDeviceCommandQueue(CLContext, CLDevice, CLCommandQueue)

Introduced in OpenCL 2.1.

Declaration
public static extern CLResultCode SetDefaultDeviceCommandQueue(CLContext context, CLDevice device, CLCommandQueue commandQueue)
Parameters
Type Name Description
CLContext context
CLDevice device
CLCommandQueue commandQueue
Returns
Type Description
CLResultCode

SetEventCallback(CLEvent, int, ClEventCallback)

Introduced in OpenCL 1.1.

Declaration
public static CLResultCode SetEventCallback(CLEvent eventHandle, int callbackType, CL.ClEventCallback notifyCallback)
Parameters
Type Name Description
CLEvent eventHandle
int callbackType
CL.ClEventCallback notifyCallback
Returns
Type Description
CLResultCode

SetEventCallback(CLEvent, int, IntPtr, IntPtr)

Introduced in OpenCL 1.1.

Declaration
public static extern CLResultCode SetEventCallback(CLEvent eventHandle, int commandExecCallbackType, IntPtr notifyCallback, IntPtr userData)
Parameters
Type Name Description
CLEvent eventHandle
int commandExecCallbackType
IntPtr notifyCallback
IntPtr userData
Returns
Type Description
CLResultCode

SetKernelArg(CLKernel, uint, UIntPtr, IntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode SetKernelArg(CLKernel kernel, uint argumentIndex, UIntPtr argumentSize, IntPtr argumentValuePointer)
Parameters
Type Name Description
CLKernel kernel
uint argumentIndex
UIntPtr argumentSize
IntPtr argumentValuePointer
Returns
Type Description
CLResultCode

SetKernelArg<T>(CLKernel, uint, in T)

Introduced in OpenCL 1.0.

Declaration
public static CLResultCode SetKernelArg<T>(CLKernel kernel, uint argumentIndex, in T argument) where T : unmanaged
Parameters
Type Name Description
CLKernel kernel
uint argumentIndex
T argument
Returns
Type Description
CLResultCode
Type Parameters
Name Description
T

SetKernelArgSVMPointer(CLKernel, uint, IntPtr)

Introduced in OpenCL 2.0.

Declaration
public static extern CLResultCode SetKernelArgSVMPointer(CLKernel kernel, uint argumentIndex, IntPtr argumentValuePointer)
Parameters
Type Name Description
CLKernel kernel
uint argumentIndex
IntPtr argumentValuePointer
Returns
Type Description
CLResultCode

SetKernelExecInfo(CLKernel, KernelExecInfo, UIntPtr, IntPtr)

Introduced in OpenCL 2.0.

Declaration
public static extern CLResultCode SetKernelExecInfo(CLKernel kernel, KernelExecInfo paramName, UIntPtr paramValueSize, IntPtr paramValue)
Parameters
Type Name Description
CLKernel kernel
KernelExecInfo paramName
UIntPtr paramValueSize
IntPtr paramValue
Returns
Type Description
CLResultCode

SetMemoryObjectDestructorCallback(CLBuffer, IntPtr, IntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode SetMemoryObjectDestructorCallback(CLBuffer memoryObject, IntPtr notificationCallback, IntPtr userData)
Parameters
Type Name Description
CLBuffer memoryObject
IntPtr notificationCallback
IntPtr userData
Returns
Type Description
CLResultCode

SetMemoryObjectDestructorCallback(CLImage, IntPtr, IntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode SetMemoryObjectDestructorCallback(CLImage memoryObject, IntPtr notificationCallback, IntPtr userData)
Parameters
Type Name Description
CLImage memoryObject
IntPtr notificationCallback
IntPtr userData
Returns
Type Description
CLResultCode

SetMemoryObjectDestructorCallback(CLPipe, IntPtr, IntPtr)

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode SetMemoryObjectDestructorCallback(CLPipe memoryObject, IntPtr notificationCallback, IntPtr userData)
Parameters
Type Name Description
CLPipe memoryObject
IntPtr notificationCallback
IntPtr userData
Returns
Type Description
CLResultCode

SetMemoryObjectDestructorCallback(IntPtr, IntPtr, IntPtr)

Introduced in OpenCL 1.1.

Declaration
public static extern CLResultCode SetMemoryObjectDestructorCallback(IntPtr memoryObject, IntPtr notificationCallback, IntPtr userData)
Parameters
Type Name Description
IntPtr memoryObject
IntPtr notificationCallback
IntPtr userData
Returns
Type Description
CLResultCode

SetProgramReleaseCallback(CLProgram, IntPtr, IntPtr)

Introduced in OpenCL 2.2.

Declaration
public static extern CLResultCode SetProgramReleaseCallback(CLProgram program, IntPtr notificationCallback, IntPtr userData)
Parameters
Type Name Description
CLProgram program
IntPtr notificationCallback
IntPtr userData
Returns
Type Description
CLResultCode

SetProgramSpecializationConstant(CLProgram, uint, UIntPtr, IntPtr)

Introduced in OpenCL 2.2.

Declaration
public static extern CLResultCode SetProgramSpecializationConstant(CLProgram program, uint specId, UIntPtr specSize, IntPtr specValue)
Parameters
Type Name Description
CLProgram program
uint specId
UIntPtr specSize
IntPtr specValue
Returns
Type Description
CLResultCode

SetUserEventStatus(CLEvent, int)

Introduced in OpenCL 1.1.

Declaration
public static extern CLResultCode SetUserEventStatus(CLEvent @event, int executionStatus)
Parameters
Type Name Description
CLEvent event
int executionStatus
Returns
Type Description
CLResultCode

SVMAlloc(CLContext, SvmMemoryFlags, UIntPtr, uint)

Introduced in OpenCL 2.0.

Declaration
public static extern IntPtr SVMAlloc(CLContext context, SvmMemoryFlags flags, UIntPtr size, uint alignment)
Parameters
Type Name Description
CLContext context
SvmMemoryFlags flags
UIntPtr size
uint alignment
Returns
Type Description
IntPtr

SVMFree(CLContext, IntPtr)

Introduced in OpenCL 2.0.

Declaration
public static extern IntPtr SVMFree(CLContext context, IntPtr svmPointer)
Parameters
Type Name Description
CLContext context
IntPtr svmPointer
Returns
Type Description
IntPtr

UnloadCompiler()

Introduced in OpenCL 1.0.

Declaration
[Obsolete("Deprecated in OpenCL 1.1, use UnloadPlatformCompiler.")]
public static extern CLResultCode UnloadCompiler()
Returns
Type Description
CLResultCode

UnloadPlatformCompiler(CLPlatform)

Introduced in OpenCL 1.2.

Declaration
public static extern CLResultCode UnloadPlatformCompiler(CLPlatform platform)
Parameters
Type Name Description
CLPlatform platform
Returns
Type Description
CLResultCode

WaitForEvents(uint, CLEvent[])

Introduced in OpenCL 1.0.

Declaration
public static extern CLResultCode WaitForEvents(uint numberOfEvents, CLEvent[] eventList)
Parameters
Type Name Description
uint numberOfEvents
CLEvent[] eventList
Returns
Type Description
CLResultCode
In This Article
Back to top Generated by DocFX