Class cuda
Inheritance
System.Object
cuda
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Assembly: Hybridizer.Runtime.CUDAImports.dll
Syntax
[Guid("553B61F4-8D61-4570-8791-B666857F987A")]
public class cuda
Fields
CpuDeviceId
Device id that represents the CPU
Declaration
[IntrinsicConstant("cudaCpuDeviceId")]
public const int CpuDeviceId = -1
Field Value
Type |
Description |
System.Int32 |
|
InvalidDeviceId
Device id that represents an invalid device
Declaration
[IntrinsicConstant("cudaInvalidDeviceId")]
public const int InvalidDeviceId = -2
Field Value
Type |
Description |
System.Int32 |
|
s_VERBOSITY
Declaration
public static cuda.VERBOSITY s_VERBOSITY
Field Value
Properties
instance
Declaration
public static cuda.ICuda instance { get; set; }
Property Value
Methods
Gets info about the specified cudaArray
Declaration
[IntrinsicFunction("cudaArrayGetInfo")]
public static cudaError_t ArrayGetInfo(out cudaChannelFormatDesc desc, out cudaExtent extent, out uint flags, cudaArray_t array)
Parameters
Type |
Name |
Description |
cudaChannelFormatDesc |
desc |
Returned array type
|
cudaExtent |
extent |
Returned array shape. 2D arrays will have depth of zero
|
System.UInt32 |
flags |
Returned array flags
|
cudaArray_t |
array |
The cudaArray to get info for
|
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidValue
|
ChooseDevice(out Int32, ref cudaDeviceProp)
Select compute-device which best matches criteria. Select compute-device which best matches criteria.
Declaration
public static cudaError_t ChooseDevice(out int device, ref cudaDeviceProp prop)
Parameters
Returns
Configure a device-launch
Declaration
[Obsolete("Deprecated method", false)]
public static cudaError_t ConfigureCall(dim3 gridDim, dim3 blockDim, size_t sharedMemory, cudaStream_t stream)
Parameters
Returns
CreateSurfaceObject(out cudaSurfaceObject_t, ref cudaResourceDesc)
Creates a surface object and returns it in pSurfObject. pResDesc describes the data to perform
surface load/stores on. cudaResourceDesc::resType must be cudaResourceTypeArray and
cudaResourceDesc::res::array::array must be set to a valid CUDA array handle.
Surface objects are only supported on devices of compute capability 3.0 or higher.Additionally,
a surface object is an opaque value, and, as such, should only be accessed through CUDA API
calls.
See nvidia documentation
Declaration
public static cudaError_t CreateSurfaceObject(out cudaSurfaceObject_t surface, ref cudaResourceDesc resDesc)
Parameters
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidValue
|
CreateTextureObject(out cudaTextureObject_t, ref cudaResourceDesc, ref cudaTextureDesc)
Creates a texture object and returns it in pTexObject. pResDesc describes the data to texture
from. pTexDesc describes how the data should be sampled. pResViewDesc is an optional argument
that specifies an alternate format for the data described by pResDesc, and also describes the
subresource region to restrict access to when texturing. pResViewDesc can only be specified if
the type of resource is a CUDA array or a CUDA mipmapped array.
Texture objects are only supported on devices of compute capability 3.0 or higher.Additionally,
a texture object is an opaque value, and, as such, should only be accessed through CUDA API
calls.
See nvidia documentation
Declaration
public static cudaError_t CreateTextureObject(out cudaTextureObject_t texture, ref cudaResourceDesc resDesc, ref cudaTextureDesc texDesc)
Parameters
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidValue
|
CreateTextureObject(out cudaTextureObject_t, ref cudaResourceDesc, ref cudaTextureDesc, ref cudaResourceViewDesc)
Creates a texture object and returns it in pTexObject. pResDesc describes the data to texture
from. pTexDesc describes how the data should be sampled. pResViewDesc is an optional argument
that specifies an alternate format for the data described by pResDesc, and also describes the
subresource region to restrict access to when texturing. pResViewDesc can only be specified if
the type of resource is a CUDA array or a CUDA mipmapped array.
Texture objects are only supported on devices of compute capability 3.0 or higher.Additionally,
a texture object is an opaque value, and, as such, should only be accessed through CUDA API
calls.
See nvidia documentation
Declaration
public static cudaError_t CreateTextureObject(out cudaTextureObject_t texture, ref cudaResourceDesc resDesc, ref cudaTextureDesc texDesc, ref cudaResourceViewDesc ResViewDesc)
Parameters
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidValue
|
DestroySurfaceObject(cudaSurfaceObject_t)
Declaration
public static cudaError_t DestroySurfaceObject(cudaSurfaceObject_t surface)
Parameters
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidValue
|
DestroyTextureObject(cudaTextureObject_t)
Declaration
public static cudaError_t DestroyTextureObject(cudaTextureObject_t texture)
Parameters
Returns
DeviceGetAttribute(out Int32, cudaDeviceAttr, Int32)
Returns information about the device.
Declaration
[IntrinsicFunction("cudaDeviceGetAttribute")]
public static cudaError_t DeviceGetAttribute(out int value, cudaDeviceAttr attr, int device)
Parameters
Type |
Name |
Description |
System.Int32 |
value |
|
cudaDeviceAttr |
attr |
|
System.Int32 |
device |
|
Returns
DeviceGetByPCIBusId(out Int32, String)
Returns a handle to a compute device.
Declaration
public static cudaError_t DeviceGetByPCIBusId(out int device, string pciBusId)
Parameters
Type |
Name |
Description |
System.Int32 |
device |
|
System.String |
pciBusId |
|
Returns
DeviceGetCacheConfig(IntPtr)
Returns the preferred cache configuration for the current device.
Declaration
[IntrinsicFunction("cudaDeviceGetCacheConfig")]
public static cudaError_t DeviceGetCacheConfig(IntPtr pCacheConfig)
Parameters
Type |
Name |
Description |
System.IntPtr |
pCacheConfig |
|
Returns
DeviceGetLimit(out size_t, cudaLimit)
Declaration
[IntrinsicFunction("cudaDeviceGetLimit")]
public static cudaError_t DeviceGetLimit(out size_t pValue, cudaLimit limit)
Parameters
Returns
DeviceGetP2PAttribute(out Int32, cudaDeviceP2PAttr, Int32, Int32)
Queries attributes of the link between two devices.
Declaration
public static cudaError_t DeviceGetP2PAttribute(out int value, cudaDeviceP2PAttr attr, int srcDevice, int dstDevice)
Parameters
Type |
Name |
Description |
System.Int32 |
value |
Returned value of the requested attribute
|
cudaDeviceP2PAttr |
attr |
|
System.Int32 |
srcDevice |
The source device of the target link.
|
System.Int32 |
dstDevice |
The destination device of the target link.
|
Returns
DeviceGetPCIBusId(StringBuilder, Int32, Int32)
Returns a PCI Bus Id string for the device.
Declaration
public static cudaError_t DeviceGetPCIBusId(StringBuilder pciBusId, int len, int device)
Parameters
Type |
Name |
Description |
System.Text.StringBuilder |
pciBusId |
|
System.Int32 |
len |
|
System.Int32 |
device |
|
Returns
DeviceGetSharedMemConfig(IntPtr)
Returns the shared memory configuration for the current device.
Declaration
[IntrinsicFunction("cudaDeviceGetSharedMemConfig")]
public static cudaError_t DeviceGetSharedMemConfig(IntPtr pConfig)
Parameters
Type |
Name |
Description |
System.IntPtr |
pConfig |
|
Returns
DeviceGetStreamPriorityRange(out Int32, out Int32)
Returns numerical values that correspond to the least and greatest stream priorities.
Returns in *leastPriority and *greatestPriority the numerical values that correspond to the least and
greatest stream priorities respectively. Stream priorities follow a convention where lower numbers imply
greater priorities. The range of meaningful stream priorities is given by [*greatestPriority, *leastPriority].
If the user attempts to create a stream with a priority value that is outside the the meaningful range as
specified by this API, the priority is automatically clamped down or up to either *leastPriority or
*greatestPriority respectively. See cudaStreamCreateWithPriority for details on creating a priority stream.
A NULL may be passed in for *leastPriority or *greatestPriority if the value is not desired.
This function will return '0' in both *leastPriority and *greatestPriority if the current context's device
does not support stream priorities (see cudaDeviceGetAttribute).
Declaration
public static cudaError_t DeviceGetStreamPriorityRange(out int leastPriority, out int greatestPriority)
Parameters
Type |
Name |
Description |
System.Int32 |
leastPriority |
Pointer to an int in which the numerical value for least stream priority is returned
|
System.Int32 |
greatestPriority |
Pointer to an int in which the numerical value for greatest stream priority is returned
|
Returns
DeviceReset()
Destroy all allocations and reset all state on the current device in the current process.
Declaration
public static cudaError_t DeviceReset()
Returns
DeviceSetCacheConfig(cudaFuncCache)
Sets the preferred cache configuration for the current device.
Declaration
public static cudaError_t DeviceSetCacheConfig(cudaFuncCache cacheConfig)
Parameters
Returns
DeviceSetLimit(cudaLimit, size_t)
Declaration
public static cudaError_t DeviceSetLimit(cudaLimit limit, size_t value)
Parameters
Returns
DeviceSetSharedMemConfig(cudaSharedMemConfig)
Sets the shared memory configuration for the current device.
Declaration
public static cudaError_t DeviceSetSharedMemConfig(cudaSharedMemConfig config)
Parameters
Returns
DeviceSynchronize()
Wait for compute device to finish.
Declaration
[IntrinsicFunction("cudaDeviceSynchronize")]
public static cudaError_t DeviceSynchronize()
Returns
ERROR_CHECK(cudaError_t, Boolean)
Declaration
public static void ERROR_CHECK(cudaError_t err, bool abort = true)
Parameters
Type |
Name |
Description |
cudaError_t |
err |
|
System.Boolean |
abort |
|
EventCreate(out cudaEvent_t)
Declaration
public static cudaError_t EventCreate(out cudaEvent_t evt)
Parameters
Returns
EventCreateWithFlags(out cudaEvent_t, cudaEventFlags)
Creates an event object with the specified flags
Declaration
[IntrinsicFunction("cudaCreateWithFlags")]
public static cudaError_t EventCreateWithFlags(out cudaEvent_t evt, cudaEventFlags flags)
Parameters
Returns
EventDestroy(cudaEvent_t)
Declaration
[IntrinsicFunction("cudaEventDestroy")]
public static cudaError_t EventDestroy(cudaEvent_t evt)
Parameters
Returns
EventElapsedTime(out Single, cudaEvent_t, cudaEvent_t)
Computes the elapsed time between events
Declaration
public static cudaError_t EventElapsedTime(out float ms, cudaEvent_t start, cudaEvent_t stop)
Parameters
Returns
EventQuery(cudaEvent_t)
Queries an event's status
Declaration
public static cudaError_t EventQuery(cudaEvent_t evt)
Parameters
Returns
EventRecord(cudaEvent_t, cudaStream_t)
Declaration
[IntrinsicFunction("cudaEventRecord")]
public static cudaError_t EventRecord(cudaEvent_t evt, cudaStream_t stream)
Parameters
Returns
EventSynchronize(cudaEvent_t)
Waits for an event to complete
Declaration
[IntrinsicFunction("cudaEventSynchronize")]
public static cudaError_t EventSynchronize(cudaEvent_t evt)
Parameters
Returns
Free(IntPtr)
Frees memory on the device
Declaration
[IntrinsicFunction("cudaFree")]
public static cudaError_t Free(IntPtr dev)
Parameters
Type |
Name |
Description |
System.IntPtr |
dev |
|
Returns
Free(Void*)
Declaration
[IntrinsicFunction("cudaFree")]
public static cudaError_t Free(void *dev)
Parameters
Type |
Name |
Description |
System.Void* |
dev |
|
Returns
FreeArray(cudaArray_t)
Frees an array on the device
Declaration
public static cudaError_t FreeArray(cudaArray_t arr)
Parameters
Returns
FreeHost(IntPtr)
Declaration
public static cudaError_t FreeHost(IntPtr ptr)
Parameters
Type |
Name |
Description |
System.IntPtr |
ptr |
|
Returns
FreeHost(Void*)
Declaration
public static cudaError_t FreeHost(void *ptr)
Parameters
Type |
Name |
Description |
System.Void* |
ptr |
|
Returns
FreeMipmappedArray(cudaMipmappedArray_t)
Frees a mipmapped array on the device
Declaration
public static cudaError_t FreeMipmappedArray(cudaMipmappedArray_t mipmappedArray)
Parameters
Returns
FuncGetAttributes(out cudaFuncAttributes, String)
Find out attributes for a given function.
Declaration
[IntrinsicFunction("cudaFuncGetAttributes")]
public static cudaError_t FuncGetAttributes(out cudaFuncAttributes attr, string func)
Parameters
Returns
FuncSetCacheConfig(IntPtr, cudaFuncCache)
Sets the preferred cache configuration for a device function.
Declaration
public static cudaError_t FuncSetCacheConfig(IntPtr func, cudaFuncCache cacheConfig)
Parameters
Type |
Name |
Description |
System.IntPtr |
func |
|
cudaFuncCache |
cacheConfig |
|
Returns
FuncSetSharedMemConfig(IntPtr, cudaSharedMemConfig)
Sets the shared memory configuration for a device function.
Declaration
public static cudaError_t FuncSetSharedMemConfig(IntPtr func, cudaSharedMemConfig config)
Parameters
Returns
GetCudaVersion()
returns the cuda runtime version
Declaration
public static string GetCudaVersion()
Returns
Type |
Description |
System.String |
|
GetDevice(out Int32)
Returns which device is currently being used.
Declaration
[IntrinsicFunction("cudaGetDevice")]
public static cudaError_t GetDevice(out int device)
Parameters
Type |
Name |
Description |
System.Int32 |
device |
|
Returns
GetDeviceCount(out Int32)
Returns the number of compute-capable devices.
Declaration
[IntrinsicFunction("cudaGetDeviceCount")]
public static cudaError_t GetDeviceCount(out int count)
Parameters
Type |
Name |
Description |
System.Int32 |
count |
|
Returns
GetDeviceFlags(out UInt32)
Gets the flags for the current device.
Declaration
public static cudaError_t GetDeviceFlags(out uint flags)
Parameters
Type |
Name |
Description |
System.UInt32 |
flags |
|
Returns
GetDeviceProperties(out cudaDeviceProp, Int32)
Returns information about the compute-device.
Declaration
public static cudaError_t GetDeviceProperties(out cudaDeviceProp prop, int device)
Parameters
Returns
GetErrorName(cudaError_t)
Returns the string representation of an error code enum name
Declaration
[IntrinsicFunction("cudaGetErrorName")]
public static string GetErrorName(cudaError_t err)
Parameters
Returns
Type |
Description |
System.String |
|
GetErrorString(cudaError_t)
Returns the description string for an error code
Declaration
[IntrinsicFunction("cudaGetErrorString")]
public static string GetErrorString(cudaError_t err)
Parameters
Returns
Type |
Description |
System.String |
|
GetLastError()
Returns the last error from a runtime call
Declaration
[IntrinsicFunction("cudaGetLastError")]
public static cudaError_t GetLastError()
Returns
GetMipmappedArrayLevel(out cudaArray_t, cudaMipmappedArray_const_t, UInt32)
Gets a mipmap level of a CUDA mipmapped array
Declaration
public static cudaError_t GetMipmappedArrayLevel(out cudaArray_t levelArray, cudaMipmappedArray_const_t mipmappedArray, uint level)
Parameters
Returns
GetPeekAtLastError()
Returns the last error from a runtime call
Declaration
[IntrinsicFunction("cudaGetPeekAtLastError")]
public static cudaError_t GetPeekAtLastError()
Returns
GetSurfaceObjectResourceDesc(out cudaResourceDesc, cudaSurfaceObject_t)
Returns a surface object's resource descriptor Returns the resource descriptor for the surface
object specified by surfObject.
Declaration
public static cudaError_t GetSurfaceObjectResourceDesc(out cudaResourceDesc resDesc, cudaSurfaceObject_t surface)
Parameters
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidValue
|
GetSymbolAddress(out IntPtr, String)
Finds the address associated with a CUDA symbol
Declaration
public static cudaError_t GetSymbolAddress(out IntPtr devPtr, string symbol)
Parameters
Type |
Name |
Description |
System.IntPtr |
devPtr |
|
System.String |
symbol |
|
Returns
GetSymbolAddress(out Void*, String)
Declaration
public static cudaError_t GetSymbolAddress(out void *devPtr, string symbol)
Parameters
Type |
Name |
Description |
System.Void* |
devPtr |
|
System.String |
symbol |
|
Returns
GetSymbolSize(out size_t, String)
Finds the size of the object associated with a CUDA symbol
Declaration
public static cudaError_t GetSymbolSize(out size_t size, string symbol)
Parameters
Type |
Name |
Description |
size_t |
size |
|
System.String |
symbol |
|
Returns
GetTextureObjectResourceDesc(out cudaResourceDesc, cudaTextureObject_t)
Returns the resource descriptor for the texture object specified by texObject.
See nvidia documentation
Declaration
public static cudaError_t GetTextureObjectResourceDesc(out cudaResourceDesc resDesc, cudaTextureObject_t texture)
Parameters
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidValue
|
GLRegisterBufferObject(UInt32)
Registers a buffer object for access by CUDA.
Declaration
public static cudaError_t GLRegisterBufferObject(uint buffer)
Parameters
Type |
Name |
Description |
System.UInt32 |
buffer |
Buffer object ID to register
|
Returns
GLUnregisterBufferObject(UInt32)
Unmaps a buffer object for access by CUDA.
Declaration
public static cudaError_t GLUnregisterBufferObject(uint buffer)
Parameters
Type |
Name |
Description |
System.UInt32 |
buffer |
Buffer object to unmap
|
Returns
GraphicsGLRegisterBuffer(out IntPtr, UInt32, UInt32)
Registers an OpenGL buffer object.
Declaration
public static cudaError_t GraphicsGLRegisterBuffer(out IntPtr pCudaResource, uint buffer, uint Flags)
Parameters
Type |
Name |
Description |
System.IntPtr |
pCudaResource |
Pointer to the returned object handle
|
System.UInt32 |
buffer |
name of buffer object to be registered
|
System.UInt32 |
Flags |
Register flags
|
Returns
GraphicsGLRegisterImage(out IntPtr, UInt32, UInt32, UInt32)
Register an OpenGL texture or renderbuffer object.
Declaration
public static cudaError_t GraphicsGLRegisterImage(out IntPtr cudaGraphicsResource, uint image, uint target, uint flags)
Parameters
Type |
Name |
Description |
System.IntPtr |
cudaGraphicsResource |
Pointer to the returned object handle
|
System.UInt32 |
image |
name of texture or renderbuffer object to be registered
|
System.UInt32 |
target |
Identifies the type of object specified by image
|
System.UInt32 |
flags |
Register flags
|
Returns
Type |
Description |
cudaError_t |
cudaErrorInvalidDevice, cudaErrorInvalidValue, cudaErrorInvalidResourceHandle, cudaErrorUnknown
|
GraphicsMapResources(Int32, IntPtr[], cudaStream_t)
Map graphics resources for access by CUDA.
Declaration
public static cudaError_t GraphicsMapResources(int count, IntPtr[] resources, cudaStream_t stream)
Parameters
Type |
Name |
Description |
System.Int32 |
count |
Number of resources to map
|
System.IntPtr[] |
resources |
Resources to map for CUDA
|
cudaStream_t |
stream |
Stream for synchronization
|
Returns
GraphicsResourceGetMappedPointer(out IntPtr, out size_t, IntPtr)
Get an device pointer through which to access a mapped graphics resource.
Declaration
public static cudaError_t GraphicsResourceGetMappedPointer(out IntPtr devPtr, out size_t size, IntPtr resource)
Parameters
Type |
Name |
Description |
System.IntPtr |
devPtr |
Returned pointer through which resource may be accessed
|
size_t |
size |
Returned size of the buffer accessible starting at *devPtr
|
System.IntPtr |
resource |
Mapped resource to access
|
Returns
GraphicsResourceSetMapFlags(IntPtr, UInt32)
Set usage flags for mapping a graphics resource.
Declaration
public static cudaError_t GraphicsResourceSetMapFlags(IntPtr resource, uint flags)
Parameters
Type |
Name |
Description |
System.IntPtr |
resource |
Registered resource to set flags for
|
System.UInt32 |
flags |
Parameters for resource mapping
|
Returns
GraphicsSubResourceGetMappedArray(out cudaArray_t, IntPtr, UInt32, UInt32)
Get an array through which to access a subresource of a mapped graphics resource.
Declaration
public static cudaError_t GraphicsSubResourceGetMappedArray(out cudaArray_t array, IntPtr resource, uint arrayIndex, uint mipLevel)
Parameters
Type |
Name |
Description |
cudaArray_t |
array |
Returned array through which a subresource of resource may be accessed
|
System.IntPtr |
resource |
Mapped resource to access
|
System.UInt32 |
arrayIndex |
Array index for array textures or cubemap face index as defined by cudaGraphicsCubeFace for cubemap textures for the subresource to access
|
System.UInt32 |
mipLevel |
Mipmap level for the subresource to access
|
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidValue, cudaErrorInvalidResourceHandle, cudaErrorUnknown
|
GraphicsUnmapResources(Int32, IntPtr[], cudaStream_t)
Unmap graphics resources.
Declaration
public static cudaError_t GraphicsUnmapResources(int count, IntPtr[] resources, cudaStream_t stream)
Parameters
Type |
Name |
Description |
System.Int32 |
count |
Number of resources to map
|
System.IntPtr[] |
resources |
Resources to map for CUDA
|
cudaStream_t |
stream |
Stream for synchronization
|
Returns
GraphicsUnregisterResource(IntPtr)
Unregisters a graphics resource for access by CUDA.
Declaration
public static cudaError_t GraphicsUnregisterResource(IntPtr resource)
Parameters
Type |
Name |
Description |
System.IntPtr |
resource |
Resource to unregister
|
Returns
HostAlloc(out IntPtr, size_t, cudaHostAllocFlags)
Allocates page-locked memory on the host
Declaration
public static cudaError_t HostAlloc(out IntPtr ptr, size_t size, cudaHostAllocFlags flags)
Parameters
Returns
HostAlloc(out Void*, size_t, cudaHostAllocFlags)
Declaration
public static cudaError_t HostAlloc(out void *ptr, size_t size, cudaHostAllocFlags flags)
Parameters
Returns
HostGetDevicePointer(out IntPtr, IntPtr, cudaGetDevicePointerFlags)
asses back device pointer of mapped host memory allocated by cudaHostAlloc or registered by cudaHostRegister
Declaration
public static cudaError_t HostGetDevicePointer(out IntPtr pdev, IntPtr phost, cudaGetDevicePointerFlags flags)
Parameters
Returns
HostGetDevicePointer(out Void*, IntPtr, cudaGetDevicePointerFlags)
Declaration
public static cudaError_t HostGetDevicePointer(out void *pdev, IntPtr phost, cudaGetDevicePointerFlags flags)
Parameters
Returns
HostGetFlags(out cudaHostAllocFlags, IntPtr)
Passes back flags used to allocate pinned host memory allocated by cudaHostAlloc
Declaration
public static cudaError_t HostGetFlags(out cudaHostAllocFlags flags, IntPtr phost)
Parameters
Returns
HostGetFlags(out cudaHostAllocFlags, Void*)
Declaration
public static cudaError_t HostGetFlags(out cudaHostAllocFlags flags, void *phost)
Parameters
Returns
HostRegister(IntPtr, size_t, UInt32)
Registers an existing host memory range for use by CUDA
Declaration
public static cudaError_t HostRegister(IntPtr ptr, size_t size, uint flags)
Parameters
Type |
Name |
Description |
System.IntPtr |
ptr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
HostRegister(Void*, size_t, UInt32)
Declaration
public static cudaError_t HostRegister(void *ptr, size_t size, uint flags)
Parameters
Type |
Name |
Description |
System.Void* |
ptr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
HostUnregister(IntPtr)
Unregisters a memory range that was registered with cudaHostRegister
Declaration
public static cudaError_t HostUnregister(IntPtr ptr)
Parameters
Type |
Name |
Description |
System.IntPtr |
ptr |
|
Returns
IpcCloseMemHandle(IntPtr)
Declaration
public static cudaError_t IpcCloseMemHandle(IntPtr devPtr)
Parameters
Type |
Name |
Description |
System.IntPtr |
devPtr |
|
Returns
IpcGetEventHandle(out cudaIpcEventHandle_t, cudaEvent_t)
Gets an interprocess handle for a previously allocated event.
Declaration
public static cudaError_t IpcGetEventHandle(out cudaIpcEventHandle_t handle, cudaEvent_t evt)
Parameters
Returns
IpcGetMemHandle(out cudaIpcMemHandle_t, IntPtr)
Gets an interprocess memory handle for an existing device memory allocation
Declaration
public static cudaError_t IpcGetMemHandle(out cudaIpcMemHandle_t handle, IntPtr devPtr)
Parameters
Returns
IpcOpenEventHandle(out cudaEvent_t, cudaIpcEventHandle_t)
Opens an interprocess event handle for use in the current process.
Declaration
public static cudaError_t IpcOpenEventHandle(out cudaEvent_t evt, cudaIpcEventHandle_t handle)
Parameters
Returns
IpcOpenMemHandle(out IntPtr, cudaIpcMemHandle_t, UInt32)
Opens an interprocess memory handle exported from another process and returns a device pointer usable in the local process.
Declaration
public static cudaError_t IpcOpenMemHandle(out IntPtr devPtr, cudaIpcMemHandle_t handle, uint flags)
Parameters
Returns
IsCudaAvailable()
Check if CUDA is available
Declaration
public static bool IsCudaAvailable()
Returns
Type |
Description |
System.Boolean |
|
Launch(String)
Launches a device function.
Declaration
[Obsolete("Deprecated method", false)]
public static cudaError_t Launch(string func)
Parameters
Type |
Name |
Description |
System.String |
func |
|
Returns
LaunchKernel(IntPtr, dim3, dim3, IntPtr, size_t, cudaStream_t)
Launches a device function.
Declaration
public static cudaError_t LaunchKernel(IntPtr func, dim3 gridDim, dim3 blockDim, IntPtr args, size_t sharedMem, cudaStream_t stream)
Parameters
Returns
Malloc(out Byte*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out byte *dev, size_t size)
Parameters
Type |
Name |
Description |
System.Byte* |
dev |
|
size_t |
size |
|
Returns
Malloc(out Double*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out double *dev, size_t size)
Parameters
Type |
Name |
Description |
System.Double* |
dev |
|
size_t |
size |
|
Returns
Malloc(out Int16*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out short *dev, size_t size)
Parameters
Type |
Name |
Description |
System.Int16* |
dev |
|
size_t |
size |
|
Returns
Malloc(out Int32*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out int *dev, size_t size)
Parameters
Type |
Name |
Description |
System.Int32* |
dev |
|
size_t |
size |
|
Returns
Malloc(out Int64*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out long *dev, size_t size)
Parameters
Type |
Name |
Description |
System.Int64* |
dev |
|
size_t |
size |
|
Returns
Malloc(out IntPtr, size_t)
Allocates memory on the device
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out IntPtr dev, size_t size)
Parameters
Type |
Name |
Description |
System.IntPtr |
dev |
|
size_t |
size |
|
Returns
Malloc(out SByte*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out sbyte *dev, size_t size)
Parameters
Type |
Name |
Description |
System.SByte* |
dev |
|
size_t |
size |
|
Returns
Malloc(out Single*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out float *dev, size_t size)
Parameters
Type |
Name |
Description |
System.Single* |
dev |
|
size_t |
size |
|
Returns
Malloc(out UInt16*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out ushort *dev, size_t size)
Parameters
Type |
Name |
Description |
System.UInt16* |
dev |
|
size_t |
size |
|
Returns
Malloc(out UInt32*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out uint *dev, size_t size)
Parameters
Type |
Name |
Description |
System.UInt32* |
dev |
|
size_t |
size |
|
Returns
Malloc(out UInt64*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out ulong *dev, size_t size)
Parameters
Type |
Name |
Description |
System.UInt64* |
dev |
|
size_t |
size |
|
Returns
Malloc(out Void*, size_t)
Declaration
[IntrinsicFunction("cudaMalloc")]
public static cudaError_t Malloc(out void *dev, size_t size)
Parameters
Type |
Name |
Description |
System.Void* |
dev |
|
size_t |
size |
|
Returns
Malloc3D(ref cudaPitchedPtr, cudaExtent)
Allocates memory on the device
Declaration
public static cudaError_t Malloc3D(ref cudaPitchedPtr ptr, cudaExtent extent)
Parameters
Returns
Allocates memory on the device
Declaration
public static cudaError_t Malloc3DArray(out cudaArray_t arr, ref cudaChannelFormatDesc chan, cudaExtent extent, cudaMallocArrayFlags flags)
Parameters
Returns
Allocates memory on the device
Declaration
public static cudaError_t MallocArray(out cudaArray_t arr, ref cudaChannelFormatDesc chan, size_t width, size_t height, cudaMallocArrayFlags flags)
Parameters
Returns
MallocHost(out Byte*, size_t)
Declaration
public static cudaError_t MallocHost(out byte *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.Byte* |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out Double*, size_t)
Declaration
public static cudaError_t MallocHost(out double *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.Double* |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out Int16*, size_t)
Declaration
public static cudaError_t MallocHost(out short *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.Int16* |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out Int32*, size_t)
Declaration
public static cudaError_t MallocHost(out int *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.Int32* |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out Int64*, size_t)
Declaration
public static cudaError_t MallocHost(out long *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.Int64* |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out IntPtr, size_t)
Allocates page-locked memory on the host
Declaration
public static cudaError_t MallocHost(out IntPtr ptr, size_t size)
Parameters
Type |
Name |
Description |
System.IntPtr |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out SByte*, size_t)
Declaration
public static cudaError_t MallocHost(out sbyte *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.SByte* |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out Single*, size_t)
Declaration
public static cudaError_t MallocHost(out float *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.Single* |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out UInt16*, size_t)
Declaration
public static cudaError_t MallocHost(out ushort *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.UInt16* |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out UInt32*, size_t)
Declaration
public static cudaError_t MallocHost(out uint *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.UInt32* |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out UInt64*, size_t)
Declaration
public static cudaError_t MallocHost(out ulong *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.UInt64* |
ptr |
|
size_t |
size |
|
Returns
MallocHost(out Void*, size_t)
Declaration
public static cudaError_t MallocHost(out void *ptr, size_t size)
Parameters
Type |
Name |
Description |
System.Void* |
ptr |
|
size_t |
size |
|
Returns
MallocManaged(out Byte*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out byte *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.Byte* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out Double*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out double *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.Double* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out Int16*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out short *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.Int16* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out Int32*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out int *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.Int32* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out Int64*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out long *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.Int64* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out IntPtr, size_t, UInt32)
Allocates memory that will be automatically managed by the Unified Memory system
Declaration
public static cudaError_t MallocManaged(out IntPtr devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.IntPtr |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out SByte*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out sbyte *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.SByte* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out Single*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out float *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.Single* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out UInt16*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out ushort *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.UInt16* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out UInt32*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out uint *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.UInt32* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out UInt64*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out ulong *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.UInt64* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
MallocManaged(out Void*, size_t, UInt32)
Declaration
public static cudaError_t MallocManaged(out void *devPtr, size_t size, uint flags = 1U)
Parameters
Type |
Name |
Description |
System.Void* |
devPtr |
|
size_t |
size |
|
System.UInt32 |
flags |
|
Returns
Allocate a mipmapped array on the device
Declaration
public static cudaError_t MallocMipmappedArray(out cudaMipmappedArray_t mipmappedArray, ref cudaChannelFormatDesc desc, cudaExtent extent, uint numLevels, uint flags = 0U)
Parameters
Returns
MallocPitch(out Byte*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out byte *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out Double*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out double *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out Int16*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out short *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out Int32*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out int *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out Int64*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out long *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out IntPtr, out size_t, size_t, size_t)
Allocates pitched memory on the device
Declaration
public static cudaError_t MallocPitch(out IntPtr devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out SByte*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out sbyte *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out Single*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out float *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out UInt16*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out ushort *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out UInt32*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out uint *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out UInt64*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out ulong *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MallocPitch(out Void*, out size_t, size_t, size_t)
Declaration
public static cudaError_t MallocPitch(out void *devptr, out size_t pitch, size_t width, size_t height)
Parameters
Returns
MemAdvise(IntPtr, size_t, cudaMemmoryAdvise, Int32)
Advise about the usage of a given memory range
Declaration
public static cudaError_t MemAdvise(IntPtr devptr, size_t count, cudaMemmoryAdvise advice, int device)
Parameters
Returns
MemAdvise(Void*, size_t, cudaMemmoryAdvise, Int32)
Declaration
public static cudaError_t MemAdvise(void *devptr, size_t count, cudaMemmoryAdvise advice, int device)
Parameters
Returns
Memcpy(IntPtr, IntPtr, size_t, cudaMemcpyKind)
Copies data between host and device
destination pointer
direction of memcopy
number of bytes to copy
source pointer
Declaration
public static cudaError_t Memcpy(IntPtr dest, IntPtr src, size_t size, cudaMemcpyKind kind)
Parameters
Returns
Memcpy(IntPtr, Void*, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t Memcpy(IntPtr dest, void *src, size_t size, cudaMemcpyKind kind)
Parameters
Returns
Memcpy(Void*, IntPtr, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t Memcpy(void *dest, IntPtr src, size_t size, cudaMemcpyKind kind)
Parameters
Returns
Memcpy(Void*, Void*, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t Memcpy(void *dest, void *src, size_t size, cudaMemcpyKind kind)
Parameters
Returns
Memcpy2D(IntPtr, size_t, IntPtr, size_t, size_t, size_t, cudaMemcpyKind)
Copies data between host and device
Declaration
public static cudaError_t Memcpy2D(IntPtr dest, size_t dpitch, IntPtr src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind)
Parameters
Returns
Memcpy2D(IntPtr, size_t, Void*, size_t, size_t, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t Memcpy2D(IntPtr dest, size_t dpitch, void *src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind)
Parameters
Returns
Memcpy2D(Void*, size_t, IntPtr, size_t, size_t, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t Memcpy2D(void *dest, size_t dpitch, IntPtr src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind)
Parameters
Returns
Memcpy2D(Void*, size_t, Void*, size_t, size_t, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t Memcpy2D(void *dest, size_t dpitch, void *src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind)
Parameters
Returns
Memcpy2DArrayToArray(cudaArray_t, size_t, size_t, cudaArray_t, size_t, size_t, size_t, size_t, cudaMemcpyKind)
Copies data between host and device
Declaration
public static cudaError_t Memcpy2DArrayToArray(cudaArray_t dest, size_t wOffsetDest, size_t hOffsetDest, cudaArray_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t width, size_t height, cudaMemcpyKind kind)
Parameters
Returns
Memcpy2DAsync(IntPtr, size_t, IntPtr, size_t, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Copies data between host and device
Declaration
[IntrinsicFunction("cudaMemcpy2DAsync")]
public static cudaError_t Memcpy2DAsync(IntPtr dest, size_t dpitch, IntPtr src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
Memcpy2DAsync(IntPtr, size_t, Void*, size_t, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
[IntrinsicFunction("cudaMemcpy2DAsync")]
public static cudaError_t Memcpy2DAsync(IntPtr dest, size_t dpitch, void *src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
Memcpy2DAsync(Void*, size_t, IntPtr, size_t, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
[IntrinsicFunction("cudaMemcpy2DAsync")]
public static cudaError_t Memcpy2DAsync(void *dest, size_t dpitch, IntPtr src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
Memcpy2DAsync(Void*, size_t, Void*, size_t, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
[IntrinsicFunction("cudaMemcpy2DAsync")]
public static cudaError_t Memcpy2DAsync(void *dest, size_t dpitch, void *src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
Memcpy2DFromArray(IntPtr, size_t, cudaArray_t, size_t, size_t, size_t, size_t, cudaMemcpyKind)
Copies data between host and device
Declaration
public static cudaError_t Memcpy2DFromArray(IntPtr dest, size_t dpitch, cudaArray_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind)
Parameters
Returns
Memcpy2DFromArray(Void*, size_t, cudaArray_t, size_t, size_t, size_t, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t Memcpy2DFromArray(void *dest, size_t dpitch, cudaArray_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind)
Parameters
Returns
Memcpy2DFromArrayAsync(IntPtr, size_t, cudaArray_t, size_t, size_t, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Copies data between host and device
Declaration
public static cudaError_t Memcpy2DFromArrayAsync(IntPtr dest, size_t dpitch, cudaArray_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
Memcpy2DFromArrayAsync(Void*, size_t, cudaArray_t, size_t, size_t, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
public static cudaError_t Memcpy2DFromArrayAsync(void *dest, size_t dpitch, cudaArray_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
Memcpy2DToArray(cudaArray_t, size_t, size_t, IntPtr, size_t, size_t, size_t, cudaMemcpyKind)
Copies data between host and device
Declaration
public static cudaError_t Memcpy2DToArray(cudaArray_t dest, size_t wOffsetDest, size_t hOffsetDest, IntPtr src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind)
Parameters
Returns
Memcpy2DToArray(cudaArray_t, size_t, size_t, Void*, size_t, size_t, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t Memcpy2DToArray(cudaArray_t dest, size_t wOffsetDest, size_t hOffsetDest, void *src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind)
Parameters
Returns
Memcpy2DToArrayAsync(cudaArray_t, size_t, size_t, IntPtr, size_t, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Copies data between host and device
Declaration
public static cudaError_t Memcpy2DToArrayAsync(cudaArray_t dest, size_t wOffsetDest, size_t hOffsetDest, IntPtr src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
Memcpy2DToArrayAsync(cudaArray_t, size_t, size_t, Void*, size_t, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
public static cudaError_t Memcpy2DToArrayAsync(cudaArray_t dest, size_t wOffsetDest, size_t hOffsetDest, void *src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
Memcpy3D(ref cudaMemcpy3DParms)
Copies data between host and device
Declaration
public static cudaError_t Memcpy3D(ref cudaMemcpy3DParms par)
Parameters
Returns
Memcpy3DAsync(ref cudaMemcpy3DParms, cudaStream_t)
Copies data between host and device
Declaration
[IntrinsicFunction("cudaMemcpy3DAsync")]
public static cudaError_t Memcpy3DAsync(ref cudaMemcpy3DParms par, cudaStream_t stream)
Parameters
Returns
Memcpy3DPeer(ref cudaMemcpy3DPeerParms)
Copies memory between devices
Declaration
public static cudaError_t Memcpy3DPeer(ref cudaMemcpy3DPeerParms par)
Parameters
Returns
Memcpy3DPeerAsync(ref cudaMemcpy3DPeerParms, cudaStream_t)
Copies memory between devices
Declaration
public static cudaError_t Memcpy3DPeerAsync(ref cudaMemcpy3DPeerParms par, cudaStream_t stream)
Parameters
Returns
MemcpyArrayToArray(cudaArray_t, size_t, size_t, cudaArray_t, size_t, size_t, size_t, cudaMemcpyKind)
Copies data between host and device
Declaration
public static cudaError_t MemcpyArrayToArray(cudaArray_t dest, size_t wOffsetDst, size_t hOffsetDst, cudaArray_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t count, cudaMemcpyKind kind)
Parameters
Returns
MemcpyAsync(IntPtr, IntPtr, size_t, cudaMemcpyKind, cudaStream_t)
Copies data between host and device
Declaration
[IntrinsicFunction("cudaMemcpyAsync")]
public static cudaError_t MemcpyAsync(IntPtr dest, IntPtr src, size_t size, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyAsync(IntPtr, Void*, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
[IntrinsicFunction("cudaMemcpyAsync")]
public static cudaError_t MemcpyAsync(IntPtr dest, void *src, size_t size, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyAsync(Void*, IntPtr, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
[IntrinsicFunction("cudaMemcpyAsync")]
public static cudaError_t MemcpyAsync(void *dest, IntPtr src, size_t size, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyAsync(Void*, Void*, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
[IntrinsicFunction("cudaMemcpyAsync")]
public static cudaError_t MemcpyAsync(void *dest, void *src, size_t size, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyFromArray(IntPtr, cudaArray_t, size_t, size_t, size_t, cudaMemcpyKind)
Copies data between host and device
Declaration
public static cudaError_t MemcpyFromArray(IntPtr dest, cudaArray_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind)
Parameters
Returns
MemcpyFromArray(Void*, cudaArray_t, size_t, size_t, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t MemcpyFromArray(void *dest, cudaArray_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind)
Parameters
Returns
MemcpyFromArrayAsync(IntPtr, cudaArray_t, size_t, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Copies data between host and device
Declaration
public static cudaError_t MemcpyFromArrayAsync(IntPtr dest, cudaArray_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyFromArrayAsync(Void*, cudaArray_t, size_t, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
public static cudaError_t MemcpyFromArrayAsync(void *dest, cudaArray_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyFromSymbol(IntPtr, String, size_t, size_t, cudaMemcpyKind)
Copies data from the given symbol on the device
Declaration
public static cudaError_t MemcpyFromSymbol(IntPtr dest, string symbol, size_t count, size_t offset, cudaMemcpyKind kind)
Parameters
Returns
MemcpyFromSymbol(Void*, String, size_t, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t MemcpyFromSymbol(void *dest, string symbol, size_t count, size_t offset, cudaMemcpyKind kind)
Parameters
Returns
MemcpyFromSymbolAsync(IntPtr, String, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Copies data from the given symbol on the device
Declaration
public static cudaError_t MemcpyFromSymbolAsync(IntPtr dest, string symbol, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyFromSymbolAsync(Void*, String, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
public static cudaError_t MemcpyFromSymbolAsync(void *dest, string symbol, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyPeer(IntPtr, Int32, IntPtr, Int32, size_t)
Copies memory between devices
Declaration
public static cudaError_t MemcpyPeer(IntPtr dest, int dstDevice, IntPtr src, int srcDevice, size_t count)
Parameters
Type |
Name |
Description |
System.IntPtr |
dest |
|
System.Int32 |
dstDevice |
|
System.IntPtr |
src |
|
System.Int32 |
srcDevice |
|
size_t |
count |
|
Returns
MemcpyPeer(IntPtr, Int32, Void*, Int32, size_t)
Declaration
public static cudaError_t MemcpyPeer(IntPtr dest, int dstDevice, void *src, int srcDevice, size_t count)
Parameters
Type |
Name |
Description |
System.IntPtr |
dest |
|
System.Int32 |
dstDevice |
|
System.Void* |
src |
|
System.Int32 |
srcDevice |
|
size_t |
count |
|
Returns
MemcpyPeer(Void*, Int32, IntPtr, Int32, size_t)
Declaration
public static cudaError_t MemcpyPeer(void *dest, int dstDevice, IntPtr src, int srcDevice, size_t count)
Parameters
Type |
Name |
Description |
System.Void* |
dest |
|
System.Int32 |
dstDevice |
|
System.IntPtr |
src |
|
System.Int32 |
srcDevice |
|
size_t |
count |
|
Returns
MemcpyPeer(Void*, Int32, Void*, Int32, size_t)
Declaration
public static cudaError_t MemcpyPeer(void *dest, int dstDevice, void *src, int srcDevice, size_t count)
Parameters
Type |
Name |
Description |
System.Void* |
dest |
|
System.Int32 |
dstDevice |
|
System.Void* |
src |
|
System.Int32 |
srcDevice |
|
size_t |
count |
|
Returns
MemcpyPeerAsync(IntPtr, Int32, IntPtr, Int32, size_t, cudaStream_t)
Copies memory between devices
Declaration
public static cudaError_t MemcpyPeerAsync(IntPtr dest, int dstDevice, IntPtr src, int srcDevice, size_t count, cudaStream_t stream)
Parameters
Type |
Name |
Description |
System.IntPtr |
dest |
|
System.Int32 |
dstDevice |
|
System.IntPtr |
src |
|
System.Int32 |
srcDevice |
|
size_t |
count |
|
cudaStream_t |
stream |
|
Returns
MemcpyPeerAsync(IntPtr, Int32, Void*, Int32, size_t, cudaStream_t)
Declaration
public static cudaError_t MemcpyPeerAsync(IntPtr dest, int dstDevice, void *src, int srcDevice, size_t count, cudaStream_t stream)
Parameters
Type |
Name |
Description |
System.IntPtr |
dest |
|
System.Int32 |
dstDevice |
|
System.Void* |
src |
|
System.Int32 |
srcDevice |
|
size_t |
count |
|
cudaStream_t |
stream |
|
Returns
MemcpyPeerAsync(Void*, Int32, IntPtr, Int32, size_t, cudaStream_t)
Declaration
public static cudaError_t MemcpyPeerAsync(void *dest, int dstDevice, IntPtr src, int srcDevice, size_t count, cudaStream_t stream)
Parameters
Type |
Name |
Description |
System.Void* |
dest |
|
System.Int32 |
dstDevice |
|
System.IntPtr |
src |
|
System.Int32 |
srcDevice |
|
size_t |
count |
|
cudaStream_t |
stream |
|
Returns
MemcpyPeerAsync(Void*, Int32, Void*, Int32, size_t, cudaStream_t)
Declaration
public static cudaError_t MemcpyPeerAsync(void *dest, int dstDevice, void *src, int srcDevice, size_t count, cudaStream_t stream)
Parameters
Type |
Name |
Description |
System.Void* |
dest |
|
System.Int32 |
dstDevice |
|
System.Void* |
src |
|
System.Int32 |
srcDevice |
|
size_t |
count |
|
cudaStream_t |
stream |
|
Returns
MemcpyToArray(cudaArray_t, size_t, size_t, IntPtr, size_t, cudaMemcpyKind)
Copies data between host and device
Declaration
public static cudaError_t MemcpyToArray(cudaArray_t dest, size_t wOffset, size_t hOffset, IntPtr src, size_t count, cudaMemcpyKind kind)
Parameters
Returns
MemcpyToArray(cudaArray_t, size_t, size_t, Void*, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t MemcpyToArray(cudaArray_t dest, size_t wOffset, size_t hOffset, void *src, size_t count, cudaMemcpyKind kind)
Parameters
Returns
MemcpyToArrayAsync(cudaArray_t, size_t, size_t, IntPtr, size_t, cudaMemcpyKind, cudaStream_t)
Copies data between host and device
Declaration
public static cudaError_t MemcpyToArrayAsync(cudaArray_t dest, size_t wOffset, size_t hOffset, IntPtr src, size_t count, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyToArrayAsync(cudaArray_t, size_t, size_t, Void*, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
public static cudaError_t MemcpyToArrayAsync(cudaArray_t dest, size_t wOffset, size_t hOffset, void *src, size_t count, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyToSymbol(String, IntPtr, size_t, size_t, cudaMemcpyKind)
Copies data to the given symbol on the device
Declaration
public static cudaError_t MemcpyToSymbol(string symbol, IntPtr src, size_t count, size_t offset, cudaMemcpyKind kind)
Parameters
Returns
MemcpyToSymbol(String, Void*, size_t, size_t, cudaMemcpyKind)
Declaration
public static cudaError_t MemcpyToSymbol(string symbol, void *src, size_t count, size_t offset, cudaMemcpyKind kind)
Parameters
Returns
MemcpyToSymbolAsync(String, IntPtr, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Copies data to the given symbol on the device
Declaration
public static cudaError_t MemcpyToSymbolAsync(string symbol, IntPtr src, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemcpyToSymbolAsync(String, Void*, size_t, size_t, cudaMemcpyKind, cudaStream_t)
Declaration
public static cudaError_t MemcpyToSymbolAsync(string symbol, void *src, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream)
Parameters
Returns
MemGetInfo(out size_t, out size_t)
Gets free and total device memory
Declaration
public static cudaError_t MemGetInfo(out size_t free, out size_t total)
Parameters
Returns
MemPrefetchAsync(IntPtr, size_t, Int32)
Declaration
public static cudaError_t MemPrefetchAsync(IntPtr devptr, size_t count, int dstDevice)
Parameters
Type |
Name |
Description |
System.IntPtr |
devptr |
|
size_t |
count |
|
System.Int32 |
dstDevice |
|
Returns
MemPrefetchAsync(IntPtr, size_t, Int32, cudaStream_t)
Prefetches memory to the specified destination device
Declaration
public static cudaError_t MemPrefetchAsync(IntPtr devptr, size_t count, int dstDevice, cudaStream_t stream)
Parameters
Type |
Name |
Description |
System.IntPtr |
devptr |
|
size_t |
count |
|
System.Int32 |
dstDevice |
|
cudaStream_t |
stream |
|
Returns
MemPrefetchAsync(Void*, size_t, Int32)
Declaration
public static cudaError_t MemPrefetchAsync(void *devptr, size_t count, int dstDevice)
Parameters
Type |
Name |
Description |
System.Void* |
devptr |
|
size_t |
count |
|
System.Int32 |
dstDevice |
|
Returns
MemPrefetchAsync(Void*, size_t, Int32, cudaStream_t)
Declaration
public static cudaError_t MemPrefetchAsync(void *devptr, size_t count, int dstDevice, cudaStream_t stream)
Parameters
Type |
Name |
Description |
System.Void* |
devptr |
|
size_t |
count |
|
System.Int32 |
dstDevice |
|
cudaStream_t |
stream |
|
Returns
Memset(IntPtr, Int32, size_t)
Initializes or sets device memory to a value
Declaration
public static cudaError_t Memset(IntPtr devPtr, int value, size_t count)
Parameters
Type |
Name |
Description |
System.IntPtr |
devPtr |
|
System.Int32 |
value |
|
size_t |
count |
|
Returns
Memset(Void*, Int32, size_t)
Declaration
public static cudaError_t Memset(void *devPtr, int value, size_t count)
Parameters
Type |
Name |
Description |
System.Void* |
devPtr |
|
System.Int32 |
value |
|
size_t |
count |
|
Returns
Memset2D(IntPtr, size_t, Int32, size_t, size_t)
Initializes or sets device memory to a value
Declaration
public static cudaError_t Memset2D(IntPtr devPtr, size_t pitch, int value, size_t width, size_t height)
Parameters
Type |
Name |
Description |
System.IntPtr |
devPtr |
|
size_t |
pitch |
|
System.Int32 |
value |
|
size_t |
width |
|
size_t |
height |
|
Returns
Memset2D(Void*, size_t, Int32, size_t, size_t)
Declaration
public static cudaError_t Memset2D(void *devPtr, size_t pitch, int value, size_t width, size_t height)
Parameters
Type |
Name |
Description |
System.Void* |
devPtr |
|
size_t |
pitch |
|
System.Int32 |
value |
|
size_t |
width |
|
size_t |
height |
|
Returns
Memset2DAsync(IntPtr, size_t, Int32, size_t, size_t, cudaStream_t)
Initializes or sets device memory to a value
Declaration
[IntrinsicFunction("cudaMemset2DAsync")]
public static cudaError_t Memset2DAsync(IntPtr devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream)
Parameters
Returns
Memset2DAsync(Void*, size_t, Int32, size_t, size_t, cudaStream_t)
Declaration
public static cudaError_t Memset2DAsync(void *devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream)
Parameters
Returns
Memset3D(cudaPitchedPtr, Int32, cudaExtent)
Initializes or sets device memory to a value
Declaration
public static cudaError_t Memset3D(cudaPitchedPtr devPtr, int value, cudaExtent extent)
Parameters
Returns
Memset3DAsync(cudaPitchedPtr, Int32, cudaExtent, cudaStream_t)
Initializes or sets device memory to a value
Declaration
[IntrinsicFunction("cudaMemset3DAsync")]
public static cudaError_t Memset3DAsync(cudaPitchedPtr devPtr, int value, cudaExtent extent, cudaStream_t stream)
Parameters
Returns
MemsetAsync(IntPtr, Int32, size_t, cudaStream_t)
Initializes or sets device memory to a value
Declaration
[IntrinsicFunction("cudaMemsetAsync")]
public static cudaError_t MemsetAsync(IntPtr devPtr, int value, size_t count, cudaStream_t stream)
Parameters
Type |
Name |
Description |
System.IntPtr |
devPtr |
|
System.Int32 |
value |
|
size_t |
count |
|
cudaStream_t |
stream |
|
Returns
MemsetAsync(Void*, Int32, size_t, cudaStream_t)
Declaration
public static cudaError_t MemsetAsync(void *devPtr, int value, size_t count, cudaStream_t stream)
Parameters
Type |
Name |
Description |
System.Void* |
devPtr |
|
System.Int32 |
value |
|
size_t |
count |
|
cudaStream_t |
stream |
|
Returns
SetDevice(Int32)
Set device to be used for GPU executions.
Declaration
public static cudaError_t SetDevice(int dev)
Parameters
Type |
Name |
Description |
System.Int32 |
dev |
|
Returns
SetDeviceFlags(deviceFlags)
Sets flags to be used for device executions.
Declaration
public static cudaError_t SetDeviceFlags(deviceFlags flags)
Parameters
Returns
SetDoubleForDevice(ref Double)
Converts a double argument after execution on a device.
Declaration
[Obsolete]
public static cudaError_t SetDoubleForDevice(ref double d)
Parameters
Type |
Name |
Description |
System.Double |
d |
|
Returns
SetDoubleForHost(ref Double)
Configure a device launch.
Declaration
[Obsolete]
public static cudaError_t SetDoubleForHost(ref double d)
Parameters
Type |
Name |
Description |
System.Double |
d |
|
Returns
SetupArgument(IntPtr, size_t, size_t)
Configure a device launch.
Declaration
[Obsolete("Deprecated method", false)]
public static cudaError_t SetupArgument(IntPtr arg, size_t size, size_t offset)
Parameters
Type |
Name |
Description |
System.IntPtr |
arg |
|
size_t |
size |
|
size_t |
offset |
|
Returns
SetValidDevices(Int32[])
Set a list of devices that can be used for CUDA
Declaration
public static cudaError_t SetValidDevices(int[] devs)
Parameters
Type |
Name |
Description |
System.Int32[] |
devs |
|
Returns
StreamAttachMemAsync(cudaStream_t, IntPtr, size_t, UInt32)
Attach memory to a stream asynchronously
Declaration
public static cudaError_t StreamAttachMemAsync(cudaStream_t stream, IntPtr devPtr, size_t length, uint flags)
Parameters
Type |
Name |
Description |
cudaStream_t |
stream |
|
System.IntPtr |
devPtr |
|
size_t |
length |
|
System.UInt32 |
flags |
|
Returns
StreamCreate(out cudaStream_t)
Create an asynchronous stream
Declaration
public static cudaError_t StreamCreate(out cudaStream_t stream)
Parameters
Type |
Name |
Description |
cudaStream_t |
stream |
Pointer to new stream identifier
|
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidValue
|
StreamCreateWithFlags(out cudaStream_t, UInt32)
Create an asynchronous stream
Declaration
[IntrinsicFunction("cudaStreamCreateWithFlags")]
public static cudaError_t StreamCreateWithFlags(out cudaStream_t pStream, uint flags)
Parameters
Type |
Name |
Description |
cudaStream_t |
pStream |
|
System.UInt32 |
flags |
|
Returns
StreamCreateWithPriority(out cudaStream_t, UInt32, Int32)
Create an asynchronous stream with the specified priority
Declaration
public static cudaError_t StreamCreateWithPriority(out cudaStream_t pStream, uint flags, int priority)
Parameters
Type |
Name |
Description |
cudaStream_t |
pStream |
|
System.UInt32 |
flags |
|
System.Int32 |
priority |
|
Returns
StreamDestroy(cudaStream_t)
Declaration
[IntrinsicFunction("cudaStreamDestroy")]
public static cudaError_t StreamDestroy(cudaStream_t stream)
Parameters
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidResourceHandle
|
StreamGetFlags(cudaStream_t, out UInt32)
Query the flags of a stream
Declaration
public static cudaError_t StreamGetFlags(cudaStream_t hStream, out uint flags)
Parameters
Type |
Name |
Description |
cudaStream_t |
hStream |
|
System.UInt32 |
flags |
|
Returns
StreamGetPriority(cudaStream_t, out Int32)
Query the priority of a stream
Declaration
public static cudaError_t StreamGetPriority(cudaStream_t hStream, out int priority)
Parameters
Type |
Name |
Description |
cudaStream_t |
hStream |
|
System.Int32 |
priority |
|
Returns
StreamQuery(cudaStream_t)
Queries an asynchronous stream for completion status
Declaration
public static cudaError_t StreamQuery(cudaStream_t stream)
Parameters
Returns
StreamSynchronize(cudaStream_t)
Declaration
public static cudaError_t StreamSynchronize(cudaStream_t stream)
Parameters
Returns
Type |
Description |
cudaError_t |
cudaSuccess, cudaErrorInvalidResourceHandle
|
StreamWaitEvent(cudaStream_t, cudaEvent_t, UInt32)
Make a compute stream wait on an event
Declaration
[IntrinsicFunction("cudaStreamWaitEvent")]
public static cudaError_t StreamWaitEvent(cudaStream_t stream, cudaEvent_t evt, uint flags)
Parameters
Returns
ThreadExit()
Exit and clean up from CUDA launches
Declaration
[Obsolete]
public static cudaError_t ThreadExit()
Returns
ThreadGetLimit(out size_t, cudaLimit)
Declaration
[Obsolete]
public static cudaError_t ThreadGetLimit(out size_t value, cudaLimit limit)
Parameters
Returns
ThreadSetLimit(cudaLimit, size_t)
Declaration
[Obsolete]
public static cudaError_t ThreadSetLimit(cudaLimit limit, size_t value)
Parameters
Returns
ThreadSynchronize()
Wait for compute device to finish
Declaration
[Obsolete]
public static cudaError_t ThreadSynchronize()
Returns