Runtime API#
This page shows how the SCALE runtime library corresponds to each version of the CUDA Runtime API.
85% (264 of 311 declarations available)
4.1. Device Management#
cudaError_t cudaChooseDevice(int* device, const cudaDeviceProp* prop);
cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
__device__ cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
cudaError_t cudaDeviceGetByPCIBusId(int* device, const char* pciBusId);
cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache ** pCacheConfig);
__device__ cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache ** pCacheConfig);
cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
__device__ cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
cudaError_t cudaDeviceGetP2PAttribute(int* value, cudaDeviceP2PAttr attr, int srcDevice, int dstDevice);
cudaError_t cudaDeviceGetPCIBusId(char* pciBusId, int len, int device);
cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
__device__ cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
cudaError_t cudaDeviceGetStreamPriorityRange(int* leastPriority, int* greatestPriority);
cudaError_t cudaDeviceReset(void);
cudaError_t cudaDeviceSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaDeviceSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaDeviceSetSharedMemConfig(cudaSharedMemConfig config);
cudaError_t cudaDeviceSynchronize(void);
-__device__ cudaError_t cudaDeviceSynchronize(void);
cudaError_t cudaGetDevice(int* device);
__device__ cudaError_t cudaGetDevice(int* device);
cudaError_t cudaGetDeviceCount(int* count);
__device__ cudaError_t cudaGetDeviceCount(int* count);
cudaError_t cudaGetDeviceFlags(unsigned int* flags);
cudaError_t cudaGetDeviceProperties(cudaDeviceProp* prop, int device);
cudaError_t cudaIpcCloseMemHandle(void* devPtr);
cudaError_t cudaIpcGetEventHandle(cudaIpcEventHandle_t* handle, cudaEvent_t event);
cudaError_t cudaIpcGetMemHandle(cudaIpcMemHandle_t* handle, void* devPtr);
cudaError_t cudaIpcOpenEventHandle(cudaEvent_t* event, cudaIpcEventHandle_t handle);
cudaError_t cudaIpcOpenMemHandle(void** devPtr, cudaIpcMemHandle_t handle, unsigned int flags);
cudaError_t cudaSetDevice(int device);
cudaError_t cudaSetDeviceFlags(unsigned int flags);
cudaError_t cudaSetValidDevices(int* device_arr, int len);
4.2. Thread Management [DEPRECATED]#
cudaError_t cudaThreadExit(void);
cudaError_t cudaThreadGetCacheConfig(cudaFuncCache ** pCacheConfig);
cudaError_t cudaThreadGetLimit(size_t* pValue, cudaLimit limit);
cudaError_t cudaThreadSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaThreadSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaThreadSynchronize(void);
4.3. Error Handling#
const char* cudaGetErrorName(cudaError_t error);
__device__ const char* cudaGetErrorName(cudaError_t error);
const char* cudaGetErrorString(cudaError_t error);
__device__ const char* cudaGetErrorString(cudaError_t error);
cudaError_t cudaGetLastError(void);
-__device__ cudaError_t cudaGetLastError(void);
cudaError_t cudaPeekAtLastError(void);
-__device__ cudaError_t cudaPeekAtLastError(void);
4.4. Stream Management#
typedef void(* cudaStreamCallback_t)(cudaStream_t stream, cudaError_t status, void* userData);
cudaError_t cudaStreamAddCallback(cudaStream_t stream, cudaStreamCallback_t callback, void* userData, unsigned int flags);
cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, void* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
cudaError_t cudaStreamCreate(cudaStream_t* pStream);
cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
-__device__ cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
cudaError_t cudaStreamCreateWithPriority(cudaStream_t* pStream, unsigned int flags, int priority);
cudaError_t cudaStreamDestroy(cudaStream_t stream);
-__device__ cudaError_t cudaStreamDestroy(cudaStream_t stream);
cudaError_t cudaStreamGetFlags(cudaStream_t hStream, unsigned int* flags);
cudaError_t cudaStreamGetPriority(cudaStream_t hStream, int* priority);
cudaError_t cudaStreamQuery(cudaStream_t stream);
cudaError_t cudaStreamSynchronize(cudaStream_t stream);
- cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags);
-__device__ cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags);
4.5. Event Management#
cudaError_t cudaEventCreate(cudaEvent_t* event);
cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
-__device__ cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
cudaError_t cudaEventDestroy(cudaEvent_t event);
-__device__ cudaError_t cudaEventDestroy(cudaEvent_t event);
cudaError_t cudaEventElapsedTime(float* ms, cudaEvent_t start, cudaEvent_t end);
cudaError_t cudaEventQuery(cudaEvent_t event);
cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
-__device__ cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
cudaError_t cudaEventSynchronize(cudaEvent_t event);
4.6. Execution Control#
cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
-__device__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
cudaError_t cudaFuncSetCacheConfig(const void* func, cudaFuncCache cacheConfig);
cudaError_t cudaFuncSetSharedMemConfig(const void* func, cudaSharedMemConfig config);
__device__ void* cudaGetParameterBuffer(size_t alignment, size_t size);
-__device__ void* cudaGetParameterBufferV2(void* func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize);
cudaError_t cudaLaunchKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
cudaError_t cudaSetDoubleForDevice(double* d);
cudaError_t cudaSetDoubleForHost(double* d);
4.7. Occupancy#
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
-__device__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
4.8. Execution Control [DEPRECATED]#
cudaError_t cudaConfigureCall(dim3 gridDim, dim3 blockDim, size_t sharedMem = 0, cudaStream_t stream = 0);
cudaError_t cudaLaunch(const void* func);
cudaError_t cudaSetupArgument(const void* arg, size_t size, size_t offset);
4.9. Memory Management#
cudaError_t cudaArrayGetInfo(cudaChannelFormatDesc* desc, cudaExtent* extent, unsigned int* flags, cudaArray_t array);
cudaError_t cudaFree(void* devPtr);
__device__ cudaError_t cudaFree(void* devPtr);
cudaError_t cudaFreeArray(cudaArray_t array);
cudaError_t cudaFreeHost(void* ptr);
cudaError_t cudaFreeMipmappedArray(cudaMipmappedArray_t mipmappedArray);
-cudaError_t cudaGetMipmappedArrayLevel(cudaArray_t* levelArray, cudaMipmappedArray_const_t mipmappedArray, unsigned int level);
cudaError_t cudaGetSymbolAddress(void** devPtr, const void* symbol);
cudaError_t cudaGetSymbolSize(size_t* size, const void* symbol);
cudaError_t cudaHostAlloc(void** pHost, size_t size, unsigned int flags);
cudaError_t cudaHostGetDevicePointer(void** pDevice, void* pHost, unsigned int flags);
cudaError_t cudaHostGetFlags(unsigned int* pFlags, void* pHost);
cudaError_t cudaHostRegister(void* ptr, size_t size, unsigned int flags);
cudaError_t cudaHostUnregister(void* ptr);
cudaError_t cudaMalloc(void** devPtr, size_t size);
__device__ cudaError_t cudaMalloc(void** devPtr, size_t size);
cudaError_t cudaMalloc3D(cudaPitchedPtr* pitchedDevPtr, cudaExtent extent);
cudaError_t cudaMalloc3DArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int flags = 0);
cudaError_t cudaMallocArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, size_t width, size_t height = 0, unsigned int flags = 0);
cudaError_t cudaMallocHost(void** ptr, size_t size);
cudaError_t cudaMallocManaged(void** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
cudaError_t cudaMallocMipmappedArray(cudaMipmappedArray_t* mipmappedArray, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int numLevels, unsigned int flags = 0);
cudaError_t cudaMallocPitch(void** devPtr, size_t* pitch, size_t width, size_t height);
cudaError_t cudaMemAdvise(const void* devPtr, size_t count, cudaMemoryAdvise advice, int device);
cudaError_t cudaMemGetInfo(size_t* free, size_t* total);
cudaError_t cudaMemPrefetchAsync(const void* devPtr, size_t count, int dstDevice, cudaStream_t stream = 0);
cudaError_t cudaMemRangeGetAttribute(void* data, size_t dataSize, cudaMemRangeAttribute attribute, const void* devPtr, size_t count);
-cudaError_t cudaMemRangeGetAttributes(void** data, size_t* dataSizes, cudaMemRangeAttribute ** attributes, size_t numAttributes, const void* devPtr, size_t count);
cudaError_t cudaMemcpy(void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2D(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
-cudaError_t cudaMemcpy2DArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t width, size_t height, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DFromArray(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DFromArrayAsync(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy3D(const cudaMemcpy3DParms* p);
cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
cudaError_t cudaMemcpy3DPeer(const cudaMemcpy3DPeerParms* p);
cudaError_t cudaMemcpy3DPeerAsync(const cudaMemcpy3DPeerParms* p, cudaStream_t stream = 0);
-cudaError_t cudaMemcpyArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t count, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
-cudaError_t cudaMemcpyFromArray(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind);
-cudaError_t cudaMemcpyFromArrayAsync(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyFromSymbol(void* dst, const void* symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyPeer(void* dst, int dstDevice, const void* src, int srcDevice, size_t count);
cudaError_t cudaMemcpyPeerAsync(void* dst, int dstDevice, const void* src, int srcDevice, size_t count, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpyToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToSymbol(const void* symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
cudaError_t cudaMemcpyToSymbolAsync(const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemset(void* devPtr, int value, size_t count);
cudaError_t cudaMemset2D(void* devPtr, size_t pitch, int value, size_t width, size_t height);
cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
cudaError_t cudaMemset3D(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent);
cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
cudaExtent make_cudaExtent(size_t w, size_t h, size_t d);
cudaPitchedPtr make_cudaPitchedPtr(void* d, size_t p, size_t xsz, size_t ysz);
cudaPos make_cudaPos(size_t x, size_t y, size_t z);
4.10. Unified Addressing#
cudaError_t cudaPointerGetAttributes(cudaPointerAttributes* attributes, const void* ptr);
4.11. Peer Device Memory Access#
cudaError_t cudaDeviceCanAccessPeer(int* canAccessPeer, int device, int peerDevice);
cudaError_t cudaDeviceDisablePeerAccess(int peerDevice);
cudaError_t cudaDeviceEnablePeerAccess(int peerDevice, unsigned int flags);
4.12. OpenGL Interoperability#
enum cudaGLDeviceList
cudaGLDeviceListAll = 1
cudaGLDeviceListCurrentFrame = 2
cudaGLDeviceListNextFrame = 3
cudaError_t cudaGLGetDevices(unsigned int* pCudaDeviceCount, int* pCudaDevices, unsigned int cudaDeviceCount, cudaGLDeviceList deviceList);
cudaError_t cudaGraphicsGLRegisterBuffer(cudaGraphicsResource** resource, GLuint buffer, unsigned int flags);
cudaError_t cudaGraphicsGLRegisterImage(cudaGraphicsResource** resource, GLuint image, GLenum target, unsigned int flags);
-cudaError_t cudaWGLGetDevice(int* device, HGPUNV hGpu);
4.13. OpenGL Interoperability [DEPRECATED]#
enum cudaGLMapFlags
cudaGLMapFlagsNone = 0
cudaGLMapFlagsReadOnly = 1
cudaGLMapFlagsWriteDiscard = 2
cudaError_t cudaGLMapBufferObject(void** devPtr, GLuint bufObj);
cudaError_t cudaGLMapBufferObjectAsync(void** devPtr, GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLRegisterBufferObject(GLuint bufObj);
cudaError_t cudaGLSetBufferObjectMapFlags(GLuint bufObj, unsigned int flags);
-cudaError_t cudaGLSetGLDevice(int device);
cudaError_t cudaGLUnmapBufferObject(GLuint bufObj);
cudaError_t cudaGLUnmapBufferObjectAsync(GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLUnregisterBufferObject(GLuint bufObj);
4.14. Direct3D 9 Interoperability#
-Windows APIs are currently unsupported
4.15. Direct3D 9 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
4.16. Direct3D 10 Interoperability#
-Windows APIs are currently unsupported
4.17. Direct3D 10 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
4.18. Direct3D 11 Interoperability#
-Windows APIs are currently unsupported
4.19. Direct3D 11 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
4.20. VDPAU Interoperability#
-VDPAU is currently unsupported
4.21. EGL Interoperability#
-EGL is currently unsupported
4.22. Graphics Interoperability#
cudaError_t cudaGraphicsMapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
-cudaError_t cudaGraphicsResourceGetMappedMipmappedArray(cudaMipmappedArray_t* mipmappedArray, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceGetMappedPointer(void** devPtr, size_t* size, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceSetMapFlags(cudaGraphicsResource_t resource, unsigned int flags);
cudaError_t cudaGraphicsSubResourceGetMappedArray(cudaArray_t* array, cudaGraphicsResource_t resource, unsigned int arrayIndex, unsigned int mipLevel);
cudaError_t cudaGraphicsUnmapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
cudaError_t cudaGraphicsUnregisterResource(cudaGraphicsResource_t resource);
4.23. Texture Reference Management#
-cudaError_t cudaBindTexture(size_t* offset, const textureReference* texref, const void* devPtr, const cudaChannelFormatDesc* desc, size_t size = UINT_MAX);
cudaError_t cudaBindTexture2D(size_t* offset, const textureReference* texref, const void* devPtr, const cudaChannelFormatDesc* desc, size_t width, size_t height, size_t pitch);
cudaError_t cudaBindTextureToArray(const textureReference* texref, cudaArray_const_t array, const cudaChannelFormatDesc* desc);
cudaError_t cudaBindTextureToMipmappedArray(const textureReference* texref, cudaMipmappedArray_const_t mipmappedArray, const cudaChannelFormatDesc* desc);
cudaChannelFormatDesc cudaCreateChannelDesc(int x, int y, int z, int w, cudaChannelFormatKind f);
cudaError_t cudaGetChannelDesc(cudaChannelFormatDesc* desc, cudaArray_const_t array);
cudaError_t cudaGetTextureAlignmentOffset(size_t* offset, const textureReference* texref);
cudaError_t cudaGetTextureReference(const textureReference** texref, const void* symbol);
cudaError_t cudaUnbindTexture(const textureReference* texref);
4.24. Surface Reference Management#
-cudaError_t cudaBindSurfaceToArray(const surfaceReference* surfref, cudaArray_const_t array, const cudaChannelFormatDesc* desc);
-cudaError_t cudaGetSurfaceReference(const surfaceReference** surfref, const void* symbol);
4.25. Texture Object Management#
cudaError_t cudaCreateTextureObject(cudaTextureObject_t* pTexObject, const cudaResourceDesc* pResDesc, const cudaTextureDesc* pTexDesc, const cudaResourceViewDesc* pResViewDesc);
cudaError_t cudaDestroyTextureObject(cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectResourceDesc(cudaResourceDesc* pResDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectResourceViewDesc(cudaResourceViewDesc* pResViewDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectTextureDesc(cudaTextureDesc* pTexDesc, cudaTextureObject_t texObject);
4.26. Surface Object Management#
cudaError_t cudaCreateSurfaceObject(cudaSurfaceObject_t* pSurfObject, const cudaResourceDesc* pResDesc);
cudaError_t cudaDestroySurfaceObject(cudaSurfaceObject_t surfObject);
cudaError_t cudaGetSurfaceObjectResourceDesc(cudaResourceDesc* pResDesc, cudaSurfaceObject_t surfObject);
4.27. Version Management#
cudaError_t cudaDriverGetVersion(int* driverVersion);
cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
__device__ cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
4.29. Interactions with the CUDA Driver API#
4.30. Profiler Control#
cudaError_t cudaProfilerInitialize(const char* configFile, const char* outputFile, cudaOutputMode_t outputMode);
cudaError_t cudaProfilerStart(void);
cudaError_t cudaProfilerStop(void);
4.31. Data types used by CUDA Runtime#
-#define CUDA_EGL_MAX_PLANES
#define CUDA_IPC_HANDLE_SIZE
#define cudaArrayCubemap
#define cudaArrayDefault
#define cudaArrayLayered
#define cudaArraySurfaceLoadStore
#define cudaArrayTextureGather
#define cudaCpuDeviceId
#define cudaDeviceBlockingSync
#define cudaDeviceLmemResizeToMax
#define cudaDeviceMapHost
#define cudaDeviceMask
#define cudaDevicePropDontCare
#define cudaDeviceScheduleAuto
#define cudaDeviceScheduleBlockingSync
#define cudaDeviceScheduleMask
#define cudaDeviceScheduleSpin
#define cudaDeviceScheduleYield
#define cudaEventBlockingSync
#define cudaEventDefault
#define cudaEventDisableTiming
#define cudaEventInterprocess
#define cudaHostAllocDefault
#define cudaHostAllocMapped
#define cudaHostAllocPortable
#define cudaHostAllocWriteCombined
#define cudaHostRegisterDefault
#define cudaHostRegisterIoMemory
#define cudaHostRegisterMapped
#define cudaHostRegisterPortable
#define cudaInvalidDeviceId
#define cudaIpcMemLazyEnablePeerAccess
#define cudaMemAttachGlobal
#define cudaMemAttachHost
#define cudaMemAttachSingle
#define cudaOccupancyDefault
#define cudaOccupancyDisableCachingOverride
#define cudaPeerAccessDefault
#define cudaStreamDefault
#define cudaStreamLegacy
#define cudaStreamNonBlocking
#define cudaStreamPerThread
enum cudaChannelFormatKind
cudaChannelFormatKindSigned = 0
cudaChannelFormatKindUnsigned = 1
cudaChannelFormatKindFloat = 2
cudaChannelFormatKindNone = 3
enum cudaComputeMode
cudaComputeModeDefault = 0
cudaComputeModeExclusive = 1
cudaComputeModeProhibited = 2
cudaComputeModeExclusiveProcess = 3
enum cudaDeviceAttr
cudaDevAttrMaxThreadsPerBlock = 1
cudaDevAttrMaxBlockDimX = 2
cudaDevAttrMaxBlockDimY = 3
cudaDevAttrMaxBlockDimZ = 4
cudaDevAttrMaxGridDimX = 5
cudaDevAttrMaxGridDimY = 6
cudaDevAttrMaxGridDimZ = 7
cudaDevAttrMaxSharedMemoryPerBlock = 8
cudaDevAttrTotalConstantMemory = 9
cudaDevAttrWarpSize = 10
cudaDevAttrMaxPitch = 11
cudaDevAttrMaxRegistersPerBlock = 12
cudaDevAttrClockRate = 13
cudaDevAttrTextureAlignment = 14
cudaDevAttrGpuOverlap = 15
cudaDevAttrMultiProcessorCount = 16
cudaDevAttrKernelExecTimeout = 17
cudaDevAttrIntegrated = 18
cudaDevAttrCanMapHostMemory = 19
cudaDevAttrComputeMode = 20
cudaDevAttrMaxTexture1DWidth = 21
cudaDevAttrMaxTexture2DWidth = 22
cudaDevAttrMaxTexture2DHeight = 23
cudaDevAttrMaxTexture3DWidth = 24
cudaDevAttrMaxTexture3DHeight = 25
cudaDevAttrMaxTexture3DDepth = 26
cudaDevAttrMaxTexture2DLayeredWidth = 27
cudaDevAttrMaxTexture2DLayeredHeight = 28
cudaDevAttrMaxTexture2DLayeredLayers = 29
cudaDevAttrSurfaceAlignment = 30
cudaDevAttrConcurrentKernels = 31
cudaDevAttrEccEnabled = 32
cudaDevAttrPciBusId = 33
cudaDevAttrPciDeviceId = 34
cudaDevAttrTccDriver = 35
cudaDevAttrMemoryClockRate = 36
cudaDevAttrGlobalMemoryBusWidth = 37
cudaDevAttrL2CacheSize = 38
cudaDevAttrMaxThreadsPerMultiProcessor = 39
cudaDevAttrAsyncEngineCount = 40
cudaDevAttrUnifiedAddressing = 41
cudaDevAttrMaxTexture1DLayeredWidth = 42
cudaDevAttrMaxTexture1DLayeredLayers = 43
cudaDevAttrMaxTexture2DGatherWidth = 45
cudaDevAttrMaxTexture2DGatherHeight = 46
cudaDevAttrMaxTexture3DWidthAlt = 47
cudaDevAttrMaxTexture3DHeightAlt = 48
cudaDevAttrMaxTexture3DDepthAlt = 49
cudaDevAttrPciDomainId = 50
cudaDevAttrTexturePitchAlignment = 51
cudaDevAttrMaxTextureCubemapWidth = 52
cudaDevAttrMaxTextureCubemapLayeredWidth = 53
cudaDevAttrMaxTextureCubemapLayeredLayers = 54
cudaDevAttrMaxSurface1DWidth = 55
cudaDevAttrMaxSurface2DWidth = 56
cudaDevAttrMaxSurface2DHeight = 57
cudaDevAttrMaxSurface3DWidth = 58
cudaDevAttrMaxSurface3DHeight = 59
cudaDevAttrMaxSurface3DDepth = 60
cudaDevAttrMaxSurface1DLayeredWidth = 61
cudaDevAttrMaxSurface1DLayeredLayers = 62
cudaDevAttrMaxSurface2DLayeredWidth = 63
cudaDevAttrMaxSurface2DLayeredHeight = 64
cudaDevAttrMaxSurface2DLayeredLayers = 65
cudaDevAttrMaxSurfaceCubemapWidth = 66
cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67
cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68
cudaDevAttrMaxTexture1DLinearWidth = 69
cudaDevAttrMaxTexture2DLinearWidth = 70
cudaDevAttrMaxTexture2DLinearHeight = 71
cudaDevAttrMaxTexture2DLinearPitch = 72
cudaDevAttrMaxTexture2DMipmappedWidth = 73
cudaDevAttrMaxTexture2DMipmappedHeight = 74
cudaDevAttrComputeCapabilityMajor = 75
cudaDevAttrComputeCapabilityMinor = 76
cudaDevAttrMaxTexture1DMipmappedWidth = 77
cudaDevAttrStreamPrioritiesSupported = 78
cudaDevAttrGlobalL1CacheSupported = 79
cudaDevAttrLocalL1CacheSupported = 80
cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81
cudaDevAttrMaxRegistersPerMultiprocessor = 82
cudaDevAttrManagedMemory = 83
cudaDevAttrIsMultiGpuBoard = 84
cudaDevAttrMultiGpuBoardGroupID = 85
cudaDevAttrHostNativeAtomicSupported = 86
cudaDevAttrSingleToDoublePrecisionPerfRatio = 87
cudaDevAttrPageableMemoryAccess = 88
cudaDevAttrConcurrentManagedAccess = 89
cudaDevAttrComputePreemptionSupported = 90
cudaDevAttrCanUseHostPointerForRegisteredMem = 91
enum cudaDeviceP2PAttr
cudaDevP2PAttrPerformanceRank = 1
cudaDevP2PAttrAccessSupported = 2
cudaDevP2PAttrNativeAtomicSupported = 3
-enum cudaEglColorFormat
-enum cudaEglFrameType
-enum cudaEglResourceLocationFlags
enum cudaError
cudaSuccess = 0
- cudaErrorMissingConfiguration = 1
cudaErrorMemoryAllocation = 2
cudaErrorInitializationError = 3
- cudaErrorLaunchFailure = 4
- cudaErrorPriorLaunchFailure = 5
- cudaErrorLaunchTimeout = 6
- cudaErrorLaunchOutOfResources = 7
- cudaErrorInvalidDeviceFunction = 8
cudaErrorInvalidConfiguration = 9
- cudaErrorInvalidDevice = 10
- cudaErrorInvalidValue = 11
cudaErrorInvalidPitchValue = 12
cudaErrorInvalidSymbol = 13
- cudaErrorMapBufferObjectFailed = 14
- cudaErrorUnmapBufferObjectFailed = 15
cudaErrorInvalidHostPointer = 16
cudaErrorInvalidDevicePointer = 17
cudaErrorInvalidTexture = 18
cudaErrorInvalidTextureBinding = 19
cudaErrorInvalidChannelDescriptor = 20
cudaErrorInvalidMemcpyDirection = 21
cudaErrorAddressOfConstant = 22
cudaErrorTextureFetchFailed = 23
cudaErrorTextureNotBound = 24
cudaErrorSynchronizationError = 25
cudaErrorInvalidFilterSetting = 26
cudaErrorInvalidNormSetting = 27
cudaErrorMixedDeviceExecution = 28
- cudaErrorCudartUnloading = 29
- cudaErrorUnknown = 30
cudaErrorNotYetImplemented = 31
cudaErrorMemoryValueTooLarge = 32
- cudaErrorInvalidResourceHandle = 33
- cudaErrorNotReady = 34
cudaErrorInsufficientDriver = 35
- cudaErrorSetOnActiveProcess = 36
cudaErrorInvalidSurface = 37
- cudaErrorNoDevice = 38
- cudaErrorECCUncorrectable = 39
- cudaErrorSharedObjectSymbolNotFound = 40
- cudaErrorSharedObjectInitFailed = 41
- cudaErrorUnsupportedLimit = 42
cudaErrorDuplicateVariableName = 43
cudaErrorDuplicateTextureName = 44
cudaErrorDuplicateSurfaceName = 45
cudaErrorDevicesUnavailable = 46
- cudaErrorInvalidKernelImage = 47
- cudaErrorNoKernelImageForDevice = 48
cudaErrorIncompatibleDriverContext = 49
- cudaErrorPeerAccessAlreadyEnabled = 50
- cudaErrorPeerAccessNotEnabled = 51
- cudaErrorDeviceAlreadyInUse = 54
- cudaErrorProfilerDisabled = 55
- cudaErrorProfilerNotInitialized = 56
- cudaErrorProfilerAlreadyStarted = 57
- cudaErrorProfilerAlreadyStopped = 58
- cudaErrorAssert = 59
- cudaErrorTooManyPeers = 60
- cudaErrorHostMemoryAlreadyRegistered = 61
- cudaErrorHostMemoryNotRegistered = 62
- cudaErrorOperatingSystem = 63
- cudaErrorPeerAccessUnsupported = 64
cudaErrorLaunchMaxDepthExceeded = 65
cudaErrorLaunchFileScopedTex = 66
cudaErrorLaunchFileScopedSurf = 67
cudaErrorSyncDepthExceeded = 68
cudaErrorLaunchPendingCountExceeded = 69
- cudaErrorNotPermitted = 70
- cudaErrorNotSupported = 71
- cudaErrorHardwareStackError = 72
- cudaErrorIllegalInstruction = 73
- cudaErrorMisalignedAddress = 74
- cudaErrorInvalidAddressSpace = 75
- cudaErrorInvalidPc = 76
- cudaErrorIllegalAddress = 77
- cudaErrorInvalidPtx = 78
- cudaErrorInvalidGraphicsContext = 79
- cudaErrorNvlinkUncorrectable = 80
cudaErrorStartupFailure = 127
cudaErrorApiFailureBase = 10000
enum cudaFuncCache
cudaFuncCachePreferNone = 0
cudaFuncCachePreferShared = 1
cudaFuncCachePreferL1 = 2
cudaFuncCachePreferEqual = 3
enum cudaGraphicsCubeFace
cudaGraphicsCubeFacePositiveX = 0
cudaGraphicsCubeFaceNegativeX = 1
cudaGraphicsCubeFacePositiveY = 2
cudaGraphicsCubeFaceNegativeY = 3
cudaGraphicsCubeFacePositiveZ = 4
cudaGraphicsCubeFaceNegativeZ = 5
enum cudaGraphicsMapFlags
cudaGraphicsMapFlagsNone = 0
cudaGraphicsMapFlagsReadOnly = 1
cudaGraphicsMapFlagsWriteDiscard = 2
enum cudaGraphicsRegisterFlags
cudaGraphicsRegisterFlagsNone = 0
cudaGraphicsRegisterFlagsReadOnly = 1
cudaGraphicsRegisterFlagsWriteDiscard = 2
cudaGraphicsRegisterFlagsSurfaceLoadStore = 4
cudaGraphicsRegisterFlagsTextureGather = 8
enum cudaLimit
cudaLimitStackSize = 0
cudaLimitPrintfFifoSize = 1
cudaLimitMallocHeapSize = 2
cudaLimitDevRuntimeSyncDepth = 3
cudaLimitDevRuntimePendingLaunchCount = 4
enum cudaMemRangeAttribute
cudaMemRangeAttributeReadMostly = 1
cudaMemRangeAttributePreferredLocation = 2
cudaMemRangeAttributeAccessedBy = 3
cudaMemRangeAttributeLastPrefetchLocation = 4
enum cudaMemcpyKind
cudaMemcpyHostToHost = 0
cudaMemcpyHostToDevice = 1
cudaMemcpyDeviceToHost = 2
cudaMemcpyDeviceToDevice = 3
cudaMemcpyDefault = 4
enum cudaMemoryAdvise
cudaMemAdviseSetReadMostly = 1
cudaMemAdviseUnsetReadMostly = 2
cudaMemAdviseSetPreferredLocation = 3
cudaMemAdviseUnsetPreferredLocation = 4
cudaMemAdviseSetAccessedBy = 5
cudaMemAdviseUnsetAccessedBy = 6
enum cudaMemoryType
cudaMemoryTypeHost = 1
cudaMemoryTypeDevice = 2
enum cudaOutputMode
cudaKeyValuePair = 0
cudaCSV = 1
enum cudaResourceType
cudaResourceTypeArray = 0
cudaResourceTypeMipmappedArray = 1
cudaResourceTypeLinear = 2
cudaResourceTypePitch2D = 3
enum cudaResourceViewFormat
cudaResViewFormatNone = 0
cudaResViewFormatUnsignedChar1 = 1
cudaResViewFormatUnsignedChar2 = 2
cudaResViewFormatUnsignedChar4 = 3
cudaResViewFormatSignedChar1 = 4
cudaResViewFormatSignedChar2 = 5
cudaResViewFormatSignedChar4 = 6
cudaResViewFormatUnsignedShort1 = 7
cudaResViewFormatUnsignedShort2 = 8
cudaResViewFormatUnsignedShort4 = 9
cudaResViewFormatSignedShort1 = 10
cudaResViewFormatSignedShort2 = 11
cudaResViewFormatSignedShort4 = 12
cudaResViewFormatUnsignedInt1 = 13
cudaResViewFormatUnsignedInt2 = 14
cudaResViewFormatUnsignedInt4 = 15
cudaResViewFormatSignedInt1 = 16
cudaResViewFormatSignedInt2 = 17
cudaResViewFormatSignedInt4 = 18
cudaResViewFormatHalf1 = 19
cudaResViewFormatHalf2 = 20
cudaResViewFormatHalf4 = 21
cudaResViewFormatFloat1 = 22
cudaResViewFormatFloat2 = 23
cudaResViewFormatFloat4 = 24
cudaResViewFormatUnsignedBlockCompressed1 = 25
cudaResViewFormatUnsignedBlockCompressed2 = 26
cudaResViewFormatUnsignedBlockCompressed3 = 27
cudaResViewFormatUnsignedBlockCompressed4 = 28
cudaResViewFormatSignedBlockCompressed4 = 29
cudaResViewFormatUnsignedBlockCompressed5 = 30
cudaResViewFormatSignedBlockCompressed5 = 31
cudaResViewFormatUnsignedBlockCompressed6H = 32
cudaResViewFormatSignedBlockCompressed6H = 33
cudaResViewFormatUnsignedBlockCompressed7 = 34
enum cudaSharedMemConfig
cudaSharedMemBankSizeDefault = 0
cudaSharedMemBankSizeFourByte = 1
cudaSharedMemBankSizeEightByte = 2
enum cudaSurfaceBoundaryMode
cudaBoundaryModeZero = 0
cudaBoundaryModeClamp = 1
cudaBoundaryModeTrap = 2
enum cudaSurfaceFormatMode
cudaFormatModeForced = 0
cudaFormatModeAuto = 1
enum cudaTextureAddressMode
cudaAddressModeWrap = 0
cudaAddressModeClamp = 1
cudaAddressModeMirror = 2
cudaAddressModeBorder = 3
enum cudaTextureFilterMode
cudaFilterModePoint = 0
cudaFilterModeLinear = 1
enum cudaTextureReadMode
cudaReadModeElementType = 0
cudaReadModeNormalizedFloat = 1
struct cudaChannelFormatDesc
f
w
x
y
z
struct cudaDeviceProp
ECCEnabled
asyncEngineCount
canMapHostMemory
clockRate
computeMode
concurrentKernels
concurrentManagedAccess
deviceOverlap
globalL1CacheSupported
hostNativeAtomicSupported
integrated
isMultiGpuBoard
kernelExecTimeoutEnabled
l2CacheSize
localL1CacheSupported
major
managedMemory
maxGridSize
maxSurface1D
maxSurface1DLayered
maxSurface2D
maxSurface2DLayered
maxSurface3D
maxSurfaceCubemap
maxSurfaceCubemapLayered
maxTexture1D
maxTexture1DLayered
maxTexture1DLinear
maxTexture1DMipmap
maxTexture2D
maxTexture2DGather
maxTexture2DLayered
maxTexture2DLinear
maxTexture2DMipmap
maxTexture3D
maxTexture3DAlt
maxTextureCubemap
maxTextureCubemapLayered
maxThreadsDim
maxThreadsPerBlock
maxThreadsPerMultiProcessor
memPitch
memoryBusWidth
memoryClockRate
minor
multiGpuBoardGroupID
multiProcessorCount
name
pageableMemoryAccess
pciBusID
pciDeviceID
pciDomainID
regsPerBlock
regsPerMultiprocessor
sharedMemPerBlock
sharedMemPerMultiprocessor
singleToDoublePrecisionPerfRatio
streamPrioritiesSupported
surfaceAlignment
tccDriver
textureAlignment
texturePitchAlignment
totalConstMem
totalGlobalMem
unifiedAddressing
warpSize
-struct cudaEglFrame
-struct cudaEglPlaneDesc
struct cudaExtent
depth
height
width
struct cudaFuncAttributes
binaryVersion
cacheModeCA
constSizeBytes
localSizeBytes
maxThreadsPerBlock
numRegs
ptxVersion
sharedSizeBytes
struct cudaIpcEventHandle_t
struct cudaIpcMemHandle_t
struct cudaMemcpy3DParms
dstArray
dstPos
dstPtr
extent
kind
srcArray
srcPos
srcPtr
struct cudaMemcpy3DPeerParms
dstArray
dstDevice
dstPos
dstPtr
extent
srcArray
srcDevice
srcPos
srcPtr
struct cudaPitchedPtr
pitch
ptr
xsize
ysize
struct cudaPointerAttributes
device
devicePointer
hostPointer
- isManaged
memoryType
struct cudaPos
x
y
z
struct cudaResourceDesc
array
desc
devPtr
height
mipmap
pitchInBytes
resType
sizeInBytes
width
struct cudaResourceViewDesc
depth
firstLayer
firstMipmapLevel
format
height
lastLayer
lastMipmapLevel
width
struct cudaTextureDesc
addressMode
borderColor
filterMode
maxAnisotropy
maxMipmapLevelClamp
minMipmapLevelClamp
mipmapFilterMode
mipmapLevelBias
normalizedCoords
readMode
sRGB
-struct surfaceReference
struct textureReference
addressMode
channelDesc
filterMode
maxAnisotropy
maxMipmapLevelClamp
minMipmapLevelClamp
mipmapFilterMode
mipmapLevelBias
normalized
sRGB
typedef const cudaArray * cudaArray_const_t;
typedef cudaArray * cudaArray_t;
-typedef CUeglStreamConnection_st * cudaEglStreamConnection;
typedef enum cudaError cudaError_t;
typedef CUevent_st * cudaEvent_t;
typedef cudaGraphicsResource * cudaGraphicsResource_t;
typedef const cudaMipmappedArray * cudaMipmappedArray_const_t;
typedef cudaMipmappedArray * cudaMipmappedArray_t;
typedef enum cudaOutputMode cudaOutputMode_t;
typedef CUstream_st * cudaStream_t;
typedef unsigned long long cudaSurfaceObject_t;
typedef unsigned long long cudaTextureObject_t;
typedef CUuuid_st cudaUUID_t;
85% (305 of 357 declarations available)
4.1. Device Management#
cudaError_t cudaChooseDevice(int* device, const cudaDeviceProp* prop);
cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
__device__ cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
cudaError_t cudaDeviceGetByPCIBusId(int* device, const char* pciBusId);
cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache ** pCacheConfig);
__device__ cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache ** pCacheConfig);
cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
__device__ cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
cudaError_t cudaDeviceGetP2PAttribute(int* value, cudaDeviceP2PAttr attr, int srcDevice, int dstDevice);
cudaError_t cudaDeviceGetPCIBusId(char* pciBusId, int len, int device);
cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
__device__ cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
cudaError_t cudaDeviceGetStreamPriorityRange(int* leastPriority, int* greatestPriority);
cudaError_t cudaDeviceReset(void);
cudaError_t cudaDeviceSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaDeviceSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaDeviceSetSharedMemConfig(cudaSharedMemConfig config);
cudaError_t cudaDeviceSynchronize(void);
-__device__ cudaError_t cudaDeviceSynchronize(void);
cudaError_t cudaGetDevice(int* device);
__device__ cudaError_t cudaGetDevice(int* device);
cudaError_t cudaGetDeviceCount(int* count);
__device__ cudaError_t cudaGetDeviceCount(int* count);
cudaError_t cudaGetDeviceFlags(unsigned int* flags);
cudaError_t cudaGetDeviceProperties(cudaDeviceProp* prop, int device);
cudaError_t cudaIpcCloseMemHandle(void* devPtr);
cudaError_t cudaIpcGetEventHandle(cudaIpcEventHandle_t* handle, cudaEvent_t event);
cudaError_t cudaIpcGetMemHandle(cudaIpcMemHandle_t* handle, void* devPtr);
cudaError_t cudaIpcOpenEventHandle(cudaEvent_t* event, cudaIpcEventHandle_t handle);
cudaError_t cudaIpcOpenMemHandle(void** devPtr, cudaIpcMemHandle_t handle, unsigned int flags);
cudaError_t cudaSetDevice(int device);
cudaError_t cudaSetDeviceFlags(unsigned int flags);
cudaError_t cudaSetValidDevices(int* device_arr, int len);
4.2. Thread Management [DEPRECATED]#
cudaError_t cudaThreadExit(void);
cudaError_t cudaThreadGetCacheConfig(cudaFuncCache ** pCacheConfig);
cudaError_t cudaThreadGetLimit(size_t* pValue, cudaLimit limit);
cudaError_t cudaThreadSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaThreadSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaThreadSynchronize(void);
4.3. Error Handling#
const char* cudaGetErrorName(cudaError_t error);
__device__ const char* cudaGetErrorName(cudaError_t error);
const char* cudaGetErrorString(cudaError_t error);
__device__ const char* cudaGetErrorString(cudaError_t error);
cudaError_t cudaGetLastError(void);
-__device__ cudaError_t cudaGetLastError(void);
cudaError_t cudaPeekAtLastError(void);
-__device__ cudaError_t cudaPeekAtLastError(void);
4.4. Stream Management#
typedef void(* cudaStreamCallback_t)(cudaStream_t stream, cudaError_t status, void* userData);
cudaError_t cudaStreamAddCallback(cudaStream_t stream, cudaStreamCallback_t callback, void* userData, unsigned int flags);
cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, void* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
cudaError_t cudaStreamCreate(cudaStream_t* pStream);
cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
-__device__ cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
cudaError_t cudaStreamCreateWithPriority(cudaStream_t* pStream, unsigned int flags, int priority);
cudaError_t cudaStreamDestroy(cudaStream_t stream);
-__device__ cudaError_t cudaStreamDestroy(cudaStream_t stream);
cudaError_t cudaStreamGetFlags(cudaStream_t hStream, unsigned int* flags);
cudaError_t cudaStreamGetPriority(cudaStream_t hStream, int* priority);
cudaError_t cudaStreamQuery(cudaStream_t stream);
cudaError_t cudaStreamSynchronize(cudaStream_t stream);
- cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags);
-__device__ cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags);
4.5. Event Management#
cudaError_t cudaEventCreate(cudaEvent_t* event);
cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
-__device__ cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
cudaError_t cudaEventDestroy(cudaEvent_t event);
-__device__ cudaError_t cudaEventDestroy(cudaEvent_t event);
cudaError_t cudaEventElapsedTime(float* ms, cudaEvent_t start, cudaEvent_t end);
cudaError_t cudaEventQuery(cudaEvent_t event);
cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
-__device__ cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
cudaError_t cudaEventSynchronize(cudaEvent_t event);
4.6. Execution Control#
cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
-__device__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
cudaError_t cudaFuncSetAttribute(const void* func, cudaFuncAttribute attr, int value);
cudaError_t cudaFuncSetCacheConfig(const void* func, cudaFuncCache cacheConfig);
cudaError_t cudaFuncSetSharedMemConfig(const void* func, cudaSharedMemConfig config);
__device__ void* cudaGetParameterBuffer(size_t alignment, size_t size);
-__device__ void* cudaGetParameterBufferV2(void* func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize);
cudaError_t cudaLaunchCooperativeKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
-cudaError_t cudaLaunchCooperativeKernelMultiDevice(cudaLaunchParams* launchParamsList, unsigned int numDevices, unsigned int flags = 0);
cudaError_t cudaLaunchKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
cudaError_t cudaSetDoubleForDevice(double* d);
cudaError_t cudaSetDoubleForHost(double* d);
4.7. Occupancy#
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
-__device__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
4.8. Execution Control [DEPRECATED]#
cudaError_t cudaConfigureCall(dim3 gridDim, dim3 blockDim, size_t sharedMem = 0, cudaStream_t stream = 0);
cudaError_t cudaLaunch(const void* func);
cudaError_t cudaSetupArgument(const void* arg, size_t size, size_t offset);
4.9. Memory Management#
cudaError_t cudaArrayGetInfo(cudaChannelFormatDesc* desc, cudaExtent* extent, unsigned int* flags, cudaArray_t array);
cudaError_t cudaFree(void* devPtr);
__device__ cudaError_t cudaFree(void* devPtr);
cudaError_t cudaFreeArray(cudaArray_t array);
cudaError_t cudaFreeHost(void* ptr);
cudaError_t cudaFreeMipmappedArray(cudaMipmappedArray_t mipmappedArray);
-cudaError_t cudaGetMipmappedArrayLevel(cudaArray_t* levelArray, cudaMipmappedArray_const_t mipmappedArray, unsigned int level);
cudaError_t cudaGetSymbolAddress(void** devPtr, const void* symbol);
cudaError_t cudaGetSymbolSize(size_t* size, const void* symbol);
cudaError_t cudaHostAlloc(void** pHost, size_t size, unsigned int flags);
cudaError_t cudaHostGetDevicePointer(void** pDevice, void* pHost, unsigned int flags);
cudaError_t cudaHostGetFlags(unsigned int* pFlags, void* pHost);
cudaError_t cudaHostRegister(void* ptr, size_t size, unsigned int flags);
cudaError_t cudaHostUnregister(void* ptr);
cudaError_t cudaMalloc(void** devPtr, size_t size);
__device__ cudaError_t cudaMalloc(void** devPtr, size_t size);
cudaError_t cudaMalloc3D(cudaPitchedPtr* pitchedDevPtr, cudaExtent extent);
cudaError_t cudaMalloc3DArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int flags = 0);
cudaError_t cudaMallocArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, size_t width, size_t height = 0, unsigned int flags = 0);
cudaError_t cudaMallocHost(void** ptr, size_t size);
cudaError_t cudaMallocManaged(void** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
cudaError_t cudaMallocMipmappedArray(cudaMipmappedArray_t* mipmappedArray, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int numLevels, unsigned int flags = 0);
cudaError_t cudaMallocPitch(void** devPtr, size_t* pitch, size_t width, size_t height);
cudaError_t cudaMemAdvise(const void* devPtr, size_t count, cudaMemoryAdvise advice, int device);
cudaError_t cudaMemGetInfo(size_t* free, size_t* total);
cudaError_t cudaMemPrefetchAsync(const void* devPtr, size_t count, int dstDevice, cudaStream_t stream = 0);
cudaError_t cudaMemRangeGetAttribute(void* data, size_t dataSize, cudaMemRangeAttribute attribute, const void* devPtr, size_t count);
-cudaError_t cudaMemRangeGetAttributes(void** data, size_t* dataSizes, cudaMemRangeAttribute ** attributes, size_t numAttributes, const void* devPtr, size_t count);
cudaError_t cudaMemcpy(void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2D(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
-cudaError_t cudaMemcpy2DArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t width, size_t height, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DFromArray(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DFromArrayAsync(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy3D(const cudaMemcpy3DParms* p);
cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
cudaError_t cudaMemcpy3DPeer(const cudaMemcpy3DPeerParms* p);
cudaError_t cudaMemcpy3DPeerAsync(const cudaMemcpy3DPeerParms* p, cudaStream_t stream = 0);
-cudaError_t cudaMemcpyArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t count, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
-cudaError_t cudaMemcpyFromArray(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind);
-cudaError_t cudaMemcpyFromArrayAsync(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyFromSymbol(void* dst, const void* symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyPeer(void* dst, int dstDevice, const void* src, int srcDevice, size_t count);
cudaError_t cudaMemcpyPeerAsync(void* dst, int dstDevice, const void* src, int srcDevice, size_t count, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpyToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToSymbol(const void* symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
cudaError_t cudaMemcpyToSymbolAsync(const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemset(void* devPtr, int value, size_t count);
cudaError_t cudaMemset2D(void* devPtr, size_t pitch, int value, size_t width, size_t height);
cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
cudaError_t cudaMemset3D(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent);
cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
cudaExtent make_cudaExtent(size_t w, size_t h, size_t d);
cudaPitchedPtr make_cudaPitchedPtr(void* d, size_t p, size_t xsz, size_t ysz);
cudaPos make_cudaPos(size_t x, size_t y, size_t z);
4.10. Unified Addressing#
cudaError_t cudaPointerGetAttributes(cudaPointerAttributes* attributes, const void* ptr);
4.11. Peer Device Memory Access#
cudaError_t cudaDeviceCanAccessPeer(int* canAccessPeer, int device, int peerDevice);
cudaError_t cudaDeviceDisablePeerAccess(int peerDevice);
cudaError_t cudaDeviceEnablePeerAccess(int peerDevice, unsigned int flags);
4.12. OpenGL Interoperability#
enum cudaGLDeviceList
cudaGLDeviceListAll = 1
cudaGLDeviceListCurrentFrame = 2
cudaGLDeviceListNextFrame = 3
cudaError_t cudaGLGetDevices(unsigned int* pCudaDeviceCount, int* pCudaDevices, unsigned int cudaDeviceCount, cudaGLDeviceList deviceList);
cudaError_t cudaGraphicsGLRegisterBuffer(cudaGraphicsResource** resource, GLuint buffer, unsigned int flags);
cudaError_t cudaGraphicsGLRegisterImage(cudaGraphicsResource** resource, GLuint image, GLenum target, unsigned int flags);
-cudaError_t cudaWGLGetDevice(int* device, HGPUNV hGpu);
4.13. OpenGL Interoperability [DEPRECATED]#
enum cudaGLMapFlags
cudaGLMapFlagsNone = 0
cudaGLMapFlagsReadOnly = 1
cudaGLMapFlagsWriteDiscard = 2
cudaError_t cudaGLMapBufferObject(void** devPtr, GLuint bufObj);
cudaError_t cudaGLMapBufferObjectAsync(void** devPtr, GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLRegisterBufferObject(GLuint bufObj);
cudaError_t cudaGLSetBufferObjectMapFlags(GLuint bufObj, unsigned int flags);
-cudaError_t cudaGLSetGLDevice(int device);
cudaError_t cudaGLUnmapBufferObject(GLuint bufObj);
cudaError_t cudaGLUnmapBufferObjectAsync(GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLUnregisterBufferObject(GLuint bufObj);
4.14. Direct3D 9 Interoperability#
-Windows APIs are currently unsupported
4.15. Direct3D 9 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
4.16. Direct3D 10 Interoperability#
-Windows APIs are currently unsupported
4.17. Direct3D 10 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
4.18. Direct3D 11 Interoperability#
-Windows APIs are currently unsupported
4.19. Direct3D 11 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
4.20. VDPAU Interoperability#
-VDPAU is currently unsupported
4.21. EGL Interoperability#
-EGL is currently unsupported
4.22. Graphics Interoperability#
cudaError_t cudaGraphicsMapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
-cudaError_t cudaGraphicsResourceGetMappedMipmappedArray(cudaMipmappedArray_t* mipmappedArray, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceGetMappedPointer(void** devPtr, size_t* size, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceSetMapFlags(cudaGraphicsResource_t resource, unsigned int flags);
cudaError_t cudaGraphicsSubResourceGetMappedArray(cudaArray_t* array, cudaGraphicsResource_t resource, unsigned int arrayIndex, unsigned int mipLevel);
cudaError_t cudaGraphicsUnmapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
cudaError_t cudaGraphicsUnregisterResource(cudaGraphicsResource_t resource);
4.23. Texture Reference Management#
-cudaError_t cudaBindTexture(size_t* offset, const textureReference* texref, const void* devPtr, const cudaChannelFormatDesc* desc, size_t size = UINT_MAX);
cudaError_t cudaBindTexture2D(size_t* offset, const textureReference* texref, const void* devPtr, const cudaChannelFormatDesc* desc, size_t width, size_t height, size_t pitch);
cudaError_t cudaBindTextureToArray(const textureReference* texref, cudaArray_const_t array, const cudaChannelFormatDesc* desc);
cudaError_t cudaBindTextureToMipmappedArray(const textureReference* texref, cudaMipmappedArray_const_t mipmappedArray, const cudaChannelFormatDesc* desc);
cudaChannelFormatDesc cudaCreateChannelDesc(int x, int y, int z, int w, cudaChannelFormatKind f);
cudaError_t cudaGetChannelDesc(cudaChannelFormatDesc* desc, cudaArray_const_t array);
cudaError_t cudaGetTextureAlignmentOffset(size_t* offset, const textureReference* texref);
cudaError_t cudaGetTextureReference(const textureReference** texref, const void* symbol);
cudaError_t cudaUnbindTexture(const textureReference* texref);
4.24. Surface Reference Management#
-cudaError_t cudaBindSurfaceToArray(const surfaceReference* surfref, cudaArray_const_t array, const cudaChannelFormatDesc* desc);
-cudaError_t cudaGetSurfaceReference(const surfaceReference** surfref, const void* symbol);
4.25. Texture Object Management#
cudaError_t cudaCreateTextureObject(cudaTextureObject_t* pTexObject, const cudaResourceDesc* pResDesc, const cudaTextureDesc* pTexDesc, const cudaResourceViewDesc* pResViewDesc);
cudaError_t cudaDestroyTextureObject(cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectResourceDesc(cudaResourceDesc* pResDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectResourceViewDesc(cudaResourceViewDesc* pResViewDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectTextureDesc(cudaTextureDesc* pTexDesc, cudaTextureObject_t texObject);
4.26. Surface Object Management#
cudaError_t cudaCreateSurfaceObject(cudaSurfaceObject_t* pSurfObject, const cudaResourceDesc* pResDesc);
cudaError_t cudaDestroySurfaceObject(cudaSurfaceObject_t surfObject);
cudaError_t cudaGetSurfaceObjectResourceDesc(cudaResourceDesc* pResDesc, cudaSurfaceObject_t surfObject);
4.27. Version Management#
cudaError_t cudaDriverGetVersion(int* driverVersion);
cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
__device__ cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
4.28. C++ API Routines#
-class __cudaOccupancyB2DHelper
-template < class T, int dim >__host__ cudaError_t cudaBindSurfaceToArray(const surface < T, dim > & surf, cudaArray_const_t array);
-template < class T, int dim >__host__ cudaError_t cudaBindSurfaceToArray(const surface < T, dim > & surf, cudaArray_const_t array, const cudaChannelFormatDesc& desc);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, size_t size = UINT_MAX);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, const cudaChannelFormatDesc& desc, size_t size = UINT_MAX);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture2D(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, size_t width, size_t height, size_t pitch);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture2D(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, const cudaChannelFormatDesc& desc, size_t width, size_t height, size_t pitch);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToArray(const texture < T, dim, readMode > & tex, cudaArray_const_t array);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToArray(const texture < T, dim, readMode > & tex, cudaArray_const_t array, const cudaChannelFormatDesc& desc);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToMipmappedArray(const texture < T, dim, readMode > & tex, cudaMipmappedArray_const_t mipmappedArray);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToMipmappedArray(const texture < T, dim, readMode > & tex, cudaMipmappedArray_const_t mipmappedArray, const cudaChannelFormatDesc& desc);
template < class T >__host__ cudaChannelFormatDesc cudaCreateChannelDesc(void);
cudaError_t cudaEventCreate(cudaEvent_t* event, unsigned int flags);
template < class T >__host__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, T* entry);
template < class T >__host__ cudaError_t cudaFuncSetAttribute(T* entry, cudaFuncAttribute attr, int value);
template < class T >__host__ cudaError_t cudaFuncSetCacheConfig(T* func, cudaFuncCache cacheConfig);
template < class T >__host__ cudaError_t cudaGetSymbolAddress(void** devPtr, const T& symbol);
template < class T >__host__ cudaError_t cudaGetSymbolSize(size_t* size, const T& symbol);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaGetTextureAlignmentOffset(size_t* offset, const texture < T, dim, readMode > & tex);
template < class T >__host__ cudaError_t cudaLaunch(T* func);
template < class T >__host__ cudaError_t cudaLaunchCooperativeKernel(const T* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem = 0, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaLaunchKernel(const T* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem = 0, cudaStream_t stream = 0);
cudaError_t cudaMallocHost(void** ptr, size_t size, unsigned int flags);
template < class T >__host__ cudaError_t cudaMallocManaged(T** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
template < class T >__host__ cudaError_t cudaMemcpyFromSymbol(void* dst, const T& symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
template < class T >__host__ cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const T& symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaMemcpyToSymbol(const T& symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
template < class T >__host__ cudaError_t cudaMemcpyToSymbolAsync(const T& symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, T func, int blockSize, size_t dynamicSMemSize);
template < class T >__host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, T func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSize(int* minGridSize, int* blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0);
template < typename UnaryFunction, class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMem(int* minGridSize, int* blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0);
template < typename UnaryFunction, class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(int* minGridSize, int* blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0, unsigned int flags = 0);
template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeWithFlags(int* minGridSize, int* blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0, unsigned int flags = 0);
template < class T >__host__ cudaError_t cudaSetupArgument(T arg, size_t offset);
template < class T >__host__ cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, T* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaUnbindTexture(const texture < T, dim, readMode > & tex);
4.29. Interactions with the CUDA Driver API#
4.30. Profiler Control#
cudaError_t cudaProfilerInitialize(const char* configFile, const char* outputFile, cudaOutputMode_t outputMode);
cudaError_t cudaProfilerStart(void);
cudaError_t cudaProfilerStop(void);
4.31. Data types used by CUDA Runtime#
-#define CUDA_EGL_MAX_PLANES
#define CUDA_IPC_HANDLE_SIZE
#define cudaArrayCubemap
#define cudaArrayDefault
#define cudaArrayLayered
#define cudaArraySurfaceLoadStore
#define cudaArrayTextureGather
#define cudaCooperativeLaunchMultiDeviceNoPostSync
#define cudaCooperativeLaunchMultiDeviceNoPreSync
#define cudaCpuDeviceId
#define cudaDeviceBlockingSync
#define cudaDeviceLmemResizeToMax
#define cudaDeviceMapHost
#define cudaDeviceMask
#define cudaDevicePropDontCare
#define cudaDeviceScheduleAuto
#define cudaDeviceScheduleBlockingSync
#define cudaDeviceScheduleMask
#define cudaDeviceScheduleSpin
#define cudaDeviceScheduleYield
#define cudaEventBlockingSync
#define cudaEventDefault
#define cudaEventDisableTiming
#define cudaEventInterprocess
#define cudaHostAllocDefault
#define cudaHostAllocMapped
#define cudaHostAllocPortable
#define cudaHostAllocWriteCombined
#define cudaHostRegisterDefault
#define cudaHostRegisterIoMemory
#define cudaHostRegisterMapped
#define cudaHostRegisterPortable
#define cudaInvalidDeviceId
#define cudaIpcMemLazyEnablePeerAccess
#define cudaMemAttachGlobal
#define cudaMemAttachHost
#define cudaMemAttachSingle
#define cudaOccupancyDefault
#define cudaOccupancyDisableCachingOverride
#define cudaPeerAccessDefault
#define cudaStreamDefault
#define cudaStreamLegacy
#define cudaStreamNonBlocking
#define cudaStreamPerThread
-enum cudaCGScope
enum cudaChannelFormatKind
cudaChannelFormatKindSigned = 0
cudaChannelFormatKindUnsigned = 1
cudaChannelFormatKindFloat = 2
cudaChannelFormatKindNone = 3
enum cudaComputeMode
cudaComputeModeDefault = 0
cudaComputeModeExclusive = 1
cudaComputeModeProhibited = 2
cudaComputeModeExclusiveProcess = 3
enum cudaDeviceAttr
cudaDevAttrMaxThreadsPerBlock = 1
cudaDevAttrMaxBlockDimX = 2
cudaDevAttrMaxBlockDimY = 3
cudaDevAttrMaxBlockDimZ = 4
cudaDevAttrMaxGridDimX = 5
cudaDevAttrMaxGridDimY = 6
cudaDevAttrMaxGridDimZ = 7
cudaDevAttrMaxSharedMemoryPerBlock = 8
cudaDevAttrTotalConstantMemory = 9
cudaDevAttrWarpSize = 10
cudaDevAttrMaxPitch = 11
cudaDevAttrMaxRegistersPerBlock = 12
cudaDevAttrClockRate = 13
cudaDevAttrTextureAlignment = 14
cudaDevAttrGpuOverlap = 15
cudaDevAttrMultiProcessorCount = 16
cudaDevAttrKernelExecTimeout = 17
cudaDevAttrIntegrated = 18
cudaDevAttrCanMapHostMemory = 19
cudaDevAttrComputeMode = 20
cudaDevAttrMaxTexture1DWidth = 21
cudaDevAttrMaxTexture2DWidth = 22
cudaDevAttrMaxTexture2DHeight = 23
cudaDevAttrMaxTexture3DWidth = 24
cudaDevAttrMaxTexture3DHeight = 25
cudaDevAttrMaxTexture3DDepth = 26
cudaDevAttrMaxTexture2DLayeredWidth = 27
cudaDevAttrMaxTexture2DLayeredHeight = 28
cudaDevAttrMaxTexture2DLayeredLayers = 29
cudaDevAttrSurfaceAlignment = 30
cudaDevAttrConcurrentKernels = 31
cudaDevAttrEccEnabled = 32
cudaDevAttrPciBusId = 33
cudaDevAttrPciDeviceId = 34
cudaDevAttrTccDriver = 35
cudaDevAttrMemoryClockRate = 36
cudaDevAttrGlobalMemoryBusWidth = 37
cudaDevAttrL2CacheSize = 38
cudaDevAttrMaxThreadsPerMultiProcessor = 39
cudaDevAttrAsyncEngineCount = 40
cudaDevAttrUnifiedAddressing = 41
cudaDevAttrMaxTexture1DLayeredWidth = 42
cudaDevAttrMaxTexture1DLayeredLayers = 43
cudaDevAttrMaxTexture2DGatherWidth = 45
cudaDevAttrMaxTexture2DGatherHeight = 46
cudaDevAttrMaxTexture3DWidthAlt = 47
cudaDevAttrMaxTexture3DHeightAlt = 48
cudaDevAttrMaxTexture3DDepthAlt = 49
cudaDevAttrPciDomainId = 50
cudaDevAttrTexturePitchAlignment = 51
cudaDevAttrMaxTextureCubemapWidth = 52
cudaDevAttrMaxTextureCubemapLayeredWidth = 53
cudaDevAttrMaxTextureCubemapLayeredLayers = 54
cudaDevAttrMaxSurface1DWidth = 55
cudaDevAttrMaxSurface2DWidth = 56
cudaDevAttrMaxSurface2DHeight = 57
cudaDevAttrMaxSurface3DWidth = 58
cudaDevAttrMaxSurface3DHeight = 59
cudaDevAttrMaxSurface3DDepth = 60
cudaDevAttrMaxSurface1DLayeredWidth = 61
cudaDevAttrMaxSurface1DLayeredLayers = 62
cudaDevAttrMaxSurface2DLayeredWidth = 63
cudaDevAttrMaxSurface2DLayeredHeight = 64
cudaDevAttrMaxSurface2DLayeredLayers = 65
cudaDevAttrMaxSurfaceCubemapWidth = 66
cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67
cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68
cudaDevAttrMaxTexture1DLinearWidth = 69
cudaDevAttrMaxTexture2DLinearWidth = 70
cudaDevAttrMaxTexture2DLinearHeight = 71
cudaDevAttrMaxTexture2DLinearPitch = 72
cudaDevAttrMaxTexture2DMipmappedWidth = 73
cudaDevAttrMaxTexture2DMipmappedHeight = 74
cudaDevAttrComputeCapabilityMajor = 75
cudaDevAttrComputeCapabilityMinor = 76
cudaDevAttrMaxTexture1DMipmappedWidth = 77
cudaDevAttrStreamPrioritiesSupported = 78
cudaDevAttrGlobalL1CacheSupported = 79
cudaDevAttrLocalL1CacheSupported = 80
cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81
cudaDevAttrMaxRegistersPerMultiprocessor = 82
cudaDevAttrManagedMemory = 83
cudaDevAttrIsMultiGpuBoard = 84
cudaDevAttrMultiGpuBoardGroupID = 85
cudaDevAttrHostNativeAtomicSupported = 86
cudaDevAttrSingleToDoublePrecisionPerfRatio = 87
cudaDevAttrPageableMemoryAccess = 88
cudaDevAttrConcurrentManagedAccess = 89
cudaDevAttrComputePreemptionSupported = 90
cudaDevAttrCanUseHostPointerForRegisteredMem = 91
cudaDevAttrReserved92 = 92
cudaDevAttrReserved93 = 93
cudaDevAttrReserved94 = 94
cudaDevAttrCooperativeLaunch = 95
cudaDevAttrCooperativeMultiDeviceLaunch = 96
cudaDevAttrMaxSharedMemoryPerBlockOptin = 97
cudaDevAttrCanFlushRemoteWrites = 98
cudaDevAttrHostRegisterSupported = 99
cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100
cudaDevAttrDirectManagedMemAccessFromHost = 101
enum cudaDeviceP2PAttr
cudaDevP2PAttrPerformanceRank = 1
cudaDevP2PAttrAccessSupported = 2
cudaDevP2PAttrNativeAtomicSupported = 3
cudaDevP2PAttrCudaArrayAccessSupported = 4
-enum cudaEglColorFormat
-enum cudaEglFrameType
-enum cudaEglResourceLocationFlags
enum cudaError
cudaSuccess = 0
- cudaErrorMissingConfiguration = 1
cudaErrorMemoryAllocation = 2
cudaErrorInitializationError = 3
- cudaErrorLaunchFailure = 4
- cudaErrorPriorLaunchFailure = 5
- cudaErrorLaunchTimeout = 6
- cudaErrorLaunchOutOfResources = 7
- cudaErrorInvalidDeviceFunction = 8
cudaErrorInvalidConfiguration = 9
- cudaErrorInvalidDevice = 10
- cudaErrorInvalidValue = 11
cudaErrorInvalidPitchValue = 12
cudaErrorInvalidSymbol = 13
- cudaErrorMapBufferObjectFailed = 14
- cudaErrorUnmapBufferObjectFailed = 15
cudaErrorInvalidHostPointer = 16
cudaErrorInvalidDevicePointer = 17
cudaErrorInvalidTexture = 18
cudaErrorInvalidTextureBinding = 19
cudaErrorInvalidChannelDescriptor = 20
cudaErrorInvalidMemcpyDirection = 21
cudaErrorAddressOfConstant = 22
cudaErrorTextureFetchFailed = 23
cudaErrorTextureNotBound = 24
cudaErrorSynchronizationError = 25
cudaErrorInvalidFilterSetting = 26
cudaErrorInvalidNormSetting = 27
cudaErrorMixedDeviceExecution = 28
- cudaErrorCudartUnloading = 29
- cudaErrorUnknown = 30
cudaErrorNotYetImplemented = 31
cudaErrorMemoryValueTooLarge = 32
- cudaErrorInvalidResourceHandle = 33
- cudaErrorNotReady = 34
cudaErrorInsufficientDriver = 35
- cudaErrorSetOnActiveProcess = 36
cudaErrorInvalidSurface = 37
- cudaErrorNoDevice = 38
- cudaErrorECCUncorrectable = 39
- cudaErrorSharedObjectSymbolNotFound = 40
- cudaErrorSharedObjectInitFailed = 41
- cudaErrorUnsupportedLimit = 42
cudaErrorDuplicateVariableName = 43
cudaErrorDuplicateTextureName = 44
cudaErrorDuplicateSurfaceName = 45
cudaErrorDevicesUnavailable = 46
- cudaErrorInvalidKernelImage = 47
- cudaErrorNoKernelImageForDevice = 48
cudaErrorIncompatibleDriverContext = 49
- cudaErrorPeerAccessAlreadyEnabled = 50
- cudaErrorPeerAccessNotEnabled = 51
- cudaErrorDeviceAlreadyInUse = 54
- cudaErrorProfilerDisabled = 55
- cudaErrorProfilerNotInitialized = 56
- cudaErrorProfilerAlreadyStarted = 57
- cudaErrorProfilerAlreadyStopped = 58
- cudaErrorAssert = 59
- cudaErrorTooManyPeers = 60
- cudaErrorHostMemoryAlreadyRegistered = 61
- cudaErrorHostMemoryNotRegistered = 62
- cudaErrorOperatingSystem = 63
- cudaErrorPeerAccessUnsupported = 64
cudaErrorLaunchMaxDepthExceeded = 65
cudaErrorLaunchFileScopedTex = 66
cudaErrorLaunchFileScopedSurf = 67
cudaErrorSyncDepthExceeded = 68
cudaErrorLaunchPendingCountExceeded = 69
- cudaErrorNotPermitted = 70
- cudaErrorNotSupported = 71
- cudaErrorHardwareStackError = 72
- cudaErrorIllegalInstruction = 73
- cudaErrorMisalignedAddress = 74
- cudaErrorInvalidAddressSpace = 75
- cudaErrorInvalidPc = 76
- cudaErrorIllegalAddress = 77
- cudaErrorInvalidPtx = 78
- cudaErrorInvalidGraphicsContext = 79
- cudaErrorNvlinkUncorrectable = 80
- cudaErrorJitCompilerNotFound = 81
- cudaErrorCooperativeLaunchTooLarge = 82
cudaErrorStartupFailure = 127
cudaErrorApiFailureBase = 10000
enum cudaFuncAttribute
cudaFuncAttributeMaxDynamicSharedMemorySize = 8
cudaFuncAttributePreferredSharedMemoryCarveout = 9
- cudaFuncAttributeMax = 10
enum cudaFuncCache
cudaFuncCachePreferNone = 0
cudaFuncCachePreferShared = 1
cudaFuncCachePreferL1 = 2
cudaFuncCachePreferEqual = 3
enum cudaGraphicsCubeFace
cudaGraphicsCubeFacePositiveX = 0
cudaGraphicsCubeFaceNegativeX = 1
cudaGraphicsCubeFacePositiveY = 2
cudaGraphicsCubeFaceNegativeY = 3
cudaGraphicsCubeFacePositiveZ = 4
cudaGraphicsCubeFaceNegativeZ = 5
enum cudaGraphicsMapFlags
cudaGraphicsMapFlagsNone = 0
cudaGraphicsMapFlagsReadOnly = 1
cudaGraphicsMapFlagsWriteDiscard = 2
enum cudaGraphicsRegisterFlags
cudaGraphicsRegisterFlagsNone = 0
cudaGraphicsRegisterFlagsReadOnly = 1
cudaGraphicsRegisterFlagsWriteDiscard = 2
cudaGraphicsRegisterFlagsSurfaceLoadStore = 4
cudaGraphicsRegisterFlagsTextureGather = 8
enum cudaLimit
cudaLimitStackSize = 0
cudaLimitPrintfFifoSize = 1
cudaLimitMallocHeapSize = 2
cudaLimitDevRuntimeSyncDepth = 3
cudaLimitDevRuntimePendingLaunchCount = 4
enum cudaMemRangeAttribute
cudaMemRangeAttributeReadMostly = 1
cudaMemRangeAttributePreferredLocation = 2
cudaMemRangeAttributeAccessedBy = 3
cudaMemRangeAttributeLastPrefetchLocation = 4
enum cudaMemcpyKind
cudaMemcpyHostToHost = 0
cudaMemcpyHostToDevice = 1
cudaMemcpyDeviceToHost = 2
cudaMemcpyDeviceToDevice = 3
cudaMemcpyDefault = 4
enum cudaMemoryAdvise
cudaMemAdviseSetReadMostly = 1
cudaMemAdviseUnsetReadMostly = 2
cudaMemAdviseSetPreferredLocation = 3
cudaMemAdviseUnsetPreferredLocation = 4
cudaMemAdviseSetAccessedBy = 5
cudaMemAdviseUnsetAccessedBy = 6
enum cudaMemoryType
cudaMemoryTypeHost = 1
cudaMemoryTypeDevice = 2
enum cudaOutputMode
cudaKeyValuePair = 0
cudaCSV = 1
enum cudaResourceType
cudaResourceTypeArray = 0
cudaResourceTypeMipmappedArray = 1
cudaResourceTypeLinear = 2
cudaResourceTypePitch2D = 3
enum cudaResourceViewFormat
cudaResViewFormatNone = 0
cudaResViewFormatUnsignedChar1 = 1
cudaResViewFormatUnsignedChar2 = 2
cudaResViewFormatUnsignedChar4 = 3
cudaResViewFormatSignedChar1 = 4
cudaResViewFormatSignedChar2 = 5
cudaResViewFormatSignedChar4 = 6
cudaResViewFormatUnsignedShort1 = 7
cudaResViewFormatUnsignedShort2 = 8
cudaResViewFormatUnsignedShort4 = 9
cudaResViewFormatSignedShort1 = 10
cudaResViewFormatSignedShort2 = 11
cudaResViewFormatSignedShort4 = 12
cudaResViewFormatUnsignedInt1 = 13
cudaResViewFormatUnsignedInt2 = 14
cudaResViewFormatUnsignedInt4 = 15
cudaResViewFormatSignedInt1 = 16
cudaResViewFormatSignedInt2 = 17
cudaResViewFormatSignedInt4 = 18
cudaResViewFormatHalf1 = 19
cudaResViewFormatHalf2 = 20
cudaResViewFormatHalf4 = 21
cudaResViewFormatFloat1 = 22
cudaResViewFormatFloat2 = 23
cudaResViewFormatFloat4 = 24
cudaResViewFormatUnsignedBlockCompressed1 = 25
cudaResViewFormatUnsignedBlockCompressed2 = 26
cudaResViewFormatUnsignedBlockCompressed3 = 27
cudaResViewFormatUnsignedBlockCompressed4 = 28
cudaResViewFormatSignedBlockCompressed4 = 29
cudaResViewFormatUnsignedBlockCompressed5 = 30
cudaResViewFormatSignedBlockCompressed5 = 31
cudaResViewFormatUnsignedBlockCompressed6H = 32
cudaResViewFormatSignedBlockCompressed6H = 33
cudaResViewFormatUnsignedBlockCompressed7 = 34
enum cudaSharedCarveout
cudaSharedmemCarveoutDefault = 18446744073709551615
cudaSharedmemCarveoutMaxShared = 100
cudaSharedmemCarveoutMaxL1 = 0
enum cudaSharedMemConfig
cudaSharedMemBankSizeDefault = 0
cudaSharedMemBankSizeFourByte = 1
cudaSharedMemBankSizeEightByte = 2
enum cudaSurfaceBoundaryMode
cudaBoundaryModeZero = 0
cudaBoundaryModeClamp = 1
cudaBoundaryModeTrap = 2
enum cudaSurfaceFormatMode
cudaFormatModeForced = 0
cudaFormatModeAuto = 1
enum cudaTextureAddressMode
cudaAddressModeWrap = 0
cudaAddressModeClamp = 1
cudaAddressModeMirror = 2
cudaAddressModeBorder = 3
enum cudaTextureFilterMode
cudaFilterModePoint = 0
cudaFilterModeLinear = 1
enum cudaTextureReadMode
cudaReadModeElementType = 0
cudaReadModeNormalizedFloat = 1
struct cudaChannelFormatDesc
f
w
x
y
z
struct cudaDeviceProp
ECCEnabled
asyncEngineCount
canMapHostMemory
canUseHostPointerForRegisteredMem
clockRate
computeMode
computePreemptionSupported
concurrentKernels
concurrentManagedAccess
cooperativeLaunch
cooperativeMultiDeviceLaunch
deviceOverlap
directManagedMemAccessFromHost
globalL1CacheSupported
hostNativeAtomicSupported
integrated
isMultiGpuBoard
kernelExecTimeoutEnabled
l2CacheSize
localL1CacheSupported
major
managedMemory
maxGridSize
maxSurface1D
maxSurface1DLayered
maxSurface2D
maxSurface2DLayered
maxSurface3D
maxSurfaceCubemap
maxSurfaceCubemapLayered
maxTexture1D
maxTexture1DLayered
maxTexture1DLinear
maxTexture1DMipmap
maxTexture2D
maxTexture2DGather
maxTexture2DLayered
maxTexture2DLinear
maxTexture2DMipmap
maxTexture3D
maxTexture3DAlt
maxTextureCubemap
maxTextureCubemapLayered
maxThreadsDim
maxThreadsPerBlock
maxThreadsPerMultiProcessor
memPitch
memoryBusWidth
memoryClockRate
minor
multiGpuBoardGroupID
multiProcessorCount
name
pageableMemoryAccess
pageableMemoryAccessUsesHostPageTables
pciBusID
pciDeviceID
pciDomainID
regsPerBlock
regsPerMultiprocessor
sharedMemPerBlock
sharedMemPerBlockOptin
sharedMemPerMultiprocessor
singleToDoublePrecisionPerfRatio
streamPrioritiesSupported
surfaceAlignment
tccDriver
textureAlignment
texturePitchAlignment
totalConstMem
totalGlobalMem
unifiedAddressing
warpSize
-struct cudaEglFrame
-struct cudaEglPlaneDesc
struct cudaExtent
depth
height
width
struct cudaFuncAttributes
binaryVersion
cacheModeCA
constSizeBytes
localSizeBytes
maxDynamicSharedSizeBytes
maxThreadsPerBlock
numRegs
preferredShmemCarveout
ptxVersion
sharedSizeBytes
struct cudaIpcEventHandle_t
struct cudaIpcMemHandle_t
struct cudaLaunchParams
args
blockDim
func
gridDim
sharedMem
stream
struct cudaMemcpy3DParms
dstArray
dstPos
dstPtr
extent
kind
srcArray
srcPos
srcPtr
struct cudaMemcpy3DPeerParms
dstArray
dstDevice
dstPos
dstPtr
extent
srcArray
srcDevice
srcPos
srcPtr
struct cudaPitchedPtr
pitch
ptr
xsize
ysize
struct cudaPointerAttributes
device
devicePointer
hostPointer
- isManaged
memoryType
struct cudaPos
x
y
z
struct cudaResourceDesc
array
desc
devPtr
height
mipmap
pitchInBytes
resType
sizeInBytes
width
struct cudaResourceViewDesc
depth
firstLayer
firstMipmapLevel
format
height
lastLayer
lastMipmapLevel
width
struct cudaTextureDesc
addressMode
borderColor
filterMode
maxAnisotropy
maxMipmapLevelClamp
minMipmapLevelClamp
mipmapFilterMode
mipmapLevelBias
normalizedCoords
readMode
sRGB
-struct surfaceReference
struct textureReference
addressMode
channelDesc
filterMode
maxAnisotropy
maxMipmapLevelClamp
minMipmapLevelClamp
mipmapFilterMode
mipmapLevelBias
normalized
sRGB
typedef const cudaArray * cudaArray_const_t;
typedef cudaArray * cudaArray_t;
-typedef CUeglStreamConnection_st * cudaEglStreamConnection;
typedef enum cudaError cudaError_t;
typedef CUevent_st * cudaEvent_t;
typedef cudaGraphicsResource * cudaGraphicsResource_t;
typedef const cudaMipmappedArray * cudaMipmappedArray_const_t;
typedef cudaMipmappedArray * cudaMipmappedArray_t;
typedef enum cudaOutputMode cudaOutputMode_t;
typedef CUstream_st * cudaStream_t;
typedef unsigned long long cudaSurfaceObject_t;
typedef unsigned long long cudaTextureObject_t;
typedef CUuuid_st cudaUUID_t;
83% (356 of 430 declarations available)
5.1. Device Management#
cudaError_t cudaChooseDevice(int* device, const cudaDeviceProp* prop);
cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
__device__ cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
cudaError_t cudaDeviceGetByPCIBusId(int* device, const char* pciBusId);
cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache ** pCacheConfig);
__device__ cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache ** pCacheConfig);
cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
__device__ cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
-cudaError_t cudaDeviceGetNvSciSyncAttributes(void* nvSciSyncAttrList, int device, int flags);
cudaError_t cudaDeviceGetP2PAttribute(int* value, cudaDeviceP2PAttr attr, int srcDevice, int dstDevice);
cudaError_t cudaDeviceGetPCIBusId(char* pciBusId, int len, int device);
cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
__device__ cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
cudaError_t cudaDeviceGetStreamPriorityRange(int* leastPriority, int* greatestPriority);
cudaError_t cudaDeviceReset(void);
cudaError_t cudaDeviceSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaDeviceSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaDeviceSetSharedMemConfig(cudaSharedMemConfig config);
cudaError_t cudaDeviceSynchronize(void);
-__device__ cudaError_t cudaDeviceSynchronize(void);
cudaError_t cudaGetDevice(int* device);
__device__ cudaError_t cudaGetDevice(int* device);
cudaError_t cudaGetDeviceCount(int* count);
__device__ cudaError_t cudaGetDeviceCount(int* count);
cudaError_t cudaGetDeviceFlags(unsigned int* flags);
cudaError_t cudaGetDeviceProperties(cudaDeviceProp* prop, int device);
cudaError_t cudaIpcCloseMemHandle(void* devPtr);
cudaError_t cudaIpcGetEventHandle(cudaIpcEventHandle_t* handle, cudaEvent_t event);
cudaError_t cudaIpcGetMemHandle(cudaIpcMemHandle_t* handle, void* devPtr);
cudaError_t cudaIpcOpenEventHandle(cudaEvent_t* event, cudaIpcEventHandle_t handle);
cudaError_t cudaIpcOpenMemHandle(void** devPtr, cudaIpcMemHandle_t handle, unsigned int flags);
cudaError_t cudaSetDevice(int device);
cudaError_t cudaSetDeviceFlags(unsigned int flags);
cudaError_t cudaSetValidDevices(int* device_arr, int len);
5.2. Thread Management [DEPRECATED]#
cudaError_t cudaThreadExit(void);
cudaError_t cudaThreadGetCacheConfig(cudaFuncCache ** pCacheConfig);
cudaError_t cudaThreadGetLimit(size_t* pValue, cudaLimit limit);
cudaError_t cudaThreadSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaThreadSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaThreadSynchronize(void);
5.3. Error Handling#
const char* cudaGetErrorName(cudaError_t error);
__device__ const char* cudaGetErrorName(cudaError_t error);
const char* cudaGetErrorString(cudaError_t error);
__device__ const char* cudaGetErrorString(cudaError_t error);
cudaError_t cudaGetLastError(void);
-__device__ cudaError_t cudaGetLastError(void);
cudaError_t cudaPeekAtLastError(void);
-__device__ cudaError_t cudaPeekAtLastError(void);
5.4. Stream Management#
typedef void(* cudaStreamCallback_t)(cudaStream_t stream, cudaError_t status, void* userData);
cudaError_t cudaStreamAddCallback(cudaStream_t stream, cudaStreamCallback_t callback, void* userData, unsigned int flags);
cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, void* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
cudaError_t cudaStreamBeginCapture(cudaStream_t stream, cudaStreamCaptureMode mode);
cudaError_t cudaStreamCreate(cudaStream_t* pStream);
cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
-__device__ cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
cudaError_t cudaStreamCreateWithPriority(cudaStream_t* pStream, unsigned int flags, int priority);
cudaError_t cudaStreamDestroy(cudaStream_t stream);
-__device__ cudaError_t cudaStreamDestroy(cudaStream_t stream);
cudaError_t cudaStreamEndCapture(cudaStream_t stream, cudaGraph_t* pGraph);
-cudaError_t cudaStreamGetCaptureInfo(cudaStream_t stream, cudaStreamCaptureStatus ** pCaptureStatus, unsigned long long* pId);
cudaError_t cudaStreamGetFlags(cudaStream_t hStream, unsigned int* flags);
cudaError_t cudaStreamGetPriority(cudaStream_t hStream, int* priority);
cudaError_t cudaStreamIsCapturing(cudaStream_t stream, cudaStreamCaptureStatus ** pCaptureStatus);
cudaError_t cudaStreamQuery(cudaStream_t stream);
cudaError_t cudaStreamSynchronize(cudaStream_t stream);
- cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags);
-__device__ cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags);
cudaError_t cudaThreadExchangeStreamCaptureMode(cudaStreamCaptureMode ** mode);
5.5. Event Management#
cudaError_t cudaEventCreate(cudaEvent_t* event);
cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
-__device__ cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
cudaError_t cudaEventDestroy(cudaEvent_t event);
-__device__ cudaError_t cudaEventDestroy(cudaEvent_t event);
cudaError_t cudaEventElapsedTime(float* ms, cudaEvent_t start, cudaEvent_t end);
cudaError_t cudaEventQuery(cudaEvent_t event);
cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
-__device__ cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
cudaError_t cudaEventSynchronize(cudaEvent_t event);
5.6. External Resource Interoperability#
-cudaError_t cudaDestroyExternalMemory(cudaExternalMemory_t extMem);
-cudaError_t cudaDestroyExternalSemaphore(cudaExternalSemaphore_t extSem);
-cudaError_t cudaExternalMemoryGetMappedBuffer(void** devPtr, cudaExternalMemory_t extMem, const cudaExternalMemoryBufferDesc* bufferDesc);
-cudaError_t cudaExternalMemoryGetMappedMipmappedArray(cudaMipmappedArray_t* mipmap, cudaExternalMemory_t extMem, const cudaExternalMemoryMipmappedArrayDesc* mipmapDesc);
-cudaError_t cudaImportExternalMemory(cudaExternalMemory_t* extMem_out, const cudaExternalMemoryHandleDesc* memHandleDesc);
-cudaError_t cudaImportExternalSemaphore(cudaExternalSemaphore_t* extSem_out, const cudaExternalSemaphoreHandleDesc* semHandleDesc);
-cudaError_t cudaSignalExternalSemaphoresAsync(const cudaExternalSemaphore_t* extSemArray, const cudaExternalSemaphoreSignalParams* paramsArray, unsigned int numExtSems, cudaStream_t stream = 0);
-cudaError_t cudaWaitExternalSemaphoresAsync(const cudaExternalSemaphore_t* extSemArray, const cudaExternalSemaphoreWaitParams* paramsArray, unsigned int numExtSems, cudaStream_t stream = 0);
5.7. Execution Control#
cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
-__device__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
cudaError_t cudaFuncSetAttribute(const void* func, cudaFuncAttribute attr, int value);
cudaError_t cudaFuncSetCacheConfig(const void* func, cudaFuncCache cacheConfig);
cudaError_t cudaFuncSetSharedMemConfig(const void* func, cudaSharedMemConfig config);
__device__ void* cudaGetParameterBuffer(size_t alignment, size_t size);
-__device__ void* cudaGetParameterBufferV2(void* func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize);
cudaError_t cudaLaunchCooperativeKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
-cudaError_t cudaLaunchCooperativeKernelMultiDevice(cudaLaunchParams* launchParamsList, unsigned int numDevices, unsigned int flags = 0);
cudaError_t cudaLaunchHostFunc(cudaStream_t stream, cudaHostFn_t fn, void* userData);
cudaError_t cudaLaunchKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
cudaError_t cudaSetDoubleForDevice(double* d);
cudaError_t cudaSetDoubleForHost(double* d);
5.8. Occupancy#
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
-__device__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
5.9. Memory Management#
cudaError_t cudaArrayGetInfo(cudaChannelFormatDesc* desc, cudaExtent* extent, unsigned int* flags, cudaArray_t array);
cudaError_t cudaFree(void* devPtr);
__device__ cudaError_t cudaFree(void* devPtr);
cudaError_t cudaFreeArray(cudaArray_t array);
cudaError_t cudaFreeHost(void* ptr);
cudaError_t cudaFreeMipmappedArray(cudaMipmappedArray_t mipmappedArray);
-cudaError_t cudaGetMipmappedArrayLevel(cudaArray_t* levelArray, cudaMipmappedArray_const_t mipmappedArray, unsigned int level);
cudaError_t cudaGetSymbolAddress(void** devPtr, const void* symbol);
cudaError_t cudaGetSymbolSize(size_t* size, const void* symbol);
cudaError_t cudaHostAlloc(void** pHost, size_t size, unsigned int flags);
cudaError_t cudaHostGetDevicePointer(void** pDevice, void* pHost, unsigned int flags);
cudaError_t cudaHostGetFlags(unsigned int* pFlags, void* pHost);
cudaError_t cudaHostRegister(void* ptr, size_t size, unsigned int flags);
cudaError_t cudaHostUnregister(void* ptr);
cudaError_t cudaMalloc(void** devPtr, size_t size);
__device__ cudaError_t cudaMalloc(void** devPtr, size_t size);
cudaError_t cudaMalloc3D(cudaPitchedPtr* pitchedDevPtr, cudaExtent extent);
cudaError_t cudaMalloc3DArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int flags = 0);
cudaError_t cudaMallocArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, size_t width, size_t height = 0, unsigned int flags = 0);
cudaError_t cudaMallocHost(void** ptr, size_t size);
cudaError_t cudaMallocManaged(void** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
cudaError_t cudaMallocMipmappedArray(cudaMipmappedArray_t* mipmappedArray, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int numLevels, unsigned int flags = 0);
cudaError_t cudaMallocPitch(void** devPtr, size_t* pitch, size_t width, size_t height);
cudaError_t cudaMemAdvise(const void* devPtr, size_t count, cudaMemoryAdvise advice, int device);
cudaError_t cudaMemGetInfo(size_t* free, size_t* total);
cudaError_t cudaMemPrefetchAsync(const void* devPtr, size_t count, int dstDevice, cudaStream_t stream = 0);
cudaError_t cudaMemRangeGetAttribute(void* data, size_t dataSize, cudaMemRangeAttribute attribute, const void* devPtr, size_t count);
-cudaError_t cudaMemRangeGetAttributes(void** data, size_t* dataSizes, cudaMemRangeAttribute ** attributes, size_t numAttributes, const void* devPtr, size_t count);
cudaError_t cudaMemcpy(void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2D(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
-cudaError_t cudaMemcpy2DArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t width, size_t height, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DFromArray(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DFromArrayAsync(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy3D(const cudaMemcpy3DParms* p);
cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
cudaError_t cudaMemcpy3DPeer(const cudaMemcpy3DPeerParms* p);
cudaError_t cudaMemcpy3DPeerAsync(const cudaMemcpy3DPeerParms* p, cudaStream_t stream = 0);
cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyFromSymbol(void* dst, const void* symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyPeer(void* dst, int dstDevice, const void* src, int srcDevice, size_t count);
cudaError_t cudaMemcpyPeerAsync(void* dst, int dstDevice, const void* src, int srcDevice, size_t count, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToSymbol(const void* symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
cudaError_t cudaMemcpyToSymbolAsync(const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemset(void* devPtr, int value, size_t count);
cudaError_t cudaMemset2D(void* devPtr, size_t pitch, int value, size_t width, size_t height);
cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
cudaError_t cudaMemset3D(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent);
cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
cudaExtent make_cudaExtent(size_t w, size_t h, size_t d);
cudaPitchedPtr make_cudaPitchedPtr(void* d, size_t p, size_t xsz, size_t ysz);
cudaPos make_cudaPos(size_t x, size_t y, size_t z);
5.10. Memory Management [DEPRECATED]#
-cudaError_t cudaMemcpyArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t count, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
-cudaError_t cudaMemcpyFromArray(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind);
-cudaError_t cudaMemcpyFromArrayAsync(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpyToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
5.11. Unified Addressing#
cudaError_t cudaPointerGetAttributes(cudaPointerAttributes* attributes, const void* ptr);
5.12. Peer Device Memory Access#
cudaError_t cudaDeviceCanAccessPeer(int* canAccessPeer, int device, int peerDevice);
cudaError_t cudaDeviceDisablePeerAccess(int peerDevice);
cudaError_t cudaDeviceEnablePeerAccess(int peerDevice, unsigned int flags);
5.13. OpenGL Interoperability#
enum cudaGLDeviceList
cudaGLDeviceListAll = 1
cudaGLDeviceListCurrentFrame = 2
cudaGLDeviceListNextFrame = 3
cudaError_t cudaGLGetDevices(unsigned int* pCudaDeviceCount, int* pCudaDevices, unsigned int cudaDeviceCount, cudaGLDeviceList deviceList);
cudaError_t cudaGraphicsGLRegisterBuffer(cudaGraphicsResource** resource, GLuint buffer, unsigned int flags);
cudaError_t cudaGraphicsGLRegisterImage(cudaGraphicsResource** resource, GLuint image, GLenum target, unsigned int flags);
-cudaError_t cudaWGLGetDevice(int* device, HGPUNV hGpu);
5.14. OpenGL Interoperability [DEPRECATED]#
enum cudaGLMapFlags
cudaGLMapFlagsNone = 0
cudaGLMapFlagsReadOnly = 1
cudaGLMapFlagsWriteDiscard = 2
cudaError_t cudaGLMapBufferObject(void** devPtr, GLuint bufObj);
cudaError_t cudaGLMapBufferObjectAsync(void** devPtr, GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLRegisterBufferObject(GLuint bufObj);
cudaError_t cudaGLSetBufferObjectMapFlags(GLuint bufObj, unsigned int flags);
-cudaError_t cudaGLSetGLDevice(int device);
cudaError_t cudaGLUnmapBufferObject(GLuint bufObj);
cudaError_t cudaGLUnmapBufferObjectAsync(GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLUnregisterBufferObject(GLuint bufObj);
5.15. Direct3D 9 Interoperability#
-Windows APIs are currently unsupported
5.16. Direct3D 9 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
5.17. Direct3D 10 Interoperability#
-Windows APIs are currently unsupported
5.18. Direct3D 10 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
5.19. Direct3D 11 Interoperability#
-Windows APIs are currently unsupported
5.20. Direct3D 11 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
5.21. VDPAU Interoperability#
-VDPAU is currently unsupported
5.22. EGL Interoperability#
-EGL is currently unsupported
5.23. Graphics Interoperability#
cudaError_t cudaGraphicsMapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
-cudaError_t cudaGraphicsResourceGetMappedMipmappedArray(cudaMipmappedArray_t* mipmappedArray, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceGetMappedPointer(void** devPtr, size_t* size, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceSetMapFlags(cudaGraphicsResource_t resource, unsigned int flags);
cudaError_t cudaGraphicsSubResourceGetMappedArray(cudaArray_t* array, cudaGraphicsResource_t resource, unsigned int arrayIndex, unsigned int mipLevel);
cudaError_t cudaGraphicsUnmapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
cudaError_t cudaGraphicsUnregisterResource(cudaGraphicsResource_t resource);
5.24. Texture Reference Management [DEPRECATED]#
-cudaError_t cudaBindTexture(size_t* offset, const textureReference* texref, const void* devPtr, const cudaChannelFormatDesc* desc, size_t size = UINT_MAX);
cudaError_t cudaBindTexture2D(size_t* offset, const textureReference* texref, const void* devPtr, const cudaChannelFormatDesc* desc, size_t width, size_t height, size_t pitch);
cudaError_t cudaBindTextureToArray(const textureReference* texref, cudaArray_const_t array, const cudaChannelFormatDesc* desc);
cudaError_t cudaBindTextureToMipmappedArray(const textureReference* texref, cudaMipmappedArray_const_t mipmappedArray, const cudaChannelFormatDesc* desc);
cudaError_t cudaGetTextureAlignmentOffset(size_t* offset, const textureReference* texref);
cudaError_t cudaGetTextureReference(const textureReference** texref, const void* symbol);
cudaError_t cudaUnbindTexture(const textureReference* texref);
5.25. Surface Reference Management [DEPRECATED]#
-cudaError_t cudaBindSurfaceToArray(const surfaceReference* surfref, cudaArray_const_t array, const cudaChannelFormatDesc* desc);
-cudaError_t cudaGetSurfaceReference(const surfaceReference** surfref, const void* symbol);
5.26. Texture Object Management#
cudaChannelFormatDesc cudaCreateChannelDesc(int x, int y, int z, int w, cudaChannelFormatKind f);
cudaError_t cudaCreateTextureObject(cudaTextureObject_t* pTexObject, const cudaResourceDesc* pResDesc, const cudaTextureDesc* pTexDesc, const cudaResourceViewDesc* pResViewDesc);
cudaError_t cudaDestroyTextureObject(cudaTextureObject_t texObject);
cudaError_t cudaGetChannelDesc(cudaChannelFormatDesc* desc, cudaArray_const_t array);
cudaError_t cudaGetTextureObjectResourceDesc(cudaResourceDesc* pResDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectResourceViewDesc(cudaResourceViewDesc* pResViewDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectTextureDesc(cudaTextureDesc* pTexDesc, cudaTextureObject_t texObject);
5.27. Surface Object Management#
cudaError_t cudaCreateSurfaceObject(cudaSurfaceObject_t* pSurfObject, const cudaResourceDesc* pResDesc);
cudaError_t cudaDestroySurfaceObject(cudaSurfaceObject_t surfObject);
cudaError_t cudaGetSurfaceObjectResourceDesc(cudaResourceDesc* pResDesc, cudaSurfaceObject_t surfObject);
5.28. Version Management#
cudaError_t cudaDriverGetVersion(int* driverVersion);
cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
__device__ cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
5.29. Graph Management#
cudaError_t cudaGraphAddChildGraphNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaGraph_t childGraph);
cudaError_t cudaGraphAddDependencies(cudaGraph_t graph, const cudaGraphNode_t* from, const cudaGraphNode_t* to, size_t numDependencies);
cudaError_t cudaGraphAddEmptyNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies);
cudaError_t cudaGraphAddHostNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphAddKernelNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphAddMemcpyNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaMemcpy3DParms* pCopyParams);
cudaError_t cudaGraphAddMemsetNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaMemsetParams* pMemsetParams);
cudaError_t cudaGraphChildGraphNodeGetGraph(cudaGraphNode_t node, cudaGraph_t* pGraph);
cudaError_t cudaGraphClone(cudaGraph_t* pGraphClone, cudaGraph_t originalGraph);
cudaError_t cudaGraphCreate(cudaGraph_t* pGraph, unsigned int flags);
cudaError_t cudaGraphDestroy(cudaGraph_t graph);
cudaError_t cudaGraphDestroyNode(cudaGraphNode_t node);
cudaError_t cudaGraphExecDestroy(cudaGraphExec_t graphExec);
cudaError_t cudaGraphExecHostNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphExecKernelNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphExecMemcpyNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphExecMemsetNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaMemsetParams* pNodeParams);
-cudaError_t cudaGraphExecUpdate(cudaGraphExec_t hGraphExec, cudaGraph_t hGraph, cudaGraphNode_t* hErrorNode_out, cudaGraphExecUpdateResult ** updateResult_out);
cudaError_t cudaGraphGetEdges(cudaGraph_t graph, cudaGraphNode_t* from, cudaGraphNode_t* to, size_t* numEdges);
cudaError_t cudaGraphGetNodes(cudaGraph_t graph, cudaGraphNode_t* nodes, size_t* numNodes);
cudaError_t cudaGraphGetRootNodes(cudaGraph_t graph, cudaGraphNode_t* pRootNodes, size_t* pNumRootNodes);
cudaError_t cudaGraphHostNodeGetParams(cudaGraphNode_t node, cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphHostNodeSetParams(cudaGraphNode_t node, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphInstantiate(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, cudaGraphNode_t* pErrorNode, char* pLogBuffer, size_t bufferSize);
cudaError_t cudaGraphKernelNodeGetParams(cudaGraphNode_t node, cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphKernelNodeSetParams(cudaGraphNode_t node, const cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream);
cudaError_t cudaGraphMemcpyNodeGetParams(cudaGraphNode_t node, cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphMemcpyNodeSetParams(cudaGraphNode_t node, const cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphMemsetNodeGetParams(cudaGraphNode_t node, cudaMemsetParams* pNodeParams);
cudaError_t cudaGraphMemsetNodeSetParams(cudaGraphNode_t node, const cudaMemsetParams* pNodeParams);
cudaError_t cudaGraphNodeFindInClone(cudaGraphNode_t* pNode, cudaGraphNode_t originalNode, cudaGraph_t clonedGraph);
cudaError_t cudaGraphNodeGetDependencies(cudaGraphNode_t node, cudaGraphNode_t* pDependencies, size_t* pNumDependencies);
cudaError_t cudaGraphNodeGetDependentNodes(cudaGraphNode_t node, cudaGraphNode_t* pDependentNodes, size_t* pNumDependentNodes);
cudaError_t cudaGraphNodeGetType(cudaGraphNode_t node, cudaGraphNodeType ** pType);
cudaError_t cudaGraphRemoveDependencies(cudaGraph_t graph, const cudaGraphNode_t* from, const cudaGraphNode_t* to, size_t numDependencies);
5.30. C++ API Routines#
-class __cudaOccupancyB2DHelper
-template < class T, int dim >__host__ cudaError_t cudaBindSurfaceToArray(const surface < T, dim > & surf, cudaArray_const_t array);
-template < class T, int dim >__host__ cudaError_t cudaBindSurfaceToArray(const surface < T, dim > & surf, cudaArray_const_t array, const cudaChannelFormatDesc& desc);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, size_t size = UINT_MAX);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, const cudaChannelFormatDesc& desc, size_t size = UINT_MAX);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture2D(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, size_t width, size_t height, size_t pitch);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture2D(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, const cudaChannelFormatDesc& desc, size_t width, size_t height, size_t pitch);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToArray(const texture < T, dim, readMode > & tex, cudaArray_const_t array);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToArray(const texture < T, dim, readMode > & tex, cudaArray_const_t array, const cudaChannelFormatDesc& desc);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToMipmappedArray(const texture < T, dim, readMode > & tex, cudaMipmappedArray_const_t mipmappedArray);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToMipmappedArray(const texture < T, dim, readMode > & tex, cudaMipmappedArray_const_t mipmappedArray, const cudaChannelFormatDesc& desc);
template < class T >__host__ cudaChannelFormatDesc cudaCreateChannelDesc(void);
cudaError_t cudaEventCreate(cudaEvent_t* event, unsigned int flags);
template < class T >__host__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, T* entry);
template < class T >__host__ cudaError_t cudaFuncSetAttribute(T* entry, cudaFuncAttribute attr, int value);
template < class T >__host__ cudaError_t cudaFuncSetCacheConfig(T* func, cudaFuncCache cacheConfig);
template < class T >__host__ cudaError_t cudaGetSymbolAddress(void** devPtr, const T& symbol);
template < class T >__host__ cudaError_t cudaGetSymbolSize(size_t* size, const T& symbol);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaGetTextureAlignmentOffset(size_t* offset, const texture < T, dim, readMode > & tex);
template < class T >__host__ cudaError_t cudaLaunchCooperativeKernel(const T* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem = 0, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaLaunchKernel(const T* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem = 0, cudaStream_t stream = 0);
cudaError_t cudaMallocHost(void** ptr, size_t size, unsigned int flags);
template < class T >__host__ cudaError_t cudaMallocManaged(T** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
template < class T >__host__ cudaError_t cudaMemcpyFromSymbol(void* dst, const T& symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
template < class T >__host__ cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const T& symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaMemcpyToSymbol(const T& symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
template < class T >__host__ cudaError_t cudaMemcpyToSymbolAsync(const T& symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, T func, int blockSize, size_t dynamicSMemSize);
template < class T >__host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, T func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSize(int* minGridSize, int* blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0);
template < typename UnaryFunction, class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMem(int* minGridSize, int* blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0);
template < typename UnaryFunction, class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(int* minGridSize, int* blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0, unsigned int flags = 0);
template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeWithFlags(int* minGridSize, int* blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0, unsigned int flags = 0);
template < class T >__host__ cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, T* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaUnbindTexture(const texture < T, dim, readMode > & tex);
5.31. Interactions with the CUDA Driver API#
5.32. Profiler Control#
cudaError_t cudaProfilerInitialize(const char* configFile, const char* outputFile, cudaOutputMode_t outputMode);
cudaError_t cudaProfilerStart(void);
cudaError_t cudaProfilerStop(void);
5.33. Data types used by CUDA Runtime#
-#define CUDA_EGL_MAX_PLANES
#define CUDA_IPC_HANDLE_SIZE
#define cudaArrayColorAttachment
#define cudaArrayCubemap
#define cudaArrayDefault
#define cudaArrayLayered
#define cudaArraySurfaceLoadStore
#define cudaArrayTextureGather
#define cudaCooperativeLaunchMultiDeviceNoPostSync
#define cudaCooperativeLaunchMultiDeviceNoPreSync
#define cudaCpuDeviceId
#define cudaDeviceBlockingSync
#define cudaDeviceLmemResizeToMax
#define cudaDeviceMapHost
#define cudaDeviceMask
#define cudaDevicePropDontCare
#define cudaDeviceScheduleAuto
#define cudaDeviceScheduleBlockingSync
#define cudaDeviceScheduleMask
#define cudaDeviceScheduleSpin
#define cudaDeviceScheduleYield
#define cudaEventBlockingSync
#define cudaEventDefault
#define cudaEventDisableTiming
#define cudaEventInterprocess
-#define cudaExternalMemoryDedicated
-#define cudaExternalSemaphoreSignalSkipNvSciBufMemSync
-#define cudaExternalSemaphoreWaitSkipNvSciBufMemSync
#define cudaHostAllocDefault
#define cudaHostAllocMapped
#define cudaHostAllocPortable
#define cudaHostAllocWriteCombined
#define cudaHostRegisterDefault
#define cudaHostRegisterIoMemory
#define cudaHostRegisterMapped
#define cudaHostRegisterPortable
#define cudaInvalidDeviceId
#define cudaIpcMemLazyEnablePeerAccess
#define cudaMemAttachGlobal
#define cudaMemAttachHost
#define cudaMemAttachSingle
-#define cudaNvSciSyncAttrSignal
-#define cudaNvSciSyncAttrWait
#define cudaOccupancyDefault
#define cudaOccupancyDisableCachingOverride
#define cudaPeerAccessDefault
#define cudaStreamDefault
#define cudaStreamLegacy
#define cudaStreamNonBlocking
#define cudaStreamPerThread
-enum cudaCGScope
enum cudaChannelFormatKind
cudaChannelFormatKindSigned = 0
cudaChannelFormatKindUnsigned = 1
cudaChannelFormatKindFloat = 2
cudaChannelFormatKindNone = 3
enum cudaComputeMode
cudaComputeModeDefault = 0
cudaComputeModeExclusive = 1
cudaComputeModeProhibited = 2
cudaComputeModeExclusiveProcess = 3
enum cudaDeviceAttr
cudaDevAttrMaxThreadsPerBlock = 1
cudaDevAttrMaxBlockDimX = 2
cudaDevAttrMaxBlockDimY = 3
cudaDevAttrMaxBlockDimZ = 4
cudaDevAttrMaxGridDimX = 5
cudaDevAttrMaxGridDimY = 6
cudaDevAttrMaxGridDimZ = 7
cudaDevAttrMaxSharedMemoryPerBlock = 8
cudaDevAttrTotalConstantMemory = 9
cudaDevAttrWarpSize = 10
cudaDevAttrMaxPitch = 11
cudaDevAttrMaxRegistersPerBlock = 12
cudaDevAttrClockRate = 13
cudaDevAttrTextureAlignment = 14
cudaDevAttrGpuOverlap = 15
cudaDevAttrMultiProcessorCount = 16
cudaDevAttrKernelExecTimeout = 17
cudaDevAttrIntegrated = 18
cudaDevAttrCanMapHostMemory = 19
cudaDevAttrComputeMode = 20
cudaDevAttrMaxTexture1DWidth = 21
cudaDevAttrMaxTexture2DWidth = 22
cudaDevAttrMaxTexture2DHeight = 23
cudaDevAttrMaxTexture3DWidth = 24
cudaDevAttrMaxTexture3DHeight = 25
cudaDevAttrMaxTexture3DDepth = 26
cudaDevAttrMaxTexture2DLayeredWidth = 27
cudaDevAttrMaxTexture2DLayeredHeight = 28
cudaDevAttrMaxTexture2DLayeredLayers = 29
cudaDevAttrSurfaceAlignment = 30
cudaDevAttrConcurrentKernels = 31
cudaDevAttrEccEnabled = 32
cudaDevAttrPciBusId = 33
cudaDevAttrPciDeviceId = 34
cudaDevAttrTccDriver = 35
cudaDevAttrMemoryClockRate = 36
cudaDevAttrGlobalMemoryBusWidth = 37
cudaDevAttrL2CacheSize = 38
cudaDevAttrMaxThreadsPerMultiProcessor = 39
cudaDevAttrAsyncEngineCount = 40
cudaDevAttrUnifiedAddressing = 41
cudaDevAttrMaxTexture1DLayeredWidth = 42
cudaDevAttrMaxTexture1DLayeredLayers = 43
cudaDevAttrMaxTexture2DGatherWidth = 45
cudaDevAttrMaxTexture2DGatherHeight = 46
cudaDevAttrMaxTexture3DWidthAlt = 47
cudaDevAttrMaxTexture3DHeightAlt = 48
cudaDevAttrMaxTexture3DDepthAlt = 49
cudaDevAttrPciDomainId = 50
cudaDevAttrTexturePitchAlignment = 51
cudaDevAttrMaxTextureCubemapWidth = 52
cudaDevAttrMaxTextureCubemapLayeredWidth = 53
cudaDevAttrMaxTextureCubemapLayeredLayers = 54
cudaDevAttrMaxSurface1DWidth = 55
cudaDevAttrMaxSurface2DWidth = 56
cudaDevAttrMaxSurface2DHeight = 57
cudaDevAttrMaxSurface3DWidth = 58
cudaDevAttrMaxSurface3DHeight = 59
cudaDevAttrMaxSurface3DDepth = 60
cudaDevAttrMaxSurface1DLayeredWidth = 61
cudaDevAttrMaxSurface1DLayeredLayers = 62
cudaDevAttrMaxSurface2DLayeredWidth = 63
cudaDevAttrMaxSurface2DLayeredHeight = 64
cudaDevAttrMaxSurface2DLayeredLayers = 65
cudaDevAttrMaxSurfaceCubemapWidth = 66
cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67
cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68
cudaDevAttrMaxTexture1DLinearWidth = 69
cudaDevAttrMaxTexture2DLinearWidth = 70
cudaDevAttrMaxTexture2DLinearHeight = 71
cudaDevAttrMaxTexture2DLinearPitch = 72
cudaDevAttrMaxTexture2DMipmappedWidth = 73
cudaDevAttrMaxTexture2DMipmappedHeight = 74
cudaDevAttrComputeCapabilityMajor = 75
cudaDevAttrComputeCapabilityMinor = 76
cudaDevAttrMaxTexture1DMipmappedWidth = 77
cudaDevAttrStreamPrioritiesSupported = 78
cudaDevAttrGlobalL1CacheSupported = 79
cudaDevAttrLocalL1CacheSupported = 80
cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81
cudaDevAttrMaxRegistersPerMultiprocessor = 82
cudaDevAttrManagedMemory = 83
cudaDevAttrIsMultiGpuBoard = 84
cudaDevAttrMultiGpuBoardGroupID = 85
cudaDevAttrHostNativeAtomicSupported = 86
cudaDevAttrSingleToDoublePrecisionPerfRatio = 87
cudaDevAttrPageableMemoryAccess = 88
cudaDevAttrConcurrentManagedAccess = 89
cudaDevAttrComputePreemptionSupported = 90
cudaDevAttrCanUseHostPointerForRegisteredMem = 91
cudaDevAttrReserved92 = 92
cudaDevAttrReserved93 = 93
cudaDevAttrReserved94 = 94
cudaDevAttrCooperativeLaunch = 95
cudaDevAttrCooperativeMultiDeviceLaunch = 96
cudaDevAttrMaxSharedMemoryPerBlockOptin = 97
cudaDevAttrCanFlushRemoteWrites = 98
cudaDevAttrHostRegisterSupported = 99
cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100
cudaDevAttrDirectManagedMemAccessFromHost = 101
enum cudaDeviceP2PAttr
cudaDevP2PAttrPerformanceRank = 1
cudaDevP2PAttrAccessSupported = 2
cudaDevP2PAttrNativeAtomicSupported = 3
cudaDevP2PAttrCudaArrayAccessSupported = 4
-enum cudaEglColorFormat
-enum cudaEglFrameType
-enum cudaEglResourceLocationFlags
enum cudaError
cudaSuccess = 0
cudaErrorInvalidValue = 1
cudaErrorMemoryAllocation = 2
cudaErrorInitializationError = 3
cudaErrorCudartUnloading = 4
cudaErrorProfilerDisabled = 5
cudaErrorProfilerNotInitialized = 6
cudaErrorProfilerAlreadyStarted = 7
cudaErrorProfilerAlreadyStopped = 8
cudaErrorInvalidConfiguration = 9
cudaErrorInvalidPitchValue = 12
cudaErrorInvalidSymbol = 13
cudaErrorInvalidHostPointer = 16
cudaErrorInvalidDevicePointer = 17
cudaErrorInvalidTexture = 18
cudaErrorInvalidTextureBinding = 19
cudaErrorInvalidChannelDescriptor = 20
cudaErrorInvalidMemcpyDirection = 21
cudaErrorAddressOfConstant = 22
cudaErrorTextureFetchFailed = 23
cudaErrorTextureNotBound = 24
cudaErrorSynchronizationError = 25
cudaErrorInvalidFilterSetting = 26
cudaErrorInvalidNormSetting = 27
cudaErrorMixedDeviceExecution = 28
cudaErrorNotYetImplemented = 31
cudaErrorMemoryValueTooLarge = 32
cudaErrorInsufficientDriver = 35
cudaErrorInvalidSurface = 37
cudaErrorDuplicateVariableName = 43
cudaErrorDuplicateTextureName = 44
cudaErrorDuplicateSurfaceName = 45
cudaErrorDevicesUnavailable = 46
cudaErrorIncompatibleDriverContext = 49
cudaErrorMissingConfiguration = 52
cudaErrorPriorLaunchFailure = 53
cudaErrorLaunchMaxDepthExceeded = 65
cudaErrorLaunchFileScopedTex = 66
cudaErrorLaunchFileScopedSurf = 67
cudaErrorSyncDepthExceeded = 68
cudaErrorLaunchPendingCountExceeded = 69
cudaErrorInvalidDeviceFunction = 98
cudaErrorNoDevice = 100
cudaErrorInvalidDevice = 101
cudaErrorStartupFailure = 127
cudaErrorInvalidKernelImage = 200
cudaErrorDeviceUninitialized = 201
cudaErrorMapBufferObjectFailed = 205
cudaErrorUnmapBufferObjectFailed = 206
cudaErrorArrayIsMapped = 207
cudaErrorAlreadyMapped = 208
cudaErrorNoKernelImageForDevice = 209
cudaErrorAlreadyAcquired = 210
cudaErrorNotMapped = 211
cudaErrorNotMappedAsArray = 212
cudaErrorNotMappedAsPointer = 213
cudaErrorECCUncorrectable = 214
cudaErrorUnsupportedLimit = 215
cudaErrorDeviceAlreadyInUse = 216
cudaErrorPeerAccessUnsupported = 217
cudaErrorInvalidPtx = 218
cudaErrorInvalidGraphicsContext = 219
cudaErrorNvlinkUncorrectable = 220
cudaErrorJitCompilerNotFound = 221
cudaErrorInvalidSource = 300
cudaErrorFileNotFound = 301
cudaErrorSharedObjectSymbolNotFound = 302
cudaErrorSharedObjectInitFailed = 303
cudaErrorOperatingSystem = 304
cudaErrorInvalidResourceHandle = 400
cudaErrorIllegalState = 401
cudaErrorSymbolNotFound = 500
cudaErrorNotReady = 600
cudaErrorIllegalAddress = 700
cudaErrorLaunchOutOfResources = 701
cudaErrorLaunchTimeout = 702
cudaErrorLaunchIncompatibleTexturing = 703
cudaErrorPeerAccessAlreadyEnabled = 704
cudaErrorPeerAccessNotEnabled = 705
cudaErrorSetOnActiveProcess = 708
cudaErrorContextIsDestroyed = 709
cudaErrorAssert = 710
cudaErrorTooManyPeers = 711
cudaErrorHostMemoryAlreadyRegistered = 712
cudaErrorHostMemoryNotRegistered = 713
cudaErrorHardwareStackError = 714
cudaErrorIllegalInstruction = 715
cudaErrorMisalignedAddress = 716
cudaErrorInvalidAddressSpace = 717
cudaErrorInvalidPc = 718
cudaErrorLaunchFailure = 719
cudaErrorCooperativeLaunchTooLarge = 720
cudaErrorNotPermitted = 800
cudaErrorNotSupported = 801
cudaErrorSystemNotReady = 802
cudaErrorSystemDriverMismatch = 803
cudaErrorCompatNotSupportedOnDevice = 804
cudaErrorStreamCaptureUnsupported = 900
cudaErrorStreamCaptureInvalidated = 901
cudaErrorStreamCaptureMerge = 902
cudaErrorStreamCaptureUnmatched = 903
cudaErrorStreamCaptureUnjoined = 904
cudaErrorStreamCaptureIsolation = 905
cudaErrorStreamCaptureImplicit = 906
cudaErrorCapturedEvent = 907
cudaErrorStreamCaptureWrongThread = 908
cudaErrorTimeout = 909
cudaErrorGraphExecUpdateFailure = 910
cudaErrorUnknown = 999
cudaErrorApiFailureBase = 10000
-enum cudaExternalMemoryHandleType
-enum cudaExternalSemaphoreHandleType
enum cudaFuncAttribute
cudaFuncAttributeMaxDynamicSharedMemorySize = 8
cudaFuncAttributePreferredSharedMemoryCarveout = 9
- cudaFuncAttributeMax = 10
enum cudaFuncCache
cudaFuncCachePreferNone = 0
cudaFuncCachePreferShared = 1
cudaFuncCachePreferL1 = 2
cudaFuncCachePreferEqual = 3
enum cudaGraphExecUpdateResult
cudaGraphExecUpdateSuccess = 0
cudaGraphExecUpdateError = 1
cudaGraphExecUpdateErrorTopologyChanged = 2
cudaGraphExecUpdateErrorNodeTypeChanged = 3
cudaGraphExecUpdateErrorFunctionChanged = 4
cudaGraphExecUpdateErrorParametersChanged = 5
cudaGraphExecUpdateErrorNotSupported = 6
enum cudaGraphNodeType
cudaGraphNodeTypeKernel = 0
cudaGraphNodeTypeMemcpy = 1
cudaGraphNodeTypeMemset = 2
cudaGraphNodeTypeHost = 3
cudaGraphNodeTypeGraph = 4
cudaGraphNodeTypeEmpty = 5
- cudaGraphNodeTypeCount = 6
enum cudaGraphicsCubeFace
cudaGraphicsCubeFacePositiveX = 0
cudaGraphicsCubeFaceNegativeX = 1
cudaGraphicsCubeFacePositiveY = 2
cudaGraphicsCubeFaceNegativeY = 3
cudaGraphicsCubeFacePositiveZ = 4
cudaGraphicsCubeFaceNegativeZ = 5
enum cudaGraphicsMapFlags
cudaGraphicsMapFlagsNone = 0
cudaGraphicsMapFlagsReadOnly = 1
cudaGraphicsMapFlagsWriteDiscard = 2
enum cudaGraphicsRegisterFlags
cudaGraphicsRegisterFlagsNone = 0
cudaGraphicsRegisterFlagsReadOnly = 1
cudaGraphicsRegisterFlagsWriteDiscard = 2
cudaGraphicsRegisterFlagsSurfaceLoadStore = 4
cudaGraphicsRegisterFlagsTextureGather = 8
enum cudaLimit
cudaLimitStackSize = 0
cudaLimitPrintfFifoSize = 1
cudaLimitMallocHeapSize = 2
cudaLimitDevRuntimeSyncDepth = 3
cudaLimitDevRuntimePendingLaunchCount = 4
cudaLimitMaxL2FetchGranularity = 5
enum cudaMemRangeAttribute
cudaMemRangeAttributeReadMostly = 1
cudaMemRangeAttributePreferredLocation = 2
cudaMemRangeAttributeAccessedBy = 3
cudaMemRangeAttributeLastPrefetchLocation = 4
enum cudaMemcpyKind
cudaMemcpyHostToHost = 0
cudaMemcpyHostToDevice = 1
cudaMemcpyDeviceToHost = 2
cudaMemcpyDeviceToDevice = 3
cudaMemcpyDefault = 4
enum cudaMemoryAdvise
cudaMemAdviseSetReadMostly = 1
cudaMemAdviseUnsetReadMostly = 2
cudaMemAdviseSetPreferredLocation = 3
cudaMemAdviseUnsetPreferredLocation = 4
cudaMemAdviseSetAccessedBy = 5
cudaMemAdviseUnsetAccessedBy = 6
enum cudaMemoryType
cudaMemoryTypeUnregistered = 0
cudaMemoryTypeHost = 1
cudaMemoryTypeDevice = 2
cudaMemoryTypeManaged = 3
enum cudaOutputMode
cudaKeyValuePair = 0
cudaCSV = 1
enum cudaResourceType
cudaResourceTypeArray = 0
cudaResourceTypeMipmappedArray = 1
cudaResourceTypeLinear = 2
cudaResourceTypePitch2D = 3
enum cudaResourceViewFormat
cudaResViewFormatNone = 0
cudaResViewFormatUnsignedChar1 = 1
cudaResViewFormatUnsignedChar2 = 2
cudaResViewFormatUnsignedChar4 = 3
cudaResViewFormatSignedChar1 = 4
cudaResViewFormatSignedChar2 = 5
cudaResViewFormatSignedChar4 = 6
cudaResViewFormatUnsignedShort1 = 7
cudaResViewFormatUnsignedShort2 = 8
cudaResViewFormatUnsignedShort4 = 9
cudaResViewFormatSignedShort1 = 10
cudaResViewFormatSignedShort2 = 11
cudaResViewFormatSignedShort4 = 12
cudaResViewFormatUnsignedInt1 = 13
cudaResViewFormatUnsignedInt2 = 14
cudaResViewFormatUnsignedInt4 = 15
cudaResViewFormatSignedInt1 = 16
cudaResViewFormatSignedInt2 = 17
cudaResViewFormatSignedInt4 = 18
cudaResViewFormatHalf1 = 19
cudaResViewFormatHalf2 = 20
cudaResViewFormatHalf4 = 21
cudaResViewFormatFloat1 = 22
cudaResViewFormatFloat2 = 23
cudaResViewFormatFloat4 = 24
cudaResViewFormatUnsignedBlockCompressed1 = 25
cudaResViewFormatUnsignedBlockCompressed2 = 26
cudaResViewFormatUnsignedBlockCompressed3 = 27
cudaResViewFormatUnsignedBlockCompressed4 = 28
cudaResViewFormatSignedBlockCompressed4 = 29
cudaResViewFormatUnsignedBlockCompressed5 = 30
cudaResViewFormatSignedBlockCompressed5 = 31
cudaResViewFormatUnsignedBlockCompressed6H = 32
cudaResViewFormatSignedBlockCompressed6H = 33
cudaResViewFormatUnsignedBlockCompressed7 = 34
enum cudaSharedCarveout
cudaSharedmemCarveoutDefault = 18446744073709551615
cudaSharedmemCarveoutMaxShared = 100
cudaSharedmemCarveoutMaxL1 = 0
enum cudaSharedMemConfig
cudaSharedMemBankSizeDefault = 0
cudaSharedMemBankSizeFourByte = 1
cudaSharedMemBankSizeEightByte = 2
enum cudaStreamCaptureMode
cudaStreamCaptureModeGlobal = 0
cudaStreamCaptureModeThreadLocal = 1
cudaStreamCaptureModeRelaxed = 2
enum cudaStreamCaptureStatus
cudaStreamCaptureStatusNone = 0
cudaStreamCaptureStatusActive = 1
cudaStreamCaptureStatusInvalidated = 2
enum cudaSurfaceBoundaryMode
cudaBoundaryModeZero = 0
cudaBoundaryModeClamp = 1
cudaBoundaryModeTrap = 2
enum cudaSurfaceFormatMode
cudaFormatModeForced = 0
cudaFormatModeAuto = 1
enum cudaTextureAddressMode
cudaAddressModeWrap = 0
cudaAddressModeClamp = 1
cudaAddressModeMirror = 2
cudaAddressModeBorder = 3
enum cudaTextureFilterMode
cudaFilterModePoint = 0
cudaFilterModeLinear = 1
enum cudaTextureReadMode
cudaReadModeElementType = 0
cudaReadModeNormalizedFloat = 1
struct CUuuid_st
struct cudaChannelFormatDesc
f
w
x
y
z
struct cudaDeviceProp
ECCEnabled
asyncEngineCount
canMapHostMemory
canUseHostPointerForRegisteredMem
clockRate
computeMode
computePreemptionSupported
concurrentKernels
concurrentManagedAccess
cooperativeLaunch
cooperativeMultiDeviceLaunch
deviceOverlap
directManagedMemAccessFromHost
globalL1CacheSupported
hostNativeAtomicSupported
integrated
isMultiGpuBoard
kernelExecTimeoutEnabled
l2CacheSize
localL1CacheSupported
luid
luidDeviceNodeMask
major
managedMemory
maxGridSize
maxSurface1D
maxSurface1DLayered
maxSurface2D
maxSurface2DLayered
maxSurface3D
maxSurfaceCubemap
maxSurfaceCubemapLayered
maxTexture1D
maxTexture1DLayered
maxTexture1DLinear
maxTexture1DMipmap
maxTexture2D
maxTexture2DGather
maxTexture2DLayered
maxTexture2DLinear
maxTexture2DMipmap
maxTexture3D
maxTexture3DAlt
maxTextureCubemap
maxTextureCubemapLayered
maxThreadsDim
maxThreadsPerBlock
maxThreadsPerMultiProcessor
memPitch
memoryBusWidth
memoryClockRate
minor
multiGpuBoardGroupID
multiProcessorCount
name
pageableMemoryAccess
pageableMemoryAccessUsesHostPageTables
pciBusID
pciDeviceID
pciDomainID
regsPerBlock
regsPerMultiprocessor
sharedMemPerBlock
sharedMemPerBlockOptin
sharedMemPerMultiprocessor
singleToDoublePrecisionPerfRatio
streamPrioritiesSupported
surfaceAlignment
tccDriver
textureAlignment
texturePitchAlignment
totalConstMem
totalGlobalMem
unifiedAddressing
uuid
warpSize
-struct cudaEglFrame
-struct cudaEglPlaneDesc
struct cudaExtent
depth
height
width
-struct cudaExternalMemoryBufferDesc
struct cudaExternalMemoryHandleDesc
-struct cudaExternalMemoryMipmappedArrayDesc
struct cudaExternalSemaphoreHandleDesc
struct cudaExternalSemaphoreSignalParams
struct cudaExternalSemaphoreWaitParams
struct cudaFuncAttributes
binaryVersion
cacheModeCA
constSizeBytes
localSizeBytes
maxDynamicSharedSizeBytes
maxThreadsPerBlock
numRegs
preferredShmemCarveout
ptxVersion
sharedSizeBytes
struct cudaHostNodeParams
fn
userData
struct cudaIpcEventHandle_t
struct cudaIpcMemHandle_t
struct cudaKernelNodeParams
blockDim
extra
func
gridDim
kernelParams
sharedMemBytes
struct cudaLaunchParams
args
blockDim
func
gridDim
sharedMem
stream
struct cudaMemcpy3DParms
dstArray
dstPos
dstPtr
extent
kind
srcArray
srcPos
srcPtr
struct cudaMemcpy3DPeerParms
dstArray
dstDevice
dstPos
dstPtr
extent
srcArray
srcDevice
srcPos
srcPtr
struct cudaMemsetParams
dst
elementSize
height
pitch
value
width
struct cudaPitchedPtr
pitch
ptr
xsize
ysize
struct cudaPointerAttributes
device
devicePointer
hostPointer
- isManaged
memoryType
type
struct cudaPos
x
y
z
struct cudaResourceDesc
array
desc
devPtr
height
mipmap
pitchInBytes
resType
sizeInBytes
width
struct cudaResourceViewDesc
depth
firstLayer
firstMipmapLevel
format
height
lastLayer
lastMipmapLevel
width
struct cudaTextureDesc
addressMode
borderColor
filterMode
maxAnisotropy
maxMipmapLevelClamp
minMipmapLevelClamp
mipmapFilterMode
mipmapLevelBias
normalizedCoords
readMode
sRGB
-struct surfaceReference
struct textureReference
addressMode
channelDesc
filterMode
maxAnisotropy
maxMipmapLevelClamp
minMipmapLevelClamp
mipmapFilterMode
mipmapLevelBias
normalized
sRGB
typedef const cudaArray * cudaArray_const_t;
typedef cudaArray * cudaArray_t;
-typedef CUeglStreamConnection_st * cudaEglStreamConnection;
typedef enum cudaError cudaError_t;
typedef CUevent_st * cudaEvent_t;
-typedef CUexternalMemory_st * cudaExternalMemory_t;
-typedef CUexternalSemaphore_st * cudaExternalSemaphore_t;
typedef CUgraphExec_st * cudaGraphExec_t;
typedef CUgraphNode_st * cudaGraphNode_t;
typedef CUgraph_st * cudaGraph_t;
typedef cudaGraphicsResource * cudaGraphicsResource_t;
typedef void(* cudaHostFn_t)(void* userData);
typedef const cudaMipmappedArray * cudaMipmappedArray_const_t;
typedef cudaMipmappedArray * cudaMipmappedArray_t;
typedef enum cudaOutputMode cudaOutputMode_t;
typedef CUstream_st * cudaStream_t;
typedef unsigned long long cudaSurfaceObject_t;
typedef unsigned long long cudaTextureObject_t;
82% (474 of 575 declarations available)
6.1. Device Management#
cudaError_t cudaChooseDevice(int* device, const cudaDeviceProp* prop);
cudaError_t cudaDeviceFlushGPUDirectRDMAWrites(cudaFlushGPUDirectRDMAWritesTarget target, cudaFlushGPUDirectRDMAWritesScope scope);
cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
__device__ cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
cudaError_t cudaDeviceGetByPCIBusId(int* device, const char* pciBusId);
cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache ** pCacheConfig);
__device__ cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache ** pCacheConfig);
cudaError_t cudaDeviceGetDefaultMemPool(cudaMemPool_t* memPool, int device);
cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
__device__ cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
cudaError_t cudaDeviceGetMemPool(cudaMemPool_t* memPool, int device);
-cudaError_t cudaDeviceGetNvSciSyncAttributes(void* nvSciSyncAttrList, int device, int flags);
cudaError_t cudaDeviceGetP2PAttribute(int* value, cudaDeviceP2PAttr attr, int srcDevice, int dstDevice);
cudaError_t cudaDeviceGetPCIBusId(char* pciBusId, int len, int device);
cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
__device__ cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
cudaError_t cudaDeviceGetStreamPriorityRange(int* leastPriority, int* greatestPriority);
cudaError_t cudaDeviceGetTexture1DLinearMaxWidth(size_t* maxWidthInElements, const cudaChannelFormatDesc* fmtDesc, int device);
cudaError_t cudaDeviceReset(void);
cudaError_t cudaDeviceSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaDeviceSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaDeviceSetMemPool(int device, cudaMemPool_t memPool);
cudaError_t cudaDeviceSetSharedMemConfig(cudaSharedMemConfig config);
cudaError_t cudaDeviceSynchronize(void);
-__device__ cudaError_t cudaDeviceSynchronize(void);
cudaError_t cudaGetDevice(int* device);
__device__ cudaError_t cudaGetDevice(int* device);
cudaError_t cudaGetDeviceCount(int* count);
__device__ cudaError_t cudaGetDeviceCount(int* count);
cudaError_t cudaGetDeviceFlags(unsigned int* flags);
cudaError_t cudaGetDeviceProperties(cudaDeviceProp* prop, int device);
cudaError_t cudaIpcCloseMemHandle(void* devPtr);
cudaError_t cudaIpcGetEventHandle(cudaIpcEventHandle_t* handle, cudaEvent_t event);
cudaError_t cudaIpcGetMemHandle(cudaIpcMemHandle_t* handle, void* devPtr);
cudaError_t cudaIpcOpenEventHandle(cudaEvent_t* event, cudaIpcEventHandle_t handle);
cudaError_t cudaIpcOpenMemHandle(void** devPtr, cudaIpcMemHandle_t handle, unsigned int flags);
cudaError_t cudaSetDevice(int device);
cudaError_t cudaSetDeviceFlags(unsigned int flags);
cudaError_t cudaSetValidDevices(int* device_arr, int len);
6.2. Thread Management [DEPRECATED]#
cudaError_t cudaThreadExit(void);
cudaError_t cudaThreadGetCacheConfig(cudaFuncCache ** pCacheConfig);
cudaError_t cudaThreadGetLimit(size_t* pValue, cudaLimit limit);
cudaError_t cudaThreadSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaThreadSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaThreadSynchronize(void);
6.3. Error Handling#
const char* cudaGetErrorName(cudaError_t error);
__device__ const char* cudaGetErrorName(cudaError_t error);
const char* cudaGetErrorString(cudaError_t error);
__device__ const char* cudaGetErrorString(cudaError_t error);
cudaError_t cudaGetLastError(void);
-__device__ cudaError_t cudaGetLastError(void);
cudaError_t cudaPeekAtLastError(void);
-__device__ cudaError_t cudaPeekAtLastError(void);
6.4. Stream Management#
typedef void(* cudaStreamCallback_t)(cudaStream_t stream, cudaError_t status, void* userData);
cudaError_t cudaCtxResetPersistingL2Cache(void);
cudaError_t cudaStreamAddCallback(cudaStream_t stream, cudaStreamCallback_t callback, void* userData, unsigned int flags);
cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, void* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
cudaError_t cudaStreamBeginCapture(cudaStream_t stream, cudaStreamCaptureMode mode);
cudaError_t cudaStreamCopyAttributes(cudaStream_t dst, cudaStream_t src);
cudaError_t cudaStreamCreate(cudaStream_t* pStream);
cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
-__device__ cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
cudaError_t cudaStreamCreateWithPriority(cudaStream_t* pStream, unsigned int flags, int priority);
cudaError_t cudaStreamDestroy(cudaStream_t stream);
-__device__ cudaError_t cudaStreamDestroy(cudaStream_t stream);
cudaError_t cudaStreamEndCapture(cudaStream_t stream, cudaGraph_t* pGraph);
cudaError_t cudaStreamGetAttribute(cudaStream_t hStream, cudaStreamAttrID attr, cudaStreamAttrValue* value_out);
-cudaError_t cudaStreamGetCaptureInfo(cudaStream_t stream, cudaStreamCaptureStatus ** pCaptureStatus, unsigned long long* pId);
-cudaError_t cudaStreamGetCaptureInfo_v2(cudaStream_t stream, cudaStreamCaptureStatus ** captureStatus_out, unsigned long long* id_out = 0, cudaGraph_t* graph_out = 0, const cudaGraphNode_t** dependencies_out = 0, size_t* numDependencies_out = 0);
cudaError_t cudaStreamGetFlags(cudaStream_t hStream, unsigned int* flags);
cudaError_t cudaStreamGetPriority(cudaStream_t hStream, int* priority);
cudaError_t cudaStreamIsCapturing(cudaStream_t stream, cudaStreamCaptureStatus ** pCaptureStatus);
cudaError_t cudaStreamQuery(cudaStream_t stream);
cudaError_t cudaStreamSetAttribute(cudaStream_t hStream, cudaStreamAttrID attr, const cudaStreamAttrValue* value);
cudaError_t cudaStreamSynchronize(cudaStream_t stream);
cudaError_t cudaStreamUpdateCaptureDependencies(cudaStream_t stream, cudaGraphNode_t* dependencies, size_t numDependencies, unsigned int flags = 0);
cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags = 0);
-__device__ cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags = 0);
cudaError_t cudaThreadExchangeStreamCaptureMode(cudaStreamCaptureMode ** mode);
6.5. Event Management#
cudaError_t cudaEventCreate(cudaEvent_t* event);
cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
-__device__ cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
cudaError_t cudaEventDestroy(cudaEvent_t event);
-__device__ cudaError_t cudaEventDestroy(cudaEvent_t event);
cudaError_t cudaEventElapsedTime(float* ms, cudaEvent_t start, cudaEvent_t end);
cudaError_t cudaEventQuery(cudaEvent_t event);
cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
-__device__ cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
cudaError_t cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream = 0, unsigned int flags = 0);
cudaError_t cudaEventSynchronize(cudaEvent_t event);
6.6. External Resource Interoperability#
-cudaError_t cudaDestroyExternalMemory(cudaExternalMemory_t extMem);
-cudaError_t cudaDestroyExternalSemaphore(cudaExternalSemaphore_t extSem);
-cudaError_t cudaExternalMemoryGetMappedBuffer(void** devPtr, cudaExternalMemory_t extMem, const cudaExternalMemoryBufferDesc* bufferDesc);
-cudaError_t cudaExternalMemoryGetMappedMipmappedArray(cudaMipmappedArray_t* mipmap, cudaExternalMemory_t extMem, const cudaExternalMemoryMipmappedArrayDesc* mipmapDesc);
-cudaError_t cudaImportExternalMemory(cudaExternalMemory_t* extMem_out, const cudaExternalMemoryHandleDesc* memHandleDesc);
-cudaError_t cudaImportExternalSemaphore(cudaExternalSemaphore_t* extSem_out, const cudaExternalSemaphoreHandleDesc* semHandleDesc);
-cudaError_t cudaSignalExternalSemaphoresAsync(const cudaExternalSemaphore_t* extSemArray, const cudaExternalSemaphoreSignalParams* paramsArray, unsigned int numExtSems, cudaStream_t stream = 0);
-cudaError_t cudaWaitExternalSemaphoresAsync(const cudaExternalSemaphore_t* extSemArray, const cudaExternalSemaphoreWaitParams* paramsArray, unsigned int numExtSems, cudaStream_t stream = 0);
6.7. Execution Control#
cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
-__device__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
cudaError_t cudaFuncSetAttribute(const void* func, cudaFuncAttribute attr, int value);
cudaError_t cudaFuncSetCacheConfig(const void* func, cudaFuncCache cacheConfig);
cudaError_t cudaFuncSetSharedMemConfig(const void* func, cudaSharedMemConfig config);
__device__ void* cudaGetParameterBuffer(size_t alignment, size_t size);
-__device__ void* cudaGetParameterBufferV2(void* func, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize);
cudaError_t cudaLaunchCooperativeKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
-cudaError_t cudaLaunchCooperativeKernelMultiDevice(cudaLaunchParams* launchParamsList, unsigned int numDevices, unsigned int flags = 0);
cudaError_t cudaLaunchHostFunc(cudaStream_t stream, cudaHostFn_t fn, void* userData);
cudaError_t cudaLaunchKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
cudaError_t cudaLaunchKernelExC(const cudaLaunchConfig_t* config, const void* func, void** args);
cudaError_t cudaSetDoubleForDevice(double* d);
cudaError_t cudaSetDoubleForHost(double* d);
6.8. Occupancy#
cudaError_t cudaOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, const void* func, int numBlocks, int blockSize);
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
-__device__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
-cudaError_t cudaOccupancyMaxActiveClusters(int* numClusters, const void* func, const cudaLaunchConfig_t* launchConfig);
-cudaError_t cudaOccupancyMaxPotentialClusterSize(int* clusterSize, const void* func, const cudaLaunchConfig_t* launchConfig);
6.9. Memory Management#
cudaError_t cudaArrayGetInfo(cudaChannelFormatDesc* desc, cudaExtent* extent, unsigned int* flags, cudaArray_t array);
-cudaError_t cudaArrayGetMemoryRequirements(cudaArrayMemoryRequirements* memoryRequirements, cudaArray_t array, int device);
-cudaError_t cudaArrayGetPlane(cudaArray_t* pPlaneArray, cudaArray_t hArray, unsigned int planeIdx);
-cudaError_t cudaArrayGetSparseProperties(cudaArraySparseProperties* sparseProperties, cudaArray_t array);
cudaError_t cudaFree(void* devPtr);
__device__ cudaError_t cudaFree(void* devPtr);
cudaError_t cudaFreeArray(cudaArray_t array);
cudaError_t cudaFreeHost(void* ptr);
cudaError_t cudaFreeMipmappedArray(cudaMipmappedArray_t mipmappedArray);
-cudaError_t cudaGetMipmappedArrayLevel(cudaArray_t* levelArray, cudaMipmappedArray_const_t mipmappedArray, unsigned int level);
cudaError_t cudaGetSymbolAddress(void** devPtr, const void* symbol);
cudaError_t cudaGetSymbolSize(size_t* size, const void* symbol);
cudaError_t cudaHostAlloc(void** pHost, size_t size, unsigned int flags);
cudaError_t cudaHostGetDevicePointer(void** pDevice, void* pHost, unsigned int flags);
cudaError_t cudaHostGetFlags(unsigned int* pFlags, void* pHost);
cudaError_t cudaHostRegister(void* ptr, size_t size, unsigned int flags);
cudaError_t cudaHostUnregister(void* ptr);
cudaError_t cudaMalloc(void** devPtr, size_t size);
__device__ cudaError_t cudaMalloc(void** devPtr, size_t size);
cudaError_t cudaMalloc3D(cudaPitchedPtr* pitchedDevPtr, cudaExtent extent);
cudaError_t cudaMalloc3DArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int flags = 0);
cudaError_t cudaMallocArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, size_t width, size_t height = 0, unsigned int flags = 0);
cudaError_t cudaMallocHost(void** ptr, size_t size);
cudaError_t cudaMallocManaged(void** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
cudaError_t cudaMallocMipmappedArray(cudaMipmappedArray_t* mipmappedArray, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int numLevels, unsigned int flags = 0);
cudaError_t cudaMallocPitch(void** devPtr, size_t* pitch, size_t width, size_t height);
cudaError_t cudaMemAdvise(const void* devPtr, size_t count, cudaMemoryAdvise advice, int device);
cudaError_t cudaMemGetInfo(size_t* free, size_t* total);
cudaError_t cudaMemPrefetchAsync(const void* devPtr, size_t count, int dstDevice, cudaStream_t stream = 0);
cudaError_t cudaMemRangeGetAttribute(void* data, size_t dataSize, cudaMemRangeAttribute attribute, const void* devPtr, size_t count);
-cudaError_t cudaMemRangeGetAttributes(void** data, size_t* dataSizes, cudaMemRangeAttribute ** attributes, size_t numAttributes, const void* devPtr, size_t count);
cudaError_t cudaMemcpy(void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2D(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
-cudaError_t cudaMemcpy2DArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t width, size_t height, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DFromArray(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DFromArrayAsync(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy3D(const cudaMemcpy3DParms* p);
cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
cudaError_t cudaMemcpy3DPeer(const cudaMemcpy3DPeerParms* p);
cudaError_t cudaMemcpy3DPeerAsync(const cudaMemcpy3DPeerParms* p, cudaStream_t stream = 0);
cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyFromSymbol(void* dst, const void* symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyPeer(void* dst, int dstDevice, const void* src, int srcDevice, size_t count);
cudaError_t cudaMemcpyPeerAsync(void* dst, int dstDevice, const void* src, int srcDevice, size_t count, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToSymbol(const void* symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
cudaError_t cudaMemcpyToSymbolAsync(const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemset(void* devPtr, int value, size_t count);
cudaError_t cudaMemset2D(void* devPtr, size_t pitch, int value, size_t width, size_t height);
cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
cudaError_t cudaMemset3D(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent);
cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
-cudaError_t cudaMipmappedArrayGetMemoryRequirements(cudaArrayMemoryRequirements* memoryRequirements, cudaMipmappedArray_t mipmap, int device);
-cudaError_t cudaMipmappedArrayGetSparseProperties(cudaArraySparseProperties* sparseProperties, cudaMipmappedArray_t mipmap);
cudaExtent make_cudaExtent(size_t w, size_t h, size_t d);
cudaPitchedPtr make_cudaPitchedPtr(void* d, size_t p, size_t xsz, size_t ysz);
cudaPos make_cudaPos(size_t x, size_t y, size_t z);
6.10. Memory Management [DEPRECATED]#
-cudaError_t cudaMemcpyArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t count, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
-cudaError_t cudaMemcpyFromArray(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind);
-cudaError_t cudaMemcpyFromArrayAsync(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpyToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
6.11. Stream Ordered Memory Allocator#
cudaError_t cudaFreeAsync(void* devPtr, cudaStream_t hStream);
cudaError_t cudaMallocAsync(void** devPtr, size_t size, cudaStream_t hStream);
cudaError_t cudaMallocFromPoolAsync(void** ptr, size_t size, cudaMemPool_t memPool, cudaStream_t stream);
cudaError_t cudaMemPoolCreate(cudaMemPool_t* memPool, const cudaMemPoolProps* poolProps);
cudaError_t cudaMemPoolDestroy(cudaMemPool_t memPool);
cudaError_t cudaMemPoolExportPointer(cudaMemPoolPtrExportData* exportData, void* ptr);
cudaError_t cudaMemPoolExportToShareableHandle(void* shareableHandle, cudaMemPool_t memPool, cudaMemAllocationHandleType handleType, unsigned int flags);
cudaError_t cudaMemPoolGetAccess(cudaMemAccessFlags ** flags, cudaMemPool_t memPool, cudaMemLocation* location);
cudaError_t cudaMemPoolGetAttribute(cudaMemPool_t memPool, cudaMemPoolAttr attr, void* value);
cudaError_t cudaMemPoolImportFromShareableHandle(cudaMemPool_t* memPool, void* shareableHandle, cudaMemAllocationHandleType handleType, unsigned int flags);
cudaError_t cudaMemPoolImportPointer(void** ptr, cudaMemPool_t memPool, cudaMemPoolPtrExportData* exportData);
cudaError_t cudaMemPoolSetAccess(cudaMemPool_t memPool, const cudaMemAccessDesc* descList, size_t count);
cudaError_t cudaMemPoolSetAttribute(cudaMemPool_t memPool, cudaMemPoolAttr attr, void* value);
cudaError_t cudaMemPoolTrimTo(cudaMemPool_t memPool, size_t minBytesToKeep);
6.12. Unified Addressing#
cudaError_t cudaPointerGetAttributes(cudaPointerAttributes* attributes, const void* ptr);
6.13. Peer Device Memory Access#
cudaError_t cudaDeviceCanAccessPeer(int* canAccessPeer, int device, int peerDevice);
cudaError_t cudaDeviceDisablePeerAccess(int peerDevice);
cudaError_t cudaDeviceEnablePeerAccess(int peerDevice, unsigned int flags);
6.14. OpenGL Interoperability#
enum cudaGLDeviceList
cudaGLDeviceListAll = 1
cudaGLDeviceListCurrentFrame = 2
cudaGLDeviceListNextFrame = 3
cudaError_t cudaGLGetDevices(unsigned int* pCudaDeviceCount, int* pCudaDevices, unsigned int cudaDeviceCount, cudaGLDeviceList deviceList);
cudaError_t cudaGraphicsGLRegisterBuffer(cudaGraphicsResource** resource, GLuint buffer, unsigned int flags);
cudaError_t cudaGraphicsGLRegisterImage(cudaGraphicsResource** resource, GLuint image, GLenum target, unsigned int flags);
-cudaError_t cudaWGLGetDevice(int* device, HGPUNV hGpu);
6.15. OpenGL Interoperability [DEPRECATED]#
enum cudaGLMapFlags
cudaGLMapFlagsNone = 0
cudaGLMapFlagsReadOnly = 1
cudaGLMapFlagsWriteDiscard = 2
cudaError_t cudaGLMapBufferObject(void** devPtr, GLuint bufObj);
cudaError_t cudaGLMapBufferObjectAsync(void** devPtr, GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLRegisterBufferObject(GLuint bufObj);
cudaError_t cudaGLSetBufferObjectMapFlags(GLuint bufObj, unsigned int flags);
-cudaError_t cudaGLSetGLDevice(int device);
cudaError_t cudaGLUnmapBufferObject(GLuint bufObj);
cudaError_t cudaGLUnmapBufferObjectAsync(GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLUnregisterBufferObject(GLuint bufObj);
6.16. Direct3D 9 Interoperability#
-Windows APIs are currently unsupported
6.17. Direct3D 9 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
6.18. Direct3D 10 Interoperability#
-Windows APIs are currently unsupported
6.19. Direct3D 10 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
6.20. Direct3D 11 Interoperability#
-Windows APIs are currently unsupported
6.21. Direct3D 11 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
6.22. VDPAU Interoperability#
-VDPAU is currently unsupported
6.23. EGL Interoperability#
-EGL is currently unsupported
6.24. Graphics Interoperability#
cudaError_t cudaGraphicsMapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
-cudaError_t cudaGraphicsResourceGetMappedMipmappedArray(cudaMipmappedArray_t* mipmappedArray, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceGetMappedPointer(void** devPtr, size_t* size, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceSetMapFlags(cudaGraphicsResource_t resource, unsigned int flags);
cudaError_t cudaGraphicsSubResourceGetMappedArray(cudaArray_t* array, cudaGraphicsResource_t resource, unsigned int arrayIndex, unsigned int mipLevel);
cudaError_t cudaGraphicsUnmapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
cudaError_t cudaGraphicsUnregisterResource(cudaGraphicsResource_t resource);
6.25. Texture Reference Management [DEPRECATED]#
-cudaError_t cudaBindTexture(size_t* offset, const textureReference* texref, const void* devPtr, const cudaChannelFormatDesc* desc, size_t size = UINT_MAX);
cudaError_t cudaBindTexture2D(size_t* offset, const textureReference* texref, const void* devPtr, const cudaChannelFormatDesc* desc, size_t width, size_t height, size_t pitch);
cudaError_t cudaBindTextureToArray(const textureReference* texref, cudaArray_const_t array, const cudaChannelFormatDesc* desc);
cudaError_t cudaBindTextureToMipmappedArray(const textureReference* texref, cudaMipmappedArray_const_t mipmappedArray, const cudaChannelFormatDesc* desc);
cudaError_t cudaGetTextureAlignmentOffset(size_t* offset, const textureReference* texref);
cudaError_t cudaGetTextureReference(const textureReference** texref, const void* symbol);
cudaError_t cudaUnbindTexture(const textureReference* texref);
6.26. Surface Reference Management [DEPRECATED]#
-cudaError_t cudaBindSurfaceToArray(const surfaceReference* surfref, cudaArray_const_t array, const cudaChannelFormatDesc* desc);
-cudaError_t cudaGetSurfaceReference(const surfaceReference** surfref, const void* symbol);
6.27. Texture Object Management#
cudaChannelFormatDesc cudaCreateChannelDesc(int x, int y, int z, int w, cudaChannelFormatKind f);
cudaError_t cudaCreateTextureObject(cudaTextureObject_t* pTexObject, const cudaResourceDesc* pResDesc, const cudaTextureDesc* pTexDesc, const cudaResourceViewDesc* pResViewDesc);
-cudaError_t cudaCreateTextureObject_v2(cudaTextureObject_t* pTexObject, const cudaResourceDesc* pResDesc, const cudaTextureDesc_v2* pTexDesc, const cudaResourceViewDesc* pResViewDesc);
cudaError_t cudaDestroyTextureObject(cudaTextureObject_t texObject);
cudaError_t cudaGetChannelDesc(cudaChannelFormatDesc* desc, cudaArray_const_t array);
cudaError_t cudaGetTextureObjectResourceDesc(cudaResourceDesc* pResDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectResourceViewDesc(cudaResourceViewDesc* pResViewDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectTextureDesc(cudaTextureDesc* pTexDesc, cudaTextureObject_t texObject);
-cudaError_t cudaGetTextureObjectTextureDesc_v2(cudaTextureDesc_v2* pTexDesc, cudaTextureObject_t texObject);
6.28. Surface Object Management#
cudaError_t cudaCreateSurfaceObject(cudaSurfaceObject_t* pSurfObject, const cudaResourceDesc* pResDesc);
cudaError_t cudaDestroySurfaceObject(cudaSurfaceObject_t surfObject);
cudaError_t cudaGetSurfaceObjectResourceDesc(cudaResourceDesc* pResDesc, cudaSurfaceObject_t surfObject);
6.29. Version Management#
cudaError_t cudaDriverGetVersion(int* driverVersion);
cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
__device__ cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
6.30. Graph Management#
-cudaError_t cudaDeviceGetGraphMemAttribute(int device, cudaGraphMemAttributeType attr, void* value);
-cudaError_t cudaDeviceGraphMemTrim(int device);
-cudaError_t cudaDeviceSetGraphMemAttribute(int device, cudaGraphMemAttributeType attr, void* value);
cudaError_t cudaGraphAddChildGraphNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaGraph_t childGraph);
cudaError_t cudaGraphAddDependencies(cudaGraph_t graph, const cudaGraphNode_t* from, const cudaGraphNode_t* to, size_t numDependencies);
cudaError_t cudaGraphAddEmptyNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies);
cudaError_t cudaGraphAddEventRecordNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaEvent_t event);
cudaError_t cudaGraphAddEventWaitNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaEvent_t event);
-cudaError_t cudaGraphAddExternalSemaphoresSignalNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaExternalSemaphoreSignalNodeParams* nodeParams);
-cudaError_t cudaGraphAddExternalSemaphoresWaitNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaExternalSemaphoreWaitNodeParams* nodeParams);
cudaError_t cudaGraphAddHostNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphAddKernelNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphAddMemAllocNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaMemAllocNodeParams* nodeParams);
cudaError_t cudaGraphAddMemFreeNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dptr);
cudaError_t cudaGraphAddMemcpyNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaMemcpy3DParms* pCopyParams);
cudaError_t cudaGraphAddMemcpyNode1D(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaGraphAddMemcpyNodeFromSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphAddMemcpyNodeToSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphAddMemsetNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaMemsetParams* pMemsetParams);
cudaError_t cudaGraphChildGraphNodeGetGraph(cudaGraphNode_t node, cudaGraph_t* pGraph);
cudaError_t cudaGraphClone(cudaGraph_t* pGraphClone, cudaGraph_t originalGraph);
cudaError_t cudaGraphCreate(cudaGraph_t* pGraph, unsigned int flags);
cudaError_t cudaGraphDebugDotPrint(cudaGraph_t graph, const char* path, unsigned int flags);
cudaError_t cudaGraphDestroy(cudaGraph_t graph);
cudaError_t cudaGraphDestroyNode(cudaGraphNode_t node);
cudaError_t cudaGraphEventRecordNodeGetEvent(cudaGraphNode_t node, cudaEvent_t* event_out);
cudaError_t cudaGraphEventRecordNodeSetEvent(cudaGraphNode_t node, cudaEvent_t event);
cudaError_t cudaGraphEventWaitNodeGetEvent(cudaGraphNode_t node, cudaEvent_t* event_out);
cudaError_t cudaGraphEventWaitNodeSetEvent(cudaGraphNode_t node, cudaEvent_t event);
cudaError_t cudaGraphExecChildGraphNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, cudaGraph_t childGraph);
cudaError_t cudaGraphExecDestroy(cudaGraphExec_t graphExec);
cudaError_t cudaGraphExecEventRecordNodeSetEvent(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, cudaEvent_t event);
cudaError_t cudaGraphExecEventWaitNodeSetEvent(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, cudaEvent_t event);
-cudaError_t cudaGraphExecExternalSemaphoresSignalNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, const cudaExternalSemaphoreSignalNodeParams* nodeParams);
-cudaError_t cudaGraphExecExternalSemaphoresWaitNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, const cudaExternalSemaphoreWaitNodeParams* nodeParams);
cudaError_t cudaGraphExecHostNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphExecKernelNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphExecMemcpyNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphExecMemcpyNodeSetParams1D(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaGraphExecMemcpyNodeSetParamsFromSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphExecMemcpyNodeSetParamsToSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphExecMemsetNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaMemsetParams* pNodeParams);
-cudaError_t cudaGraphExecUpdate(cudaGraphExec_t hGraphExec, cudaGraph_t hGraph, cudaGraphNode_t* hErrorNode_out, cudaGraphExecUpdateResult ** updateResult_out);
-cudaError_t cudaGraphExternalSemaphoresSignalNodeGetParams(cudaGraphNode_t hNode, cudaExternalSemaphoreSignalNodeParams* params_out);
-cudaError_t cudaGraphExternalSemaphoresSignalNodeSetParams(cudaGraphNode_t hNode, const cudaExternalSemaphoreSignalNodeParams* nodeParams);
-cudaError_t cudaGraphExternalSemaphoresWaitNodeGetParams(cudaGraphNode_t hNode, cudaExternalSemaphoreWaitNodeParams* params_out);
-cudaError_t cudaGraphExternalSemaphoresWaitNodeSetParams(cudaGraphNode_t hNode, const cudaExternalSemaphoreWaitNodeParams* nodeParams);
cudaError_t cudaGraphGetEdges(cudaGraph_t graph, cudaGraphNode_t* from, cudaGraphNode_t* to, size_t* numEdges);
cudaError_t cudaGraphGetNodes(cudaGraph_t graph, cudaGraphNode_t* nodes, size_t* numNodes);
cudaError_t cudaGraphGetRootNodes(cudaGraph_t graph, cudaGraphNode_t* pRootNodes, size_t* pNumRootNodes);
cudaError_t cudaGraphHostNodeGetParams(cudaGraphNode_t node, cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphHostNodeSetParams(cudaGraphNode_t node, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphInstantiate(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, cudaGraphNode_t* pErrorNode, char* pLogBuffer, size_t bufferSize);
-cudaError_t cudaGraphInstantiateWithFlags(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, unsigned long long flags);
cudaError_t cudaGraphKernelNodeCopyAttributes(cudaGraphNode_t hSrc, cudaGraphNode_t hDst);
cudaError_t cudaGraphKernelNodeGetAttribute(cudaGraphNode_t hNode, cudaKernelNodeAttrID attr, cudaKernelNodeAttrValue* value_out);
cudaError_t cudaGraphKernelNodeGetParams(cudaGraphNode_t node, cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphKernelNodeSetAttribute(cudaGraphNode_t hNode, cudaKernelNodeAttrID attr, const cudaKernelNodeAttrValue* value);
cudaError_t cudaGraphKernelNodeSetParams(cudaGraphNode_t node, const cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream);
cudaError_t cudaGraphMemAllocNodeGetParams(cudaGraphNode_t node, cudaMemAllocNodeParams* params_out);
cudaError_t cudaGraphMemFreeNodeGetParams(cudaGraphNode_t node, void* dptr_out);
cudaError_t cudaGraphMemcpyNodeGetParams(cudaGraphNode_t node, cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphMemcpyNodeSetParams(cudaGraphNode_t node, const cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphMemcpyNodeSetParams1D(cudaGraphNode_t node, void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaGraphMemcpyNodeSetParamsFromSymbol(cudaGraphNode_t node, void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphMemcpyNodeSetParamsToSymbol(cudaGraphNode_t node, const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphMemsetNodeGetParams(cudaGraphNode_t node, cudaMemsetParams* pNodeParams);
cudaError_t cudaGraphMemsetNodeSetParams(cudaGraphNode_t node, const cudaMemsetParams* pNodeParams);
cudaError_t cudaGraphNodeFindInClone(cudaGraphNode_t* pNode, cudaGraphNode_t originalNode, cudaGraph_t clonedGraph);
cudaError_t cudaGraphNodeGetDependencies(cudaGraphNode_t node, cudaGraphNode_t* pDependencies, size_t* pNumDependencies);
cudaError_t cudaGraphNodeGetDependentNodes(cudaGraphNode_t node, cudaGraphNode_t* pDependentNodes, size_t* pNumDependentNodes);
cudaError_t cudaGraphNodeGetEnabled(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, unsigned int* isEnabled);
cudaError_t cudaGraphNodeGetType(cudaGraphNode_t node, cudaGraphNodeType ** pType);
cudaError_t cudaGraphNodeSetEnabled(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, unsigned int isEnabled);
cudaError_t cudaGraphReleaseUserObject(cudaGraph_t graph, cudaUserObject_t object, unsigned int count = 1);
cudaError_t cudaGraphRemoveDependencies(cudaGraph_t graph, const cudaGraphNode_t* from, const cudaGraphNode_t* to, size_t numDependencies);
cudaError_t cudaGraphRetainUserObject(cudaGraph_t graph, cudaUserObject_t object, unsigned int count = 1, unsigned int flags = 0);
cudaError_t cudaGraphUpload(cudaGraphExec_t graphExec, cudaStream_t stream);
cudaError_t cudaUserObjectCreate(cudaUserObject_t* object_out, void* ptr, cudaHostFn_t destroy, unsigned int initialRefcount, unsigned int flags);
cudaError_t cudaUserObjectRelease(cudaUserObject_t object, unsigned int count = 1);
cudaError_t cudaUserObjectRetain(cudaUserObject_t object, unsigned int count = 1);
6.31. Driver Entry Point Access#
cudaError_t cudaGetDriverEntryPoint(const char* symbol, void** funcPtr, unsigned long long flags);
6.32. C++ API Routines#
-class __cudaOccupancyB2DHelper
-template < class T, int dim >__host__ cudaError_t cudaBindSurfaceToArray(const surface < T, dim > & surf, cudaArray_const_t array);
-template < class T, int dim >__host__ cudaError_t cudaBindSurfaceToArray(const surface < T, dim > & surf, cudaArray_const_t array, const cudaChannelFormatDesc& desc);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, size_t size = UINT_MAX);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, const cudaChannelFormatDesc& desc, size_t size = UINT_MAX);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture2D(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, size_t width, size_t height, size_t pitch);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTexture2D(size_t* offset, const texture < T, dim, readMode > & tex, const void* devPtr, const cudaChannelFormatDesc& desc, size_t width, size_t height, size_t pitch);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToArray(const texture < T, dim, readMode > & tex, cudaArray_const_t array);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToArray(const texture < T, dim, readMode > & tex, cudaArray_const_t array, const cudaChannelFormatDesc& desc);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToMipmappedArray(const texture < T, dim, readMode > & tex, cudaMipmappedArray_const_t mipmappedArray);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaBindTextureToMipmappedArray(const texture < T, dim, readMode > & tex, cudaMipmappedArray_const_t mipmappedArray, const cudaChannelFormatDesc& desc);
template < class T >__host__ cudaChannelFormatDesc cudaCreateChannelDesc(void);
cudaError_t cudaEventCreate(cudaEvent_t* event, unsigned int flags);
template < class T >__host__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, T* entry);
template < class T >__host__ cudaError_t cudaFuncSetAttribute(T* entry, cudaFuncAttribute attr, int value);
template < class T >__host__ cudaError_t cudaFuncSetCacheConfig(T* func, cudaFuncCache cacheConfig);
template < class T >__host__ cudaError_t cudaGetSymbolAddress(void** devPtr, const T& symbol);
template < class T >__host__ cudaError_t cudaGetSymbolSize(size_t* size, const T& symbol);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaGetTextureAlignmentOffset(size_t* offset, const texture < T, dim, readMode > & tex);
template < class T >__host__ cudaError_t cudaGraphAddMemcpyNodeFromSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dst, const T& symbol, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphAddMemcpyNodeToSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const T& symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphExecMemcpyNodeSetParamsFromSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, void* dst, const T& symbol, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphExecMemcpyNodeSetParamsToSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const T& symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphMemcpyNodeSetParamsFromSymbol(cudaGraphNode_t node, void* dst, const T& symbol, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphMemcpyNodeSetParamsToSymbol(cudaGraphNode_t node, const T& symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaLaunchCooperativeKernel(const T* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem = 0, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaLaunchKernel(const T* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem = 0, cudaStream_t stream = 0);
template < typename... ExpTypes, typename... ActTypes >__host__ cudaError_t cudaLaunchKernelEx(const cudaLaunchConfig_t* config, void (*kernel)(ExpTypes...), ActTypes &&... args);
cudaError_t cudaMallocAsync(void** ptr, size_t size, cudaMemPool_t memPool, cudaStream_t stream);
cudaError_t cudaMallocHost(void** ptr, size_t size, unsigned int flags);
template < class T >__host__ cudaError_t cudaMallocManaged(T** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
template < class T >__host__ cudaError_t cudaMemcpyFromSymbol(void* dst, const T& symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
template < class T >__host__ cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const T& symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaMemcpyToSymbol(const T& symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
template < class T >__host__ cudaError_t cudaMemcpyToSymbolAsync(const T& symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice, cudaStream_t stream = 0);
-template < class T >__host__ cudaError_t cudaOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, T func, int numBlocks, int blockSize);
template < class T >__host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, T func, int blockSize, size_t dynamicSMemSize);
template < class T >__host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, T func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
-template < class T >__host__ cudaError_t cudaOccupancyMaxActiveClusters(int* numClusters, T* func, const cudaLaunchConfig_t* config);
template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSize(int* minGridSize, int* blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0);
template < typename UnaryFunction, class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMem(int* minGridSize, int* blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0);
template < typename UnaryFunction, class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(int* minGridSize, int* blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0, unsigned int flags = 0);
template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeWithFlags(int* minGridSize, int* blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0, unsigned int flags = 0);
-template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialClusterSize(int* clusterSize, T* func, const cudaLaunchConfig_t* config);
template < class T >__host__ cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, T* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
template < class T, int dim, enum cudaTextureReadMode readMode >__host__ cudaError_t cudaUnbindTexture(const texture < T, dim, readMode > & tex);
6.33. Interactions with the CUDA Driver API#
cudaError_t cudaGetFuncBySymbol(cudaFunction_t* functionPtr, const void* symbolPtr);
6.34. Profiler Control [DEPRECATED]#
cudaError_t cudaProfilerInitialize(const char* configFile, const char* outputFile, cudaOutputMode_t outputMode);
6.35. Profiler Control#
cudaError_t cudaProfilerStart(void);
cudaError_t cudaProfilerStop(void);
6.36. Data types used by CUDA Runtime#
-#define CUDA_EGL_MAX_PLANES
#define CUDA_IPC_HANDLE_SIZE
#define cudaArrayColorAttachment
#define cudaArrayCubemap
#define cudaArrayDefault
#define cudaArrayDeferredMapping
#define cudaArrayLayered
#define cudaArraySparse
#define cudaArraySparsePropertiesSingleMipTail
#define cudaArraySurfaceLoadStore
#define cudaArrayTextureGather
#define cudaCooperativeLaunchMultiDeviceNoPostSync
#define cudaCooperativeLaunchMultiDeviceNoPreSync
#define cudaCpuDeviceId
#define cudaDeviceBlockingSync
#define cudaDeviceLmemResizeToMax
#define cudaDeviceMapHost
#define cudaDeviceMask
#define cudaDevicePropDontCare
#define cudaDeviceScheduleAuto
#define cudaDeviceScheduleBlockingSync
#define cudaDeviceScheduleMask
#define cudaDeviceScheduleSpin
#define cudaDeviceScheduleYield
#define cudaEventBlockingSync
#define cudaEventDefault
#define cudaEventDisableTiming
#define cudaEventInterprocess
#define cudaEventRecordDefault
#define cudaEventRecordExternal
#define cudaEventWaitDefault
#define cudaEventWaitExternal
-#define cudaExternalMemoryDedicated
-#define cudaExternalSemaphoreSignalSkipNvSciBufMemSync
-#define cudaExternalSemaphoreWaitSkipNvSciBufMemSync
#define cudaHostAllocDefault
#define cudaHostAllocMapped
#define cudaHostAllocPortable
#define cudaHostAllocWriteCombined
#define cudaHostRegisterDefault
#define cudaHostRegisterIoMemory
#define cudaHostRegisterMapped
#define cudaHostRegisterPortable
#define cudaHostRegisterReadOnly
#define cudaInvalidDeviceId
#define cudaIpcMemLazyEnablePeerAccess
#define cudaKernelNodeAttrID
#define cudaKernelNodeAttrValue
#define cudaMemAttachGlobal
#define cudaMemAttachHost
#define cudaMemAttachSingle
-#define cudaNvSciSyncAttrSignal
-#define cudaNvSciSyncAttrWait
#define cudaOccupancyDefault
#define cudaOccupancyDisableCachingOverride
#define cudaPeerAccessDefault
#define cudaStreamAttrID
#define cudaStreamAttrValue
#define cudaStreamDefault
#define cudaStreamLegacy
#define cudaStreamNonBlocking
#define cudaStreamPerThread
enum cudaAccessProperty
cudaAccessPropertyNormal = 0
cudaAccessPropertyStreaming = 1
cudaAccessPropertyPersisting = 2
-enum cudaCGScope
enum cudaChannelFormatKind
cudaChannelFormatKindSigned = 0
cudaChannelFormatKindUnsigned = 1
cudaChannelFormatKindFloat = 2
cudaChannelFormatKindNone = 3
cudaChannelFormatKindNV12 = 4
cudaChannelFormatKindUnsignedNormalized8X1 = 5
cudaChannelFormatKindUnsignedNormalized8X2 = 6
cudaChannelFormatKindUnsignedNormalized8X4 = 7
cudaChannelFormatKindUnsignedNormalized16X1 = 8
cudaChannelFormatKindUnsignedNormalized16X2 = 9
cudaChannelFormatKindUnsignedNormalized16X4 = 10
cudaChannelFormatKindSignedNormalized8X1 = 11
cudaChannelFormatKindSignedNormalized8X2 = 12
cudaChannelFormatKindSignedNormalized8X4 = 13
cudaChannelFormatKindSignedNormalized16X1 = 14
cudaChannelFormatKindSignedNormalized16X2 = 15
cudaChannelFormatKindSignedNormalized16X4 = 16
cudaChannelFormatKindUnsignedBlockCompressed1 = 17
cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18
cudaChannelFormatKindUnsignedBlockCompressed2 = 19
cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20
cudaChannelFormatKindUnsignedBlockCompressed3 = 21
cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22
cudaChannelFormatKindUnsignedBlockCompressed4 = 23
cudaChannelFormatKindSignedBlockCompressed4 = 24
cudaChannelFormatKindUnsignedBlockCompressed5 = 25
cudaChannelFormatKindSignedBlockCompressed5 = 26
cudaChannelFormatKindUnsignedBlockCompressed6H = 27
cudaChannelFormatKindSignedBlockCompressed6H = 28
cudaChannelFormatKindUnsignedBlockCompressed7 = 29
cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30
enum cudaClusterSchedulingPolicy
cudaClusterSchedulingPolicyDefault = 0
cudaClusterSchedulingPolicySpread = 1
cudaClusterSchedulingPolicyLoadBalancing = 2
enum cudaComputeMode
cudaComputeModeDefault = 0
cudaComputeModeExclusive = 1
cudaComputeModeProhibited = 2
cudaComputeModeExclusiveProcess = 3
enum cudaDeviceAttr
cudaDevAttrMaxThreadsPerBlock = 1
cudaDevAttrMaxBlockDimX = 2
cudaDevAttrMaxBlockDimY = 3
cudaDevAttrMaxBlockDimZ = 4
cudaDevAttrMaxGridDimX = 5
cudaDevAttrMaxGridDimY = 6
cudaDevAttrMaxGridDimZ = 7
cudaDevAttrMaxSharedMemoryPerBlock = 8
cudaDevAttrTotalConstantMemory = 9
cudaDevAttrWarpSize = 10
cudaDevAttrMaxPitch = 11
cudaDevAttrMaxRegistersPerBlock = 12
cudaDevAttrClockRate = 13
cudaDevAttrTextureAlignment = 14
cudaDevAttrGpuOverlap = 15
cudaDevAttrMultiProcessorCount = 16
cudaDevAttrKernelExecTimeout = 17
cudaDevAttrIntegrated = 18
cudaDevAttrCanMapHostMemory = 19
cudaDevAttrComputeMode = 20
cudaDevAttrMaxTexture1DWidth = 21
cudaDevAttrMaxTexture2DWidth = 22
cudaDevAttrMaxTexture2DHeight = 23
cudaDevAttrMaxTexture3DWidth = 24
cudaDevAttrMaxTexture3DHeight = 25
cudaDevAttrMaxTexture3DDepth = 26
cudaDevAttrMaxTexture2DLayeredWidth = 27
cudaDevAttrMaxTexture2DLayeredHeight = 28
cudaDevAttrMaxTexture2DLayeredLayers = 29
cudaDevAttrSurfaceAlignment = 30
cudaDevAttrConcurrentKernels = 31
cudaDevAttrEccEnabled = 32
cudaDevAttrPciBusId = 33
cudaDevAttrPciDeviceId = 34
cudaDevAttrTccDriver = 35
cudaDevAttrMemoryClockRate = 36
cudaDevAttrGlobalMemoryBusWidth = 37
cudaDevAttrL2CacheSize = 38
cudaDevAttrMaxThreadsPerMultiProcessor = 39
cudaDevAttrAsyncEngineCount = 40
cudaDevAttrUnifiedAddressing = 41
cudaDevAttrMaxTexture1DLayeredWidth = 42
cudaDevAttrMaxTexture1DLayeredLayers = 43
cudaDevAttrMaxTexture2DGatherWidth = 45
cudaDevAttrMaxTexture2DGatherHeight = 46
cudaDevAttrMaxTexture3DWidthAlt = 47
cudaDevAttrMaxTexture3DHeightAlt = 48
cudaDevAttrMaxTexture3DDepthAlt = 49
cudaDevAttrPciDomainId = 50
cudaDevAttrTexturePitchAlignment = 51
cudaDevAttrMaxTextureCubemapWidth = 52
cudaDevAttrMaxTextureCubemapLayeredWidth = 53
cudaDevAttrMaxTextureCubemapLayeredLayers = 54
cudaDevAttrMaxSurface1DWidth = 55
cudaDevAttrMaxSurface2DWidth = 56
cudaDevAttrMaxSurface2DHeight = 57
cudaDevAttrMaxSurface3DWidth = 58
cudaDevAttrMaxSurface3DHeight = 59
cudaDevAttrMaxSurface3DDepth = 60
cudaDevAttrMaxSurface1DLayeredWidth = 61
cudaDevAttrMaxSurface1DLayeredLayers = 62
cudaDevAttrMaxSurface2DLayeredWidth = 63
cudaDevAttrMaxSurface2DLayeredHeight = 64
cudaDevAttrMaxSurface2DLayeredLayers = 65
cudaDevAttrMaxSurfaceCubemapWidth = 66
cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67
cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68
cudaDevAttrMaxTexture1DLinearWidth = 69
cudaDevAttrMaxTexture2DLinearWidth = 70
cudaDevAttrMaxTexture2DLinearHeight = 71
cudaDevAttrMaxTexture2DLinearPitch = 72
cudaDevAttrMaxTexture2DMipmappedWidth = 73
cudaDevAttrMaxTexture2DMipmappedHeight = 74
cudaDevAttrComputeCapabilityMajor = 75
cudaDevAttrComputeCapabilityMinor = 76
cudaDevAttrMaxTexture1DMipmappedWidth = 77
cudaDevAttrStreamPrioritiesSupported = 78
cudaDevAttrGlobalL1CacheSupported = 79
cudaDevAttrLocalL1CacheSupported = 80
cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81
cudaDevAttrMaxRegistersPerMultiprocessor = 82
cudaDevAttrManagedMemory = 83
cudaDevAttrIsMultiGpuBoard = 84
cudaDevAttrMultiGpuBoardGroupID = 85
cudaDevAttrHostNativeAtomicSupported = 86
cudaDevAttrSingleToDoublePrecisionPerfRatio = 87
cudaDevAttrPageableMemoryAccess = 88
cudaDevAttrConcurrentManagedAccess = 89
cudaDevAttrComputePreemptionSupported = 90
cudaDevAttrCanUseHostPointerForRegisteredMem = 91
cudaDevAttrReserved92 = 92
cudaDevAttrReserved93 = 93
cudaDevAttrReserved94 = 94
cudaDevAttrCooperativeLaunch = 95
cudaDevAttrCooperativeMultiDeviceLaunch = 96
cudaDevAttrMaxSharedMemoryPerBlockOptin = 97
cudaDevAttrCanFlushRemoteWrites = 98
cudaDevAttrHostRegisterSupported = 99
cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100
cudaDevAttrDirectManagedMemAccessFromHost = 101
cudaDevAttrMaxBlocksPerMultiprocessor = 106
cudaDevAttrMaxPersistingL2CacheSize = 108
cudaDevAttrMaxAccessPolicyWindowSize = 109
cudaDevAttrReservedSharedMemoryPerBlock = 111
cudaDevAttrSparseCudaArraySupported = 112
cudaDevAttrHostRegisterReadOnlySupported = 113
cudaDevAttrTimelineSemaphoreInteropSupported = 114
cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114
cudaDevAttrMemoryPoolsSupported = 115
cudaDevAttrGPUDirectRDMASupported = 116
cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117
cudaDevAttrGPUDirectRDMAWritesOrdering = 118
cudaDevAttrMemoryPoolSupportedHandleTypes = 119
cudaDevAttrClusterLaunch = 120
cudaDevAttrDeferredMappingCudaArraySupported = 121
- cudaDevAttrMax = 122
enum cudaDeviceP2PAttr
cudaDevP2PAttrPerformanceRank = 1
cudaDevP2PAttrAccessSupported = 2
cudaDevP2PAttrNativeAtomicSupported = 3
cudaDevP2PAttrCudaArrayAccessSupported = 4
-enum cudaEglColorFormat
-enum cudaEglFrameType
-enum cudaEglResourceLocationFlags
enum cudaError
cudaSuccess = 0
cudaErrorInvalidValue = 1
cudaErrorMemoryAllocation = 2
cudaErrorInitializationError = 3
cudaErrorCudartUnloading = 4
cudaErrorProfilerDisabled = 5
cudaErrorProfilerNotInitialized = 6
cudaErrorProfilerAlreadyStarted = 7
cudaErrorProfilerAlreadyStopped = 8
cudaErrorInvalidConfiguration = 9
cudaErrorInvalidPitchValue = 12
cudaErrorInvalidSymbol = 13
cudaErrorInvalidHostPointer = 16
cudaErrorInvalidDevicePointer = 17
cudaErrorInvalidTexture = 18
cudaErrorInvalidTextureBinding = 19
cudaErrorInvalidChannelDescriptor = 20
cudaErrorInvalidMemcpyDirection = 21
cudaErrorAddressOfConstant = 22
cudaErrorTextureFetchFailed = 23
cudaErrorTextureNotBound = 24
cudaErrorSynchronizationError = 25
cudaErrorInvalidFilterSetting = 26
cudaErrorInvalidNormSetting = 27
cudaErrorMixedDeviceExecution = 28
cudaErrorNotYetImplemented = 31
cudaErrorMemoryValueTooLarge = 32
cudaErrorStubLibrary = 34
cudaErrorInsufficientDriver = 35
cudaErrorCallRequiresNewerDriver = 36
cudaErrorInvalidSurface = 37
cudaErrorDuplicateVariableName = 43
cudaErrorDuplicateTextureName = 44
cudaErrorDuplicateSurfaceName = 45
cudaErrorDevicesUnavailable = 46
cudaErrorIncompatibleDriverContext = 49
cudaErrorMissingConfiguration = 52
cudaErrorPriorLaunchFailure = 53
cudaErrorLaunchMaxDepthExceeded = 65
cudaErrorLaunchFileScopedTex = 66
cudaErrorLaunchFileScopedSurf = 67
cudaErrorSyncDepthExceeded = 68
cudaErrorLaunchPendingCountExceeded = 69
cudaErrorInvalidDeviceFunction = 98
cudaErrorNoDevice = 100
cudaErrorInvalidDevice = 101
cudaErrorDeviceNotLicensed = 102
cudaErrorSoftwareValidityNotEstablished = 103
cudaErrorStartupFailure = 127
cudaErrorInvalidKernelImage = 200
cudaErrorDeviceUninitialized = 201
cudaErrorMapBufferObjectFailed = 205
cudaErrorUnmapBufferObjectFailed = 206
cudaErrorArrayIsMapped = 207
cudaErrorAlreadyMapped = 208
cudaErrorNoKernelImageForDevice = 209
cudaErrorAlreadyAcquired = 210
cudaErrorNotMapped = 211
cudaErrorNotMappedAsArray = 212
cudaErrorNotMappedAsPointer = 213
cudaErrorECCUncorrectable = 214
cudaErrorUnsupportedLimit = 215
cudaErrorDeviceAlreadyInUse = 216
cudaErrorPeerAccessUnsupported = 217
cudaErrorInvalidPtx = 218
cudaErrorInvalidGraphicsContext = 219
cudaErrorNvlinkUncorrectable = 220
cudaErrorJitCompilerNotFound = 221
cudaErrorUnsupportedPtxVersion = 222
cudaErrorJitCompilationDisabled = 223
cudaErrorUnsupportedExecAffinity = 224
cudaErrorInvalidSource = 300
cudaErrorFileNotFound = 301
cudaErrorSharedObjectSymbolNotFound = 302
cudaErrorSharedObjectInitFailed = 303
cudaErrorOperatingSystem = 304
cudaErrorInvalidResourceHandle = 400
cudaErrorIllegalState = 401
cudaErrorSymbolNotFound = 500
cudaErrorNotReady = 600
cudaErrorIllegalAddress = 700
cudaErrorLaunchOutOfResources = 701
cudaErrorLaunchTimeout = 702
cudaErrorLaunchIncompatibleTexturing = 703
cudaErrorPeerAccessAlreadyEnabled = 704
cudaErrorPeerAccessNotEnabled = 705
cudaErrorSetOnActiveProcess = 708
cudaErrorContextIsDestroyed = 709
cudaErrorAssert = 710
cudaErrorTooManyPeers = 711
cudaErrorHostMemoryAlreadyRegistered = 712
cudaErrorHostMemoryNotRegistered = 713
cudaErrorHardwareStackError = 714
cudaErrorIllegalInstruction = 715
cudaErrorMisalignedAddress = 716
cudaErrorInvalidAddressSpace = 717
cudaErrorInvalidPc = 718
cudaErrorLaunchFailure = 719
cudaErrorCooperativeLaunchTooLarge = 720
cudaErrorNotPermitted = 800
cudaErrorNotSupported = 801
cudaErrorSystemNotReady = 802
cudaErrorSystemDriverMismatch = 803
cudaErrorCompatNotSupportedOnDevice = 804
cudaErrorMpsConnectionFailed = 805
cudaErrorMpsRpcFailure = 806
cudaErrorMpsServerNotReady = 807
cudaErrorMpsMaxClientsReached = 808
cudaErrorMpsMaxConnectionsReached = 809
cudaErrorMpsClientTerminated = 810
cudaErrorStreamCaptureUnsupported = 900
cudaErrorStreamCaptureInvalidated = 901
cudaErrorStreamCaptureMerge = 902
cudaErrorStreamCaptureUnmatched = 903
cudaErrorStreamCaptureUnjoined = 904
cudaErrorStreamCaptureIsolation = 905
cudaErrorStreamCaptureImplicit = 906
cudaErrorCapturedEvent = 907
cudaErrorStreamCaptureWrongThread = 908
cudaErrorTimeout = 909
cudaErrorGraphExecUpdateFailure = 910
cudaErrorExternalDevice = 911
cudaErrorInvalidClusterSize = 912
cudaErrorUnknown = 999
cudaErrorApiFailureBase = 10000
-enum cudaExternalMemoryHandleType
-enum cudaExternalSemaphoreHandleType
enum cudaFlushGPUDirectRDMAWritesOptions
cudaFlushGPUDirectRDMAWritesOptionHost = 1
cudaFlushGPUDirectRDMAWritesOptionMemOps = 2
enum cudaFlushGPUDirectRDMAWritesScope
cudaFlushGPUDirectRDMAWritesToOwner = 100
cudaFlushGPUDirectRDMAWritesToAllDevices = 200
enum cudaFlushGPUDirectRDMAWritesTarget
cudaFlushGPUDirectRDMAWritesTargetCurrentDevice = 0
enum cudaFuncAttribute
cudaFuncAttributeMaxDynamicSharedMemorySize = 8
cudaFuncAttributePreferredSharedMemoryCarveout = 9
cudaFuncAttributeClusterDimMustBeSet = 10
cudaFuncAttributeRequiredClusterWidth = 11
cudaFuncAttributeRequiredClusterHeight = 12
cudaFuncAttributeRequiredClusterDepth = 13
cudaFuncAttributeNonPortableClusterSizeAllowed = 14
cudaFuncAttributeClusterSchedulingPolicyPreference = 15
cudaFuncAttributeMax = 16
enum cudaFuncCache
cudaFuncCachePreferNone = 0
cudaFuncCachePreferShared = 1
cudaFuncCachePreferL1 = 2
cudaFuncCachePreferEqual = 3
enum cudaGPUDirectRDMAWritesOrdering
cudaGPUDirectRDMAWritesOrderingNone = 0
cudaGPUDirectRDMAWritesOrderingOwner = 100
cudaGPUDirectRDMAWritesOrderingAllDevices = 200
enum cudaGetDriverEntryPointFlags
cudaEnableDefault = 0
cudaEnableLegacyStream = 1
cudaEnablePerThreadDefaultStream = 2
enum cudaGraphDebugDotFlags
cudaGraphDebugDotFlagsVerbose = 1
cudaGraphDebugDotFlagsKernelNodeParams = 4
cudaGraphDebugDotFlagsMemcpyNodeParams = 8
cudaGraphDebugDotFlagsMemsetNodeParams = 16
cudaGraphDebugDotFlagsHostNodeParams = 32
cudaGraphDebugDotFlagsEventNodeParams = 64
cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 128
cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 256
cudaGraphDebugDotFlagsKernelNodeAttributes = 512
cudaGraphDebugDotFlagsHandles = 1024
enum cudaGraphExecUpdateResult
cudaGraphExecUpdateSuccess = 0
cudaGraphExecUpdateError = 1
cudaGraphExecUpdateErrorTopologyChanged = 2
cudaGraphExecUpdateErrorNodeTypeChanged = 3
cudaGraphExecUpdateErrorFunctionChanged = 4
cudaGraphExecUpdateErrorParametersChanged = 5
cudaGraphExecUpdateErrorNotSupported = 6
cudaGraphExecUpdateErrorUnsupportedFunctionChange = 7
cudaGraphExecUpdateErrorAttributesChanged = 8
enum cudaGraphInstantiateFlags
cudaGraphInstantiateFlagAutoFreeOnLaunch = 1
cudaGraphInstantiateFlagUseNodePriority = 8
-enum cudaGraphMemAttributeType
enum cudaGraphNodeType
cudaGraphNodeTypeKernel = 0
cudaGraphNodeTypeMemcpy = 1
cudaGraphNodeTypeMemset = 2
cudaGraphNodeTypeHost = 3
cudaGraphNodeTypeGraph = 4
cudaGraphNodeTypeEmpty = 5
cudaGraphNodeTypeWaitEvent = 6
cudaGraphNodeTypeEventRecord = 7
cudaGraphNodeTypeExtSemaphoreSignal = 8
cudaGraphNodeTypeExtSemaphoreWait = 9
cudaGraphNodeTypeMemAlloc = 10
cudaGraphNodeTypeMemFree = 11
- cudaGraphNodeTypeCount = 12
enum cudaGraphicsCubeFace
cudaGraphicsCubeFacePositiveX = 0
cudaGraphicsCubeFaceNegativeX = 1
cudaGraphicsCubeFacePositiveY = 2
cudaGraphicsCubeFaceNegativeY = 3
cudaGraphicsCubeFacePositiveZ = 4
cudaGraphicsCubeFaceNegativeZ = 5
enum cudaGraphicsMapFlags
cudaGraphicsMapFlagsNone = 0
cudaGraphicsMapFlagsReadOnly = 1
cudaGraphicsMapFlagsWriteDiscard = 2
enum cudaGraphicsRegisterFlags
cudaGraphicsRegisterFlagsNone = 0
cudaGraphicsRegisterFlagsReadOnly = 1
cudaGraphicsRegisterFlagsWriteDiscard = 2
cudaGraphicsRegisterFlagsSurfaceLoadStore = 4
cudaGraphicsRegisterFlagsTextureGather = 8
enum cudaLaunchAttributeID
cudaLaunchAttributeIgnore = 0
cudaLaunchAttributeAccessPolicyWindow = 1
cudaLaunchAttributeCooperative = 2
cudaLaunchAttributeSynchronizationPolicy = 3
cudaLaunchAttributeClusterDimension = 4
cudaLaunchAttributeClusterSchedulingPolicyPreference = 5
cudaLaunchAttributeProgrammaticStreamSerialization = 6
cudaLaunchAttributeProgrammaticEvent = 7
cudaLaunchAttributePriority = 8
enum cudaLimit
cudaLimitStackSize = 0
cudaLimitPrintfFifoSize = 1
cudaLimitMallocHeapSize = 2
cudaLimitDevRuntimeSyncDepth = 3
cudaLimitDevRuntimePendingLaunchCount = 4
cudaLimitMaxL2FetchGranularity = 5
cudaLimitPersistingL2CacheSize = 6
enum cudaMemAccessFlags
cudaMemAccessFlagsProtNone = 0
cudaMemAccessFlagsProtRead = 1
cudaMemAccessFlagsProtReadWrite = 3
enum cudaMemAllocationHandleType
cudaMemHandleTypeNone = 0
cudaMemHandleTypePosixFileDescriptor = 1
cudaMemHandleTypeWin32 = 2
cudaMemHandleTypeWin32Kmt = 4
enum cudaMemAllocationType
cudaMemAllocationTypeInvalid = 0
cudaMemAllocationTypePinned = 1
cudaMemAllocationTypeMax = 2147483647
enum cudaMemLocationType
cudaMemLocationTypeInvalid = 0
cudaMemLocationTypeDevice = 1
enum cudaMemPoolAttr
cudaMemPoolReuseFollowEventDependencies = 1
cudaMemPoolReuseAllowOpportunistic = 2
cudaMemPoolReuseAllowInternalDependencies = 3
cudaMemPoolAttrReleaseThreshold = 4
cudaMemPoolAttrReservedMemCurrent = 5
cudaMemPoolAttrReservedMemHigh = 6
cudaMemPoolAttrUsedMemCurrent = 7
cudaMemPoolAttrUsedMemHigh = 8
enum cudaMemRangeAttribute
cudaMemRangeAttributeReadMostly = 1
cudaMemRangeAttributePreferredLocation = 2
cudaMemRangeAttributeAccessedBy = 3
cudaMemRangeAttributeLastPrefetchLocation = 4
enum cudaMemcpyKind
cudaMemcpyHostToHost = 0
cudaMemcpyHostToDevice = 1
cudaMemcpyDeviceToHost = 2
cudaMemcpyDeviceToDevice = 3
cudaMemcpyDefault = 4
enum cudaMemoryAdvise
cudaMemAdviseSetReadMostly = 1
cudaMemAdviseUnsetReadMostly = 2
cudaMemAdviseSetPreferredLocation = 3
cudaMemAdviseUnsetPreferredLocation = 4
cudaMemAdviseSetAccessedBy = 5
cudaMemAdviseUnsetAccessedBy = 6
enum cudaMemoryType
cudaMemoryTypeUnregistered = 0
cudaMemoryTypeHost = 1
cudaMemoryTypeDevice = 2
cudaMemoryTypeManaged = 3
enum cudaOutputMode
cudaKeyValuePair = 0
cudaCSV = 1
enum cudaResourceType
cudaResourceTypeArray = 0
cudaResourceTypeMipmappedArray = 1
cudaResourceTypeLinear = 2
cudaResourceTypePitch2D = 3
enum cudaResourceViewFormat
cudaResViewFormatNone = 0
cudaResViewFormatUnsignedChar1 = 1
cudaResViewFormatUnsignedChar2 = 2
cudaResViewFormatUnsignedChar4 = 3
cudaResViewFormatSignedChar1 = 4
cudaResViewFormatSignedChar2 = 5
cudaResViewFormatSignedChar4 = 6
cudaResViewFormatUnsignedShort1 = 7
cudaResViewFormatUnsignedShort2 = 8
cudaResViewFormatUnsignedShort4 = 9
cudaResViewFormatSignedShort1 = 10
cudaResViewFormatSignedShort2 = 11
cudaResViewFormatSignedShort4 = 12
cudaResViewFormatUnsignedInt1 = 13
cudaResViewFormatUnsignedInt2 = 14
cudaResViewFormatUnsignedInt4 = 15
cudaResViewFormatSignedInt1 = 16
cudaResViewFormatSignedInt2 = 17
cudaResViewFormatSignedInt4 = 18
cudaResViewFormatHalf1 = 19
cudaResViewFormatHalf2 = 20
cudaResViewFormatHalf4 = 21
cudaResViewFormatFloat1 = 22
cudaResViewFormatFloat2 = 23
cudaResViewFormatFloat4 = 24
cudaResViewFormatUnsignedBlockCompressed1 = 25
cudaResViewFormatUnsignedBlockCompressed2 = 26
cudaResViewFormatUnsignedBlockCompressed3 = 27
cudaResViewFormatUnsignedBlockCompressed4 = 28
cudaResViewFormatSignedBlockCompressed4 = 29
cudaResViewFormatUnsignedBlockCompressed5 = 30
cudaResViewFormatSignedBlockCompressed5 = 31
cudaResViewFormatUnsignedBlockCompressed6H = 32
cudaResViewFormatSignedBlockCompressed6H = 33
cudaResViewFormatUnsignedBlockCompressed7 = 34
enum cudaSharedCarveout
cudaSharedmemCarveoutDefault = 18446744073709551615
cudaSharedmemCarveoutMaxShared = 100
cudaSharedmemCarveoutMaxL1 = 0
enum cudaSharedMemConfig
cudaSharedMemBankSizeDefault = 0
cudaSharedMemBankSizeFourByte = 1
cudaSharedMemBankSizeEightByte = 2
enum cudaStreamCaptureMode
cudaStreamCaptureModeGlobal = 0
cudaStreamCaptureModeThreadLocal = 1
cudaStreamCaptureModeRelaxed = 2
enum cudaStreamCaptureStatus
cudaStreamCaptureStatusNone = 0
cudaStreamCaptureStatusActive = 1
cudaStreamCaptureStatusInvalidated = 2
enum cudaStreamUpdateCaptureDependenciesFlags
cudaStreamAddCaptureDependencies = 0
cudaStreamSetCaptureDependencies = 1
enum cudaSurfaceBoundaryMode
cudaBoundaryModeZero = 0
cudaBoundaryModeClamp = 1
cudaBoundaryModeTrap = 2
enum cudaSurfaceFormatMode
cudaFormatModeForced = 0
cudaFormatModeAuto = 1
enum cudaTextureAddressMode
cudaAddressModeWrap = 0
cudaAddressModeClamp = 1
cudaAddressModeMirror = 2
cudaAddressModeBorder = 3
enum cudaTextureFilterMode
cudaFilterModePoint = 0
cudaFilterModeLinear = 1
enum cudaTextureReadMode
cudaReadModeElementType = 0
cudaReadModeNormalizedFloat = 1
enum cudaUserObjectFlags
cudaUserObjectNoDestructorSync = 1
enum cudaUserObjectRetainFlags
cudaGraphUserObjectMove = 1
struct CUuuid_st
struct cudaAccessPolicyWindow
base_ptr
hitProp
hitRatio
missProp
num_bytes
struct cudaArrayMemoryRequirements
alignment
size
struct cudaArraySparseProperties
depth
flags
height
miptailFirstLevel
miptailSize
width
struct cudaChannelFormatDesc
f
w
x
y
z
struct cudaDeviceProp
ECCEnabled
accessPolicyMaxWindowSize
asyncEngineCount
canMapHostMemory
canUseHostPointerForRegisteredMem
clockRate
computeMode
computePreemptionSupported
concurrentKernels
concurrentManagedAccess
cooperativeLaunch
cooperativeMultiDeviceLaunch
deviceOverlap
directManagedMemAccessFromHost
globalL1CacheSupported
hostNativeAtomicSupported
integrated
isMultiGpuBoard
kernelExecTimeoutEnabled
l2CacheSize
localL1CacheSupported
luid
luidDeviceNodeMask
major
managedMemory
maxBlocksPerMultiProcessor
maxGridSize
maxSurface1D
maxSurface1DLayered
maxSurface2D
maxSurface2DLayered
maxSurface3D
maxSurfaceCubemap
maxSurfaceCubemapLayered
maxTexture1D
maxTexture1DLayered
maxTexture1DLinear
maxTexture1DMipmap
maxTexture2D
maxTexture2DGather
maxTexture2DLayered
maxTexture2DLinear
maxTexture2DMipmap
maxTexture3D
maxTexture3DAlt
maxTextureCubemap
maxTextureCubemapLayered
maxThreadsDim
maxThreadsPerBlock
maxThreadsPerMultiProcessor
memPitch
memoryBusWidth
memoryClockRate
minor
multiGpuBoardGroupID
multiProcessorCount
name
pageableMemoryAccess
pageableMemoryAccessUsesHostPageTables
pciBusID
pciDeviceID
pciDomainID
persistingL2CacheMaxSize
regsPerBlock
regsPerMultiprocessor
reservedSharedMemPerBlock
sharedMemPerBlock
sharedMemPerBlockOptin
sharedMemPerMultiprocessor
singleToDoublePrecisionPerfRatio
streamPrioritiesSupported
surfaceAlignment
tccDriver
textureAlignment
texturePitchAlignment
totalConstMem
totalGlobalMem
unifiedAddressing
uuid
warpSize
-struct cudaEglFrame
-struct cudaEglPlaneDesc
struct cudaExtent
depth
height
width
-struct cudaExternalMemoryBufferDesc
struct cudaExternalMemoryHandleDesc
-struct cudaExternalMemoryMipmappedArrayDesc
struct cudaExternalSemaphoreHandleDesc
-struct cudaExternalSemaphoreSignalNodeParams
struct cudaExternalSemaphoreSignalParams
struct cudaExternalSemaphoreSignalParams_v1
-struct cudaExternalSemaphoreWaitNodeParams
struct cudaExternalSemaphoreWaitParams
struct cudaExternalSemaphoreWaitParams_v1
struct cudaFuncAttributes
binaryVersion
cacheModeCA
constSizeBytes
localSizeBytes
maxDynamicSharedSizeBytes
maxThreadsPerBlock
numRegs
preferredShmemCarveout
ptxVersion
sharedSizeBytes
struct cudaHostNodeParams
fn
userData
struct cudaIpcEventHandle_t
struct cudaIpcMemHandle_t
struct cudaKernelNodeParams
blockDim
extra
func
gridDim
kernelParams
sharedMemBytes
struct cudaLaunchAttribute
union cudaLaunchAttributeValue
struct cudaLaunchConfig_t
attrs
blockDim
dynamicSmemBytes
gridDim
numAttrs
stream
struct cudaLaunchParams
args
blockDim
func
gridDim
sharedMem
stream
struct cudaMemAccessDesc
flags
location
struct cudaMemAllocNodeParams
accessDescCount
accessDescs
bytesize
dptr
poolProps
struct cudaMemLocation
id
type
struct cudaMemPoolProps
allocType
handleTypes
location
- reserved
win32SecurityAttributes
struct cudaMemPoolPtrExportData
struct cudaMemcpy3DParms
dstArray
dstPos
dstPtr
extent
kind
srcArray
srcPos
srcPtr
struct cudaMemcpy3DPeerParms
dstArray
dstDevice
dstPos
dstPtr
extent
srcArray
srcDevice
srcPos
srcPtr
struct cudaMemsetParams
dst
elementSize
height
pitch
value
width
struct cudaPitchedPtr
pitch
ptr
xsize
ysize
struct cudaPointerAttributes
device
devicePointer
hostPointer
type
struct cudaPos
x
y
z
struct cudaResourceDesc
array
desc
devPtr
height
mipmap
pitchInBytes
resType
sizeInBytes
width
struct cudaResourceViewDesc
depth
firstLayer
firstMipmapLevel
format
height
lastLayer
lastMipmapLevel
width
struct cudaTextureDesc
addressMode
borderColor
disableTrilinearOptimization
filterMode
maxAnisotropy
maxMipmapLevelClamp
minMipmapLevelClamp
mipmapFilterMode
mipmapLevelBias
normalizedCoords
readMode
sRGB
-struct surfaceReference
struct textureReference
addressMode
channelDesc
- disableTrilinearOptimization
filterMode
maxAnisotropy
maxMipmapLevelClamp
minMipmapLevelClamp
mipmapFilterMode
mipmapLevelBias
normalized
sRGB
typedef const cudaArray * cudaArray_const_t;
typedef cudaArray * cudaArray_t;
-typedef CUeglStreamConnection_st * cudaEglStreamConnection;
typedef enum cudaError cudaError_t;
typedef CUevent_st * cudaEvent_t;
-typedef CUexternalMemory_st * cudaExternalMemory_t;
-typedef CUexternalSemaphore_st * cudaExternalSemaphore_t;
typedef CUfunc_st * cudaFunction_t;
typedef CUgraphExec_st * cudaGraphExec_t;
typedef CUgraphNode_st * cudaGraphNode_t;
typedef CUgraph_st * cudaGraph_t;
typedef cudaGraphicsResource * cudaGraphicsResource_t;
typedef void(* cudaHostFn_t)(void* userData);
typedef CUmemPoolHandle_st * cudaMemPool_t;
typedef const cudaMipmappedArray * cudaMipmappedArray_const_t;
typedef cudaMipmappedArray * cudaMipmappedArray_t;
typedef enum cudaOutputMode cudaOutputMode_t;
typedef CUstream_st * cudaStream_t;
typedef unsigned long long cudaSurfaceObject_t;
typedef unsigned long long cudaTextureObject_t;
typedef CUuserObject_st * cudaUserObject_t;
80% (521 of 648 declarations available)
6.1. Device Management#
cudaError_t cudaChooseDevice(int* device, const cudaDeviceProp* prop);
cudaError_t cudaDeviceFlushGPUDirectRDMAWrites(cudaFlushGPUDirectRDMAWritesTarget target, cudaFlushGPUDirectRDMAWritesScope scope);
cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
__device__ cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
cudaError_t cudaDeviceGetByPCIBusId(int* device, const char* pciBusId);
cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache* pCacheConfig);
__device__ cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache* pCacheConfig);
cudaError_t cudaDeviceGetDefaultMemPool(cudaMemPool_t* memPool, int device);
cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
__device__ cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
cudaError_t cudaDeviceGetMemPool(cudaMemPool_t* memPool, int device);
-cudaError_t cudaDeviceGetNvSciSyncAttributes(void* nvSciSyncAttrList, int device, int flags);
cudaError_t cudaDeviceGetP2PAttribute(int* value, cudaDeviceP2PAttr attr, int srcDevice, int dstDevice);
cudaError_t cudaDeviceGetPCIBusId(char* pciBusId, int len, int device);
cudaError_t cudaDeviceGetStreamPriorityRange(int* leastPriority, int* greatestPriority);
cudaError_t cudaDeviceGetTexture1DLinearMaxWidth(size_t* maxWidthInElements, const cudaChannelFormatDesc* fmtDesc, int device);
-cudaError_t cudaDeviceRegisterAsyncNotification(int device, cudaAsyncCallback callbackFunc, void* userData, cudaAsyncCallbackHandle_t* callback);
cudaError_t cudaDeviceReset(void);
cudaError_t cudaDeviceSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaDeviceSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaDeviceSetMemPool(int device, cudaMemPool_t memPool);
cudaError_t cudaDeviceSynchronize(void);
-__device__ cudaError_t cudaDeviceSynchronize(void);
-cudaError_t cudaDeviceUnregisterAsyncNotification(int device, cudaAsyncCallbackHandle_t callback);
cudaError_t cudaGetDevice(int* device);
__device__ cudaError_t cudaGetDevice(int* device);
cudaError_t cudaGetDeviceCount(int* count);
__device__ cudaError_t cudaGetDeviceCount(int* count);
cudaError_t cudaGetDeviceFlags(unsigned int* flags);
cudaError_t cudaGetDeviceProperties(cudaDeviceProp* prop, int device);
cudaError_t cudaInitDevice(int device, unsigned int deviceFlags, unsigned int flags);
cudaError_t cudaIpcCloseMemHandle(void* devPtr);
cudaError_t cudaIpcGetEventHandle(cudaIpcEventHandle_t* handle, cudaEvent_t event);
cudaError_t cudaIpcGetMemHandle(cudaIpcMemHandle_t* handle, void* devPtr);
cudaError_t cudaIpcOpenEventHandle(cudaEvent_t* event, cudaIpcEventHandle_t handle);
cudaError_t cudaIpcOpenMemHandle(void** devPtr, cudaIpcMemHandle_t handle, unsigned int flags);
cudaError_t cudaSetDevice(int device);
cudaError_t cudaSetDeviceFlags(unsigned int flags);
cudaError_t cudaSetValidDevices(int* device_arr, int len);
6.2. Device Management [DEPRECATED]#
cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
__device__ cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
cudaError_t cudaDeviceSetSharedMemConfig(cudaSharedMemConfig config);
6.3. Thread Management [DEPRECATED]#
cudaError_t cudaThreadExit(void);
cudaError_t cudaThreadGetCacheConfig(cudaFuncCache ** pCacheConfig);
cudaError_t cudaThreadGetLimit(size_t* pValue, cudaLimit limit);
cudaError_t cudaThreadSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaThreadSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaThreadSynchronize(void);
6.4. Error Handling#
const char* cudaGetErrorName(cudaError_t error);
__device__ const char* cudaGetErrorName(cudaError_t error);
const char* cudaGetErrorString(cudaError_t error);
__device__ const char* cudaGetErrorString(cudaError_t error);
cudaError_t cudaGetLastError(void);
-__device__ cudaError_t cudaGetLastError(void);
cudaError_t cudaPeekAtLastError(void);
-__device__ cudaError_t cudaPeekAtLastError(void);
6.5. Stream Management#
typedef void(* cudaStreamCallback_t)(cudaStream_t stream, cudaError_t status, void* userData);
cudaError_t cudaCtxResetPersistingL2Cache(void);
cudaError_t cudaStreamAddCallback(cudaStream_t stream, cudaStreamCallback_t callback, void* userData, unsigned int flags);
cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, void* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
cudaError_t cudaStreamBeginCapture(cudaStream_t stream, cudaStreamCaptureMode mode);
cudaError_t cudaStreamBeginCaptureToGraph(cudaStream_t stream, cudaGraph_t graph, const cudaGraphNode_t* dependencies, const cudaGraphEdgeData* dependencyData, size_t numDependencies, cudaStreamCaptureMode mode);
cudaError_t cudaStreamCopyAttributes(cudaStream_t dst, cudaStream_t src);
cudaError_t cudaStreamCreate(cudaStream_t* pStream);
cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
-__device__ cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
cudaError_t cudaStreamCreateWithPriority(cudaStream_t* pStream, unsigned int flags, int priority);
cudaError_t cudaStreamDestroy(cudaStream_t stream);
-__device__ cudaError_t cudaStreamDestroy(cudaStream_t stream);
cudaError_t cudaStreamEndCapture(cudaStream_t stream, cudaGraph_t* pGraph);
cudaError_t cudaStreamGetAttribute(cudaStream_t hStream, cudaStreamAttrID attr, cudaStreamAttrValue* value_out);
cudaError_t cudaStreamGetCaptureInfo(cudaStream_t stream, cudaStreamCaptureStatus ** captureStatus_out, unsigned long long* id_out = 0, cudaGraph_t* graph_out = 0, const cudaGraphNode_t** dependencies_out = 0, size_t* numDependencies_out = 0);
cudaError_t cudaStreamGetCaptureInfo_v3(cudaStream_t stream, cudaStreamCaptureStatus ** captureStatus_out, unsigned long long* id_out = 0, cudaGraph_t* graph_out = 0, const cudaGraphNode_t** dependencies_out = 0, const cudaGraphEdgeData** edgeData_out = 0, size_t* numDependencies_out = 0);
cudaError_t cudaStreamGetDevice(cudaStream_t hStream, int* device);
cudaError_t cudaStreamGetFlags(cudaStream_t hStream, unsigned int* flags);
cudaError_t cudaStreamGetId(cudaStream_t hStream, unsigned long long* streamId);
cudaError_t cudaStreamGetPriority(cudaStream_t hStream, int* priority);
cudaError_t cudaStreamIsCapturing(cudaStream_t stream, cudaStreamCaptureStatus ** pCaptureStatus);
cudaError_t cudaStreamQuery(cudaStream_t stream);
cudaError_t cudaStreamSetAttribute(cudaStream_t hStream, cudaStreamAttrID attr, const cudaStreamAttrValue* value);
cudaError_t cudaStreamSynchronize(cudaStream_t stream);
cudaError_t cudaStreamUpdateCaptureDependencies(cudaStream_t stream, cudaGraphNode_t* dependencies, size_t numDependencies, unsigned int flags = 0);
cudaError_t cudaStreamUpdateCaptureDependencies_v2(cudaStream_t stream, cudaGraphNode_t* dependencies, const cudaGraphEdgeData* dependencyData, size_t numDependencies, unsigned int flags = 0);
cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags = 0);
-__device__ cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags = 0);
cudaError_t cudaThreadExchangeStreamCaptureMode(cudaStreamCaptureMode ** mode);
6.6. Event Management#
cudaError_t cudaEventCreate(cudaEvent_t* event);
cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
-__device__ cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
cudaError_t cudaEventDestroy(cudaEvent_t event);
-__device__ cudaError_t cudaEventDestroy(cudaEvent_t event);
cudaError_t cudaEventElapsedTime(float* ms, cudaEvent_t start, cudaEvent_t end);
-cudaError_t cudaEventElapsedTime_v2(float* ms, cudaEvent_t start, cudaEvent_t end);
cudaError_t cudaEventQuery(cudaEvent_t event);
cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
-__device__ cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
cudaError_t cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream = 0, unsigned int flags = 0);
cudaError_t cudaEventSynchronize(cudaEvent_t event);
6.7. External Resource Interoperability#
-cudaError_t cudaDestroyExternalMemory(cudaExternalMemory_t extMem);
-cudaError_t cudaDestroyExternalSemaphore(cudaExternalSemaphore_t extSem);
-cudaError_t cudaExternalMemoryGetMappedBuffer(void** devPtr, cudaExternalMemory_t extMem, const cudaExternalMemoryBufferDesc* bufferDesc);
-cudaError_t cudaExternalMemoryGetMappedMipmappedArray(cudaMipmappedArray_t* mipmap, cudaExternalMemory_t extMem, const cudaExternalMemoryMipmappedArrayDesc* mipmapDesc);
-cudaError_t cudaImportExternalMemory(cudaExternalMemory_t* extMem_out, const cudaExternalMemoryHandleDesc* memHandleDesc);
-cudaError_t cudaImportExternalSemaphore(cudaExternalSemaphore_t* extSem_out, const cudaExternalSemaphoreHandleDesc* semHandleDesc);
-cudaError_t cudaSignalExternalSemaphoresAsync(const cudaExternalSemaphore_t* extSemArray, const cudaExternalSemaphoreSignalParams* paramsArray, unsigned int numExtSems, cudaStream_t stream = 0);
-cudaError_t cudaWaitExternalSemaphoresAsync(const cudaExternalSemaphore_t* extSemArray, const cudaExternalSemaphoreWaitParams* paramsArray, unsigned int numExtSems, cudaStream_t stream = 0);
6.8. Execution Control#
cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
-__device__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
cudaError_t cudaFuncGetName(const char** name, const void* func);
cudaError_t cudaFuncGetParamInfo(const void* func, size_t paramIndex, size_t* paramOffset, size_t* paramSize);
cudaError_t cudaFuncSetAttribute(const void* func, cudaFuncAttribute attr, int value);
cudaError_t cudaFuncSetCacheConfig(const void* func, cudaFuncCache cacheConfig);
__device__ void* cudaGetParameterBuffer(size_t alignment, size_t size);
__device__ void cudaGridDependencySynchronize(void);
cudaError_t cudaLaunchCooperativeKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
-cudaError_t cudaLaunchCooperativeKernelMultiDevice(cudaLaunchParams* launchParamsList, unsigned int numDevices, unsigned int flags = 0);
__device__ cudaError_t cudaLaunchDevice(void* func, void* parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream);
cudaError_t cudaLaunchHostFunc(cudaStream_t stream, cudaHostFn_t fn, void* userData);
cudaError_t cudaLaunchKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
cudaError_t cudaLaunchKernelExC(const cudaLaunchConfig_t* config, const void* func, void** args);
cudaError_t cudaSetDoubleForDevice(double* d);
cudaError_t cudaSetDoubleForHost(double* d);
__device__ void cudaTriggerProgrammaticLaunchCompletion(void);
6.9. Execution Control [DEPRECATED]#
cudaError_t cudaFuncSetSharedMemConfig(const void* func, cudaSharedMemConfig config);
6.10. Occupancy#
cudaError_t cudaOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, const void* func, int numBlocks, int blockSize);
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
-__device__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
-cudaError_t cudaOccupancyMaxActiveClusters(int* numClusters, const void* func, const cudaLaunchConfig_t* launchConfig);
-cudaError_t cudaOccupancyMaxPotentialClusterSize(int* clusterSize, const void* func, const cudaLaunchConfig_t* launchConfig);
6.11. Memory Management#
cudaError_t cudaArrayGetInfo(cudaChannelFormatDesc* desc, cudaExtent* extent, unsigned int* flags, cudaArray_t array);
-cudaError_t cudaArrayGetMemoryRequirements(cudaArrayMemoryRequirements* memoryRequirements, cudaArray_t array, int device);
-cudaError_t cudaArrayGetPlane(cudaArray_t* pPlaneArray, cudaArray_t hArray, unsigned int planeIdx);
-cudaError_t cudaArrayGetSparseProperties(cudaArraySparseProperties* sparseProperties, cudaArray_t array);
cudaError_t cudaFree(void* devPtr);
__device__ cudaError_t cudaFree(void* devPtr);
cudaError_t cudaFreeArray(cudaArray_t array);
cudaError_t cudaFreeHost(void* ptr);
cudaError_t cudaFreeMipmappedArray(cudaMipmappedArray_t mipmappedArray);
-cudaError_t cudaGetMipmappedArrayLevel(cudaArray_t* levelArray, cudaMipmappedArray_const_t mipmappedArray, unsigned int level);
cudaError_t cudaGetSymbolAddress(void** devPtr, const void* symbol);
cudaError_t cudaGetSymbolSize(size_t* size, const void* symbol);
cudaError_t cudaHostAlloc(void** pHost, size_t size, unsigned int flags);
cudaError_t cudaHostGetDevicePointer(void** pDevice, void* pHost, unsigned int flags);
cudaError_t cudaHostGetFlags(unsigned int* pFlags, void* pHost);
cudaError_t cudaHostRegister(void* ptr, size_t size, unsigned int flags);
cudaError_t cudaHostUnregister(void* ptr);
cudaError_t cudaMalloc(void** devPtr, size_t size);
__device__ cudaError_t cudaMalloc(void** devPtr, size_t size);
cudaError_t cudaMalloc3D(cudaPitchedPtr* pitchedDevPtr, cudaExtent extent);
cudaError_t cudaMalloc3DArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int flags = 0);
cudaError_t cudaMallocArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, size_t width, size_t height = 0, unsigned int flags = 0);
cudaError_t cudaMallocHost(void** ptr, size_t size);
cudaError_t cudaMallocManaged(void** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
cudaError_t cudaMallocMipmappedArray(cudaMipmappedArray_t* mipmappedArray, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int numLevels, unsigned int flags = 0);
cudaError_t cudaMallocPitch(void** devPtr, size_t* pitch, size_t width, size_t height);
cudaError_t cudaMemAdvise(const void* devPtr, size_t count, cudaMemoryAdvise advice, int device);
cudaError_t cudaMemAdvise_v2(const void* devPtr, size_t count, cudaMemoryAdvise advice, cudaMemLocation location);
cudaError_t cudaMemGetInfo(size_t* free, size_t* total);
cudaError_t cudaMemPrefetchAsync(const void* devPtr, size_t count, int dstDevice, cudaStream_t stream = 0);
cudaError_t cudaMemPrefetchAsync_v2(const void* devPtr, size_t count, cudaMemLocation location, unsigned int flags, cudaStream_t stream = 0);
cudaError_t cudaMemRangeGetAttribute(void* data, size_t dataSize, cudaMemRangeAttribute attribute, const void* devPtr, size_t count);
-cudaError_t cudaMemRangeGetAttributes(void** data, size_t* dataSizes, cudaMemRangeAttribute ** attributes, size_t numAttributes, const void* devPtr, size_t count);
cudaError_t cudaMemcpy(void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2D(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
-cudaError_t cudaMemcpy2DArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t width, size_t height, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DFromArray(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DFromArrayAsync(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy3D(const cudaMemcpy3DParms* p);
cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
-cudaError_t cudaMemcpy3DBatchAsync(size_t numOps, cudaMemcpy3DBatchOp* opList, size_t* failIdx, unsigned long long flags, cudaStream_t stream);
cudaError_t cudaMemcpy3DPeer(const cudaMemcpy3DPeerParms* p);
cudaError_t cudaMemcpy3DPeerAsync(const cudaMemcpy3DPeerParms* p, cudaStream_t stream = 0);
cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
-cudaError_t cudaMemcpyBatchAsync(void** dsts, void** srcs, size_t* sizes, size_t count, cudaMemcpyAttributes* attrs, size_t* attrsIdxs, size_t numAttrs, size_t* failIdx, cudaStream_t stream);
cudaError_t cudaMemcpyFromSymbol(void* dst, const void* symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyPeer(void* dst, int dstDevice, const void* src, int srcDevice, size_t count);
cudaError_t cudaMemcpyPeerAsync(void* dst, int dstDevice, const void* src, int srcDevice, size_t count, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToSymbol(const void* symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
cudaError_t cudaMemcpyToSymbolAsync(const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemset(void* devPtr, int value, size_t count);
cudaError_t cudaMemset2D(void* devPtr, size_t pitch, int value, size_t width, size_t height);
cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
cudaError_t cudaMemset3D(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent);
cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
-cudaError_t cudaMipmappedArrayGetMemoryRequirements(cudaArrayMemoryRequirements* memoryRequirements, cudaMipmappedArray_t mipmap, int device);
-cudaError_t cudaMipmappedArrayGetSparseProperties(cudaArraySparseProperties* sparseProperties, cudaMipmappedArray_t mipmap);
cudaExtent make_cudaExtent(size_t w, size_t h, size_t d);
cudaPitchedPtr make_cudaPitchedPtr(void* d, size_t p, size_t xsz, size_t ysz);
cudaPos make_cudaPos(size_t x, size_t y, size_t z);
6.12. Memory Management [DEPRECATED]#
-cudaError_t cudaMemcpyArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t count, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
-cudaError_t cudaMemcpyFromArray(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind);
-cudaError_t cudaMemcpyFromArrayAsync(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpyToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
6.13. Stream Ordered Memory Allocator#
cudaError_t cudaFreeAsync(void* devPtr, cudaStream_t hStream);
cudaError_t cudaMallocAsync(void** devPtr, size_t size, cudaStream_t hStream);
cudaError_t cudaMallocFromPoolAsync(void** ptr, size_t size, cudaMemPool_t memPool, cudaStream_t stream);
cudaError_t cudaMemPoolCreate(cudaMemPool_t* memPool, const cudaMemPoolProps* poolProps);
cudaError_t cudaMemPoolDestroy(cudaMemPool_t memPool);
cudaError_t cudaMemPoolExportPointer(cudaMemPoolPtrExportData* exportData, void* ptr);
cudaError_t cudaMemPoolExportToShareableHandle(void* shareableHandle, cudaMemPool_t memPool, cudaMemAllocationHandleType handleType, unsigned int flags);
cudaError_t cudaMemPoolGetAccess(cudaMemAccessFlags ** flags, cudaMemPool_t memPool, cudaMemLocation* location);
cudaError_t cudaMemPoolGetAttribute(cudaMemPool_t memPool, cudaMemPoolAttr attr, void* value);
cudaError_t cudaMemPoolImportFromShareableHandle(cudaMemPool_t* memPool, void* shareableHandle, cudaMemAllocationHandleType handleType, unsigned int flags);
cudaError_t cudaMemPoolImportPointer(void** ptr, cudaMemPool_t memPool, cudaMemPoolPtrExportData* exportData);
cudaError_t cudaMemPoolSetAccess(cudaMemPool_t memPool, const cudaMemAccessDesc* descList, size_t count);
cudaError_t cudaMemPoolSetAttribute(cudaMemPool_t memPool, cudaMemPoolAttr attr, void* value);
cudaError_t cudaMemPoolTrimTo(cudaMemPool_t memPool, size_t minBytesToKeep);
6.14. Unified Addressing#
cudaError_t cudaPointerGetAttributes(cudaPointerAttributes* attributes, const void* ptr);
6.15. Peer Device Memory Access#
cudaError_t cudaDeviceCanAccessPeer(int* canAccessPeer, int device, int peerDevice);
cudaError_t cudaDeviceDisablePeerAccess(int peerDevice);
cudaError_t cudaDeviceEnablePeerAccess(int peerDevice, unsigned int flags);
6.16. OpenGL Interoperability#
enum cudaGLDeviceList
cudaGLDeviceListAll = 1
cudaGLDeviceListCurrentFrame = 2
cudaGLDeviceListNextFrame = 3
cudaError_t cudaGLGetDevices(unsigned int* pCudaDeviceCount, int* pCudaDevices, unsigned int cudaDeviceCount, cudaGLDeviceList deviceList);
cudaError_t cudaGraphicsGLRegisterBuffer(cudaGraphicsResource** resource, GLuint buffer, unsigned int flags);
cudaError_t cudaGraphicsGLRegisterImage(cudaGraphicsResource** resource, GLuint image, GLenum target, unsigned int flags);
-cudaError_t cudaWGLGetDevice(int* device, HGPUNV hGpu);
6.17. OpenGL Interoperability [DEPRECATED]#
enum cudaGLMapFlags
cudaGLMapFlagsNone = 0
cudaGLMapFlagsReadOnly = 1
cudaGLMapFlagsWriteDiscard = 2
cudaError_t cudaGLMapBufferObject(void** devPtr, GLuint bufObj);
cudaError_t cudaGLMapBufferObjectAsync(void** devPtr, GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLRegisterBufferObject(GLuint bufObj);
cudaError_t cudaGLSetBufferObjectMapFlags(GLuint bufObj, unsigned int flags);
-cudaError_t cudaGLSetGLDevice(int device);
cudaError_t cudaGLUnmapBufferObject(GLuint bufObj);
cudaError_t cudaGLUnmapBufferObjectAsync(GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLUnregisterBufferObject(GLuint bufObj);
6.18. Direct3D 9 Interoperability#
-Windows APIs are currently unsupported
6.19. Direct3D 9 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
6.20. Direct3D 10 Interoperability#
-Windows APIs are currently unsupported
6.21. Direct3D 10 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
6.22. Direct3D 11 Interoperability#
-Windows APIs are currently unsupported
6.23. Direct3D 11 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
6.24. VDPAU Interoperability#
-VDPAU is currently unsupported
6.25. EGL Interoperability#
-EGL is currently unsupported
6.26. Graphics Interoperability#
cudaError_t cudaGraphicsMapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
-cudaError_t cudaGraphicsResourceGetMappedMipmappedArray(cudaMipmappedArray_t* mipmappedArray, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceGetMappedPointer(void** devPtr, size_t* size, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceSetMapFlags(cudaGraphicsResource_t resource, unsigned int flags);
cudaError_t cudaGraphicsSubResourceGetMappedArray(cudaArray_t* array, cudaGraphicsResource_t resource, unsigned int arrayIndex, unsigned int mipLevel);
cudaError_t cudaGraphicsUnmapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
cudaError_t cudaGraphicsUnregisterResource(cudaGraphicsResource_t resource);
6.27. Texture Object Management#
cudaChannelFormatDesc cudaCreateChannelDesc(int x, int y, int z, int w, cudaChannelFormatKind f);
cudaError_t cudaCreateTextureObject(cudaTextureObject_t* pTexObject, const cudaResourceDesc* pResDesc, const cudaTextureDesc* pTexDesc, const cudaResourceViewDesc* pResViewDesc);
cudaError_t cudaDestroyTextureObject(cudaTextureObject_t texObject);
cudaError_t cudaGetChannelDesc(cudaChannelFormatDesc* desc, cudaArray_const_t array);
cudaError_t cudaGetTextureObjectResourceDesc(cudaResourceDesc* pResDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectResourceViewDesc(cudaResourceViewDesc* pResViewDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectTextureDesc(cudaTextureDesc* pTexDesc, cudaTextureObject_t texObject);
6.28. Surface Object Management#
cudaError_t cudaCreateSurfaceObject(cudaSurfaceObject_t* pSurfObject, const cudaResourceDesc* pResDesc);
cudaError_t cudaDestroySurfaceObject(cudaSurfaceObject_t surfObject);
cudaError_t cudaGetSurfaceObjectResourceDesc(cudaResourceDesc* pResDesc, cudaSurfaceObject_t surfObject);
6.29. Version Management#
cudaError_t cudaDriverGetVersion(int* driverVersion);
cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
__device__ cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
6.30. Graph Management#
-cudaError_t cudaDeviceGetGraphMemAttribute(int device, cudaGraphMemAttributeType attr, void* value);
-cudaError_t cudaDeviceGraphMemTrim(int device);
-cudaError_t cudaDeviceSetGraphMemAttribute(int device, cudaGraphMemAttributeType attr, void* value);
__device__ cudaGraphExec_t cudaGetCurrentGraphExec(void);
cudaError_t cudaGraphAddChildGraphNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaGraph_t childGraph);
cudaError_t cudaGraphAddDependencies(cudaGraph_t graph, const cudaGraphNode_t* from, const cudaGraphNode_t* to, size_t numDependencies);
cudaError_t cudaGraphAddDependencies_v2(cudaGraph_t graph, const cudaGraphNode_t* from, const cudaGraphNode_t* to, const cudaGraphEdgeData* edgeData, size_t numDependencies);
cudaError_t cudaGraphAddEmptyNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies);
cudaError_t cudaGraphAddEventRecordNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaEvent_t event);
cudaError_t cudaGraphAddEventWaitNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaEvent_t event);
-cudaError_t cudaGraphAddExternalSemaphoresSignalNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaExternalSemaphoreSignalNodeParams* nodeParams);
-cudaError_t cudaGraphAddExternalSemaphoresWaitNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaExternalSemaphoreWaitNodeParams* nodeParams);
cudaError_t cudaGraphAddHostNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphAddKernelNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphAddMemAllocNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaMemAllocNodeParams* nodeParams);
cudaError_t cudaGraphAddMemFreeNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dptr);
cudaError_t cudaGraphAddMemcpyNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaMemcpy3DParms* pCopyParams);
cudaError_t cudaGraphAddMemcpyNode1D(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaGraphAddMemcpyNodeFromSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphAddMemcpyNodeToSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphAddMemsetNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaMemsetParams* pMemsetParams);
cudaError_t cudaGraphAddNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaGraphNodeParams* nodeParams);
cudaError_t cudaGraphAddNode_v2(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, const cudaGraphEdgeData* dependencyData, size_t numDependencies, cudaGraphNodeParams* nodeParams);
cudaError_t cudaGraphChildGraphNodeGetGraph(cudaGraphNode_t node, cudaGraph_t* pGraph);
cudaError_t cudaGraphClone(cudaGraph_t* pGraphClone, cudaGraph_t originalGraph);
-cudaError_t cudaGraphConditionalHandleCreate(cudaGraphConditionalHandle* pHandle_out, cudaGraph_t graph, unsigned int defaultLaunchValue = 0, unsigned int flags = 0);
cudaError_t cudaGraphCreate(cudaGraph_t* pGraph, unsigned int flags);
cudaError_t cudaGraphDebugDotPrint(cudaGraph_t graph, const char* path, unsigned int flags);
cudaError_t cudaGraphDestroy(cudaGraph_t graph);
cudaError_t cudaGraphDestroyNode(cudaGraphNode_t node);
cudaError_t cudaGraphEventRecordNodeGetEvent(cudaGraphNode_t node, cudaEvent_t* event_out);
cudaError_t cudaGraphEventRecordNodeSetEvent(cudaGraphNode_t node, cudaEvent_t event);
cudaError_t cudaGraphEventWaitNodeGetEvent(cudaGraphNode_t node, cudaEvent_t* event_out);
cudaError_t cudaGraphEventWaitNodeSetEvent(cudaGraphNode_t node, cudaEvent_t event);
cudaError_t cudaGraphExecChildGraphNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, cudaGraph_t childGraph);
cudaError_t cudaGraphExecDestroy(cudaGraphExec_t graphExec);
cudaError_t cudaGraphExecEventRecordNodeSetEvent(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, cudaEvent_t event);
cudaError_t cudaGraphExecEventWaitNodeSetEvent(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, cudaEvent_t event);
-cudaError_t cudaGraphExecExternalSemaphoresSignalNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, const cudaExternalSemaphoreSignalNodeParams* nodeParams);
-cudaError_t cudaGraphExecExternalSemaphoresWaitNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, const cudaExternalSemaphoreWaitNodeParams* nodeParams);
cudaError_t cudaGraphExecGetFlags(cudaGraphExec_t graphExec, unsigned long long* flags);
cudaError_t cudaGraphExecHostNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphExecKernelNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphExecMemcpyNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphExecMemcpyNodeSetParams1D(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaGraphExecMemcpyNodeSetParamsFromSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphExecMemcpyNodeSetParamsToSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphExecMemsetNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaMemsetParams* pNodeParams);
cudaError_t cudaGraphExecNodeSetParams(cudaGraphExec_t graphExec, cudaGraphNode_t node, cudaGraphNodeParams* nodeParams);
cudaError_t cudaGraphExecUpdate(cudaGraphExec_t hGraphExec, cudaGraph_t hGraph, cudaGraphExecUpdateResultInfo* resultInfo);
-cudaError_t cudaGraphExternalSemaphoresSignalNodeGetParams(cudaGraphNode_t hNode, cudaExternalSemaphoreSignalNodeParams* params_out);
-cudaError_t cudaGraphExternalSemaphoresSignalNodeSetParams(cudaGraphNode_t hNode, const cudaExternalSemaphoreSignalNodeParams* nodeParams);
-cudaError_t cudaGraphExternalSemaphoresWaitNodeGetParams(cudaGraphNode_t hNode, cudaExternalSemaphoreWaitNodeParams* params_out);
-cudaError_t cudaGraphExternalSemaphoresWaitNodeSetParams(cudaGraphNode_t hNode, const cudaExternalSemaphoreWaitNodeParams* nodeParams);
cudaError_t cudaGraphGetEdges(cudaGraph_t graph, cudaGraphNode_t* from, cudaGraphNode_t* to, size_t* numEdges);
cudaError_t cudaGraphGetEdges_v2(cudaGraph_t graph, cudaGraphNode_t* from, cudaGraphNode_t* to, cudaGraphEdgeData* edgeData, size_t* numEdges);
cudaError_t cudaGraphGetNodes(cudaGraph_t graph, cudaGraphNode_t* nodes, size_t* numNodes);
cudaError_t cudaGraphGetRootNodes(cudaGraph_t graph, cudaGraphNode_t* pRootNodes, size_t* pNumRootNodes);
cudaError_t cudaGraphHostNodeGetParams(cudaGraphNode_t node, cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphHostNodeSetParams(cudaGraphNode_t node, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphInstantiate(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, unsigned long long flags = 0);
cudaError_t cudaGraphInstantiateWithFlags(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, unsigned long long flags = 0);
cudaError_t cudaGraphInstantiateWithParams(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, cudaGraphInstantiateParams* instantiateParams);
cudaError_t cudaGraphKernelNodeCopyAttributes(cudaGraphNode_t hSrc, cudaGraphNode_t hDst);
cudaError_t cudaGraphKernelNodeGetAttribute(cudaGraphNode_t hNode, cudaKernelNodeAttrID attr, cudaKernelNodeAttrValue* value_out);
cudaError_t cudaGraphKernelNodeGetParams(cudaGraphNode_t node, cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphKernelNodeSetAttribute(cudaGraphNode_t hNode, cudaKernelNodeAttrID attr, const cudaKernelNodeAttrValue* value);
-__device__ cudaError_t cudaGraphKernelNodeSetEnabled(cudaGraphDeviceNode_t node, bool enable);
-__device__ cudaError_t cudaGraphKernelNodeSetGridDim(cudaGraphDeviceNode_t node, dim3 gridDim);
-template < typename T >__device__ cudaError_t cudaGraphKernelNodeSetParam(cudaGraphDeviceNode_t node, size_t offset, const T& value);
-__device__ cudaError_t cudaGraphKernelNodeSetParam(cudaGraphDeviceNode_t node, size_t offset, const void* value, size_t size);
cudaError_t cudaGraphKernelNodeSetParams(cudaGraphNode_t node, const cudaKernelNodeParams* pNodeParams);
-__device__ cudaError_t cudaGraphKernelNodeUpdatesApply(const cudaGraphKernelNodeUpdate* updates, size_t updateCount);
cudaError_t cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream);
-__device__ cudaError_t cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream);
cudaError_t cudaGraphMemAllocNodeGetParams(cudaGraphNode_t node, cudaMemAllocNodeParams* params_out);
cudaError_t cudaGraphMemFreeNodeGetParams(cudaGraphNode_t node, void* dptr_out);
cudaError_t cudaGraphMemcpyNodeGetParams(cudaGraphNode_t node, cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphMemcpyNodeSetParams(cudaGraphNode_t node, const cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphMemcpyNodeSetParams1D(cudaGraphNode_t node, void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaGraphMemcpyNodeSetParamsFromSymbol(cudaGraphNode_t node, void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphMemcpyNodeSetParamsToSymbol(cudaGraphNode_t node, const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphMemsetNodeGetParams(cudaGraphNode_t node, cudaMemsetParams* pNodeParams);
cudaError_t cudaGraphMemsetNodeSetParams(cudaGraphNode_t node, const cudaMemsetParams* pNodeParams);
cudaError_t cudaGraphNodeFindInClone(cudaGraphNode_t* pNode, cudaGraphNode_t originalNode, cudaGraph_t clonedGraph);
cudaError_t cudaGraphNodeGetDependencies(cudaGraphNode_t node, cudaGraphNode_t* pDependencies, size_t* pNumDependencies);
cudaError_t cudaGraphNodeGetDependencies_v2(cudaGraphNode_t node, cudaGraphNode_t* pDependencies, cudaGraphEdgeData* edgeData, size_t* pNumDependencies);
cudaError_t cudaGraphNodeGetDependentNodes(cudaGraphNode_t node, cudaGraphNode_t* pDependentNodes, size_t* pNumDependentNodes);
cudaError_t cudaGraphNodeGetDependentNodes_v2(cudaGraphNode_t node, cudaGraphNode_t* pDependentNodes, cudaGraphEdgeData* edgeData, size_t* pNumDependentNodes);
cudaError_t cudaGraphNodeGetEnabled(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, unsigned int* isEnabled);
cudaError_t cudaGraphNodeGetType(cudaGraphNode_t node, cudaGraphNodeType ** pType);
cudaError_t cudaGraphNodeSetEnabled(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, unsigned int isEnabled);
cudaError_t cudaGraphNodeSetParams(cudaGraphNode_t node, cudaGraphNodeParams* nodeParams);
cudaError_t cudaGraphReleaseUserObject(cudaGraph_t graph, cudaUserObject_t object, unsigned int count = 1);
cudaError_t cudaGraphRemoveDependencies(cudaGraph_t graph, const cudaGraphNode_t* from, const cudaGraphNode_t* to, size_t numDependencies);
cudaError_t cudaGraphRemoveDependencies_v2(cudaGraph_t graph, const cudaGraphNode_t* from, const cudaGraphNode_t* to, const cudaGraphEdgeData* edgeData, size_t numDependencies);
cudaError_t cudaGraphRetainUserObject(cudaGraph_t graph, cudaUserObject_t object, unsigned int count = 1, unsigned int flags = 0);
-__device__ void cudaGraphSetConditional(cudaGraphConditionalHandle handle, unsigned int value);
cudaError_t cudaGraphUpload(cudaGraphExec_t graphExec, cudaStream_t stream);
cudaError_t cudaUserObjectCreate(cudaUserObject_t* object_out, void* ptr, cudaHostFn_t destroy, unsigned int initialRefcount, unsigned int flags);
cudaError_t cudaUserObjectRelease(cudaUserObject_t object, unsigned int count = 1);
cudaError_t cudaUserObjectRetain(cudaUserObject_t object, unsigned int count = 1);
6.31. Driver Entry Point Access#
cudaError_t cudaGetDriverEntryPoint(const char* symbol, void** funcPtr, unsigned long long flags, cudaDriverEntryPointQueryResult ** driverStatus = NULL);
cudaError_t cudaGetDriverEntryPointByVersion(const char* symbol, void** funcPtr, unsigned int cudaVersion, unsigned long long flags, cudaDriverEntryPointQueryResult ** driverStatus = NULL);
6.32. Library Management#
-cudaError_t cudaKernelSetAttributeForDevice(cudaKernel_t kernel, cudaFuncAttribute attr, int value, int device);
-cudaError_t cudaLibraryEnumerateKernels(cudaKernel_t* kernels, unsigned int numKernels, cudaLibrary_t lib);
cudaError_t cudaLibraryGetGlobal(void** dptr, size_t* bytes, cudaLibrary_t library, const char* name);
cudaError_t cudaLibraryGetKernel(cudaKernel_t* pKernel, cudaLibrary_t library, const char* name);
-cudaError_t cudaLibraryGetKernelCount(unsigned int* count, cudaLibrary_t lib);
-cudaError_t cudaLibraryGetManaged(void** dptr, size_t* bytes, cudaLibrary_t library, const char* name);
-cudaError_t cudaLibraryGetUnifiedFunction(void** fptr, cudaLibrary_t library, const char* symbol);
-cudaError_t cudaLibraryLoadData(cudaLibrary_t* library, const void* code, cudaJitOption ** jitOptions, void** jitOptionsValues, unsigned int numJitOptions, cudaLibraryOption ** libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions);
-cudaError_t cudaLibraryLoadFromFile(cudaLibrary_t* library, const char* fileName, cudaJitOption ** jitOptions, void** jitOptionsValues, unsigned int numJitOptions, cudaLibraryOption ** libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions);
cudaError_t cudaLibraryUnload(cudaLibrary_t library);
6.33. C++ API Routines#
-class __cudaOccupancyB2DHelper
template < class T >__host__ cudaChannelFormatDesc cudaCreateChannelDesc(void);
cudaError_t cudaEventCreate(cudaEvent_t* event, unsigned int flags);
template < class T >__host__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, T* entry);
template < class T >__host__ cudaError_t cudaFuncGetName(const char** name, T* func);
template < class T >__host__ cudaError_t cudaFuncSetAttribute(T* func, cudaFuncAttribute attr, int value);
template < class T >__host__ cudaError_t cudaFuncSetCacheConfig(T* func, cudaFuncCache cacheConfig);
-template < class T >__host__ cudaError_t cudaGetKernel(cudaKernel_t* kernelPtr, T* func);
template < class T >__host__ cudaError_t cudaGetSymbolAddress(void** devPtr, const T& symbol);
template < class T >__host__ cudaError_t cudaGetSymbolSize(size_t* size, const T& symbol);
template < class T >__host__ cudaError_t cudaGraphAddMemcpyNodeFromSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dst, const T& symbol, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphAddMemcpyNodeToSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const T& symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphExecMemcpyNodeSetParamsFromSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, void* dst, const T& symbol, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphExecMemcpyNodeSetParamsToSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const T& symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphInstantiate(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, cudaGraphNode_t* pErrorNode, char* pLogBuffer, size_t bufferSize);
template < class T >__host__ cudaError_t cudaGraphMemcpyNodeSetParamsFromSymbol(cudaGraphNode_t node, void* dst, const T& symbol, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphMemcpyNodeSetParamsToSymbol(cudaGraphNode_t node, const T& symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaLaunchCooperativeKernel(T* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem = 0, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaLaunchKernel(T* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem = 0, cudaStream_t stream = 0);
-template < typename... ActTypes >__host__ cudaError_t cudaLaunchKernelEx(const cudaLaunchConfig_t* config, const cudaKernel_t kernel, ActTypes &&... args);
template < typename... ExpTypes, typename... ActTypes >__host__ cudaError_t cudaLaunchKernelEx(const cudaLaunchConfig_t* config, void (*kernel)(ExpTypes...), ActTypes &&... args);
template < class T >__host__ cudaError_t cudaLibraryGetGlobal(T** dptr, size_t* bytes, cudaLibrary_t library, const char* name);
-template < class T >__host__ cudaError_t cudaLibraryGetManaged(T** dptr, size_t* bytes, cudaLibrary_t library, const char* name);
-template < class T >__host__ cudaError_t cudaLibraryGetUnifiedFunction(T** fptr, cudaLibrary_t library, const char* symbol);
cudaError_t cudaMallocAsync(void** ptr, size_t size, cudaMemPool_t memPool, cudaStream_t stream);
cudaError_t cudaMallocHost(void** ptr, size_t size, unsigned int flags);
template < class T >__host__ cudaError_t cudaMallocManaged(T** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
template < class T >cudaError_t cudaMemAdvise(T* devPtr, size_t count, cudaMemoryAdvise advice, cudaMemLocation location);
-template < typename T, typename U >__host__ cudaError_t cudaMemcpyBatchAsync(T** dsts, U** srcs, size_t* sizes, size_t count, cudaMemcpyAttributes attr, size_t* failIdx, cudaStream_t hStream);
-template < typename T, typename U >__host__ cudaError_t cudaMemcpyBatchAsync(T** dsts, U** srcs, size_t* sizes, size_t count, cudaMemcpyAttributes* attrs, size_t* attrsIdxs, size_t numAttrs, size_t* failIdx, cudaStream_t hStream);
template < class T >__host__ cudaError_t cudaMemcpyFromSymbol(void* dst, const T& symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
template < class T >__host__ cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const T& symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaMemcpyToSymbol(const T& symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
template < class T >__host__ cudaError_t cudaMemcpyToSymbolAsync(const T& symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, T* func, int numBlocks, int blockSize);
template < class T >__host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, T func, int blockSize, size_t dynamicSMemSize);
template < class T >__host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, T func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
-template < class T >__host__ cudaError_t cudaOccupancyMaxActiveClusters(int* numClusters, T* func, const cudaLaunchConfig_t* config);
template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSize(int* minGridSize, int* blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0);
template < typename UnaryFunction, class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMem(int* minGridSize, int* blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0);
template < typename UnaryFunction, class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(int* minGridSize, int* blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0, unsigned int flags = 0);
template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeWithFlags(int* minGridSize, int* blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0, unsigned int flags = 0);
-template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialClusterSize(int* clusterSize, T* func, const cudaLaunchConfig_t* config);
template < class T >__host__ cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, T* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
6.34. Interactions with the CUDA Driver API#
cudaError_t cudaGetFuncBySymbol(cudaFunction_t* functionPtr, const void* symbolPtr);
-cudaError_t cudaGetKernel(cudaKernel_t* kernelPtr, const void* entryFuncAddr);
6.35. Profiler Control#
cudaError_t cudaProfilerStart(void);
cudaError_t cudaProfilerStop(void);
6.36. Data types used by CUDA Runtime#
-#define CUDA_EGL_MAX_PLANES
#define CUDA_IPC_HANDLE_SIZE
#define cudaArrayColorAttachment
#define cudaArrayCubemap
#define cudaArrayDefault
#define cudaArrayDeferredMapping
#define cudaArrayLayered
#define cudaArraySparse
#define cudaArraySparsePropertiesSingleMipTail
#define cudaArraySurfaceLoadStore
#define cudaArrayTextureGather
#define cudaCooperativeLaunchMultiDeviceNoPostSync
#define cudaCooperativeLaunchMultiDeviceNoPreSync
#define cudaCpuDeviceId
#define cudaDeviceBlockingSync
#define cudaDeviceLmemResizeToMax
#define cudaDeviceMapHost
#define cudaDeviceMask
#define cudaDeviceScheduleAuto
#define cudaDeviceScheduleBlockingSync
#define cudaDeviceScheduleMask
#define cudaDeviceScheduleSpin
#define cudaDeviceScheduleYield
#define cudaDeviceSyncMemops
#define cudaEventBlockingSync
#define cudaEventDefault
#define cudaEventDisableTiming
#define cudaEventInterprocess
#define cudaEventRecordDefault
#define cudaEventRecordExternal
#define cudaEventWaitDefault
#define cudaEventWaitExternal
-#define cudaExternalMemoryDedicated
-#define cudaExternalSemaphoreSignalSkipNvSciBufMemSync
-#define cudaExternalSemaphoreWaitSkipNvSciBufMemSync
#define cudaGraphKernelNodePortDefault
#define cudaGraphKernelNodePortLaunchCompletion
#define cudaGraphKernelNodePortProgrammatic
#define cudaHostAllocDefault
#define cudaHostAllocMapped
#define cudaHostAllocPortable
#define cudaHostAllocWriteCombined
#define cudaHostRegisterDefault
#define cudaHostRegisterIoMemory
#define cudaHostRegisterMapped
#define cudaHostRegisterPortable
#define cudaHostRegisterReadOnly
#define cudaInitDeviceFlagsAreValid
#define cudaInvalidDeviceId
#define cudaIpcMemLazyEnablePeerAccess
#define cudaMemAttachGlobal
#define cudaMemAttachHost
#define cudaMemAttachSingle
#define cudaMemPoolCreateUsageHwDecompress
-#define cudaNvSciSyncAttrSignal
-#define cudaNvSciSyncAttrWait
#define cudaOccupancyDefault
#define cudaOccupancyDisableCachingOverride
#define cudaPeerAccessDefault
#define cudaStreamDefault
#define cudaStreamLegacy
#define cudaStreamNonBlocking
#define cudaStreamPerThread
enum cudaAccessProperty
cudaAccessPropertyNormal = 0
cudaAccessPropertyStreaming = 1
cudaAccessPropertyPersisting = 2
-enum cudaAsyncNotificationType
-enum cudaCGScope
enum cudaChannelFormatKind
cudaChannelFormatKindSigned = 0
cudaChannelFormatKindUnsigned = 1
cudaChannelFormatKindFloat = 2
cudaChannelFormatKindNone = 3
cudaChannelFormatKindNV12 = 4
cudaChannelFormatKindUnsignedNormalized8X1 = 5
cudaChannelFormatKindUnsignedNormalized8X2 = 6
cudaChannelFormatKindUnsignedNormalized8X4 = 7
cudaChannelFormatKindUnsignedNormalized16X1 = 8
cudaChannelFormatKindUnsignedNormalized16X2 = 9
cudaChannelFormatKindUnsignedNormalized16X4 = 10
cudaChannelFormatKindSignedNormalized8X1 = 11
cudaChannelFormatKindSignedNormalized8X2 = 12
cudaChannelFormatKindSignedNormalized8X4 = 13
cudaChannelFormatKindSignedNormalized16X1 = 14
cudaChannelFormatKindSignedNormalized16X2 = 15
cudaChannelFormatKindSignedNormalized16X4 = 16
cudaChannelFormatKindUnsignedBlockCompressed1 = 17
cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18
cudaChannelFormatKindUnsignedBlockCompressed2 = 19
cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20
cudaChannelFormatKindUnsignedBlockCompressed3 = 21
cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22
cudaChannelFormatKindUnsignedBlockCompressed4 = 23
cudaChannelFormatKindSignedBlockCompressed4 = 24
cudaChannelFormatKindUnsignedBlockCompressed5 = 25
cudaChannelFormatKindSignedBlockCompressed5 = 26
cudaChannelFormatKindUnsignedBlockCompressed6H = 27
cudaChannelFormatKindSignedBlockCompressed6H = 28
cudaChannelFormatKindUnsignedBlockCompressed7 = 29
cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30
cudaChannelFormatKindUnsignedNormalized1010102 = 31
enum cudaClusterSchedulingPolicy
cudaClusterSchedulingPolicyDefault = 0
cudaClusterSchedulingPolicySpread = 1
cudaClusterSchedulingPolicyLoadBalancing = 2
enum cudaComputeMode
cudaComputeModeDefault = 0
cudaComputeModeExclusive = 1
cudaComputeModeProhibited = 2
cudaComputeModeExclusiveProcess = 3
enum cudaDeviceAttr
cudaDevAttrMaxThreadsPerBlock = 1
cudaDevAttrMaxBlockDimX = 2
cudaDevAttrMaxBlockDimY = 3
cudaDevAttrMaxBlockDimZ = 4
cudaDevAttrMaxGridDimX = 5
cudaDevAttrMaxGridDimY = 6
cudaDevAttrMaxGridDimZ = 7
cudaDevAttrMaxSharedMemoryPerBlock = 8
cudaDevAttrTotalConstantMemory = 9
cudaDevAttrWarpSize = 10
cudaDevAttrMaxPitch = 11
cudaDevAttrMaxRegistersPerBlock = 12
cudaDevAttrClockRate = 13
cudaDevAttrTextureAlignment = 14
cudaDevAttrGpuOverlap = 15
cudaDevAttrMultiProcessorCount = 16
cudaDevAttrKernelExecTimeout = 17
cudaDevAttrIntegrated = 18
cudaDevAttrCanMapHostMemory = 19
cudaDevAttrComputeMode = 20
cudaDevAttrMaxTexture1DWidth = 21
cudaDevAttrMaxTexture2DWidth = 22
cudaDevAttrMaxTexture2DHeight = 23
cudaDevAttrMaxTexture3DWidth = 24
cudaDevAttrMaxTexture3DHeight = 25
cudaDevAttrMaxTexture3DDepth = 26
cudaDevAttrMaxTexture2DLayeredWidth = 27
cudaDevAttrMaxTexture2DLayeredHeight = 28
cudaDevAttrMaxTexture2DLayeredLayers = 29
cudaDevAttrSurfaceAlignment = 30
cudaDevAttrConcurrentKernels = 31
cudaDevAttrEccEnabled = 32
cudaDevAttrPciBusId = 33
cudaDevAttrPciDeviceId = 34
cudaDevAttrTccDriver = 35
cudaDevAttrMemoryClockRate = 36
cudaDevAttrGlobalMemoryBusWidth = 37
cudaDevAttrL2CacheSize = 38
cudaDevAttrMaxThreadsPerMultiProcessor = 39
cudaDevAttrAsyncEngineCount = 40
cudaDevAttrUnifiedAddressing = 41
cudaDevAttrMaxTexture1DLayeredWidth = 42
cudaDevAttrMaxTexture1DLayeredLayers = 43
cudaDevAttrMaxTexture2DGatherWidth = 45
cudaDevAttrMaxTexture2DGatherHeight = 46
cudaDevAttrMaxTexture3DWidthAlt = 47
cudaDevAttrMaxTexture3DHeightAlt = 48
cudaDevAttrMaxTexture3DDepthAlt = 49
cudaDevAttrPciDomainId = 50
cudaDevAttrTexturePitchAlignment = 51
cudaDevAttrMaxTextureCubemapWidth = 52
cudaDevAttrMaxTextureCubemapLayeredWidth = 53
cudaDevAttrMaxTextureCubemapLayeredLayers = 54
cudaDevAttrMaxSurface1DWidth = 55
cudaDevAttrMaxSurface2DWidth = 56
cudaDevAttrMaxSurface2DHeight = 57
cudaDevAttrMaxSurface3DWidth = 58
cudaDevAttrMaxSurface3DHeight = 59
cudaDevAttrMaxSurface3DDepth = 60
cudaDevAttrMaxSurface1DLayeredWidth = 61
cudaDevAttrMaxSurface1DLayeredLayers = 62
cudaDevAttrMaxSurface2DLayeredWidth = 63
cudaDevAttrMaxSurface2DLayeredHeight = 64
cudaDevAttrMaxSurface2DLayeredLayers = 65
cudaDevAttrMaxSurfaceCubemapWidth = 66
cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67
cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68
cudaDevAttrMaxTexture1DLinearWidth = 69
cudaDevAttrMaxTexture2DLinearWidth = 70
cudaDevAttrMaxTexture2DLinearHeight = 71
cudaDevAttrMaxTexture2DLinearPitch = 72
cudaDevAttrMaxTexture2DMipmappedWidth = 73
cudaDevAttrMaxTexture2DMipmappedHeight = 74
cudaDevAttrComputeCapabilityMajor = 75
cudaDevAttrComputeCapabilityMinor = 76
cudaDevAttrMaxTexture1DMipmappedWidth = 77
cudaDevAttrStreamPrioritiesSupported = 78
cudaDevAttrGlobalL1CacheSupported = 79
cudaDevAttrLocalL1CacheSupported = 80
cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81
cudaDevAttrMaxRegistersPerMultiprocessor = 82
cudaDevAttrManagedMemory = 83
cudaDevAttrIsMultiGpuBoard = 84
cudaDevAttrMultiGpuBoardGroupID = 85
cudaDevAttrHostNativeAtomicSupported = 86
cudaDevAttrSingleToDoublePrecisionPerfRatio = 87
cudaDevAttrPageableMemoryAccess = 88
cudaDevAttrConcurrentManagedAccess = 89
cudaDevAttrComputePreemptionSupported = 90
cudaDevAttrCanUseHostPointerForRegisteredMem = 91
cudaDevAttrReserved92 = 92
cudaDevAttrReserved93 = 93
cudaDevAttrReserved94 = 94
cudaDevAttrCooperativeLaunch = 95
cudaDevAttrCooperativeMultiDeviceLaunch = 96
cudaDevAttrMaxSharedMemoryPerBlockOptin = 97
cudaDevAttrCanFlushRemoteWrites = 98
cudaDevAttrHostRegisterSupported = 99
cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100
cudaDevAttrDirectManagedMemAccessFromHost = 101
cudaDevAttrMaxBlocksPerMultiprocessor = 106
cudaDevAttrMaxPersistingL2CacheSize = 108
cudaDevAttrMaxAccessPolicyWindowSize = 109
cudaDevAttrReservedSharedMemoryPerBlock = 111
cudaDevAttrSparseCudaArraySupported = 112
cudaDevAttrHostRegisterReadOnlySupported = 113
cudaDevAttrTimelineSemaphoreInteropSupported = 114
cudaDevAttrMaxTimelineSemaphoreInteropSupported = 114
cudaDevAttrMemoryPoolsSupported = 115
cudaDevAttrGPUDirectRDMASupported = 116
cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117
cudaDevAttrGPUDirectRDMAWritesOrdering = 118
cudaDevAttrMemoryPoolSupportedHandleTypes = 119
cudaDevAttrClusterLaunch = 120
cudaDevAttrDeferredMappingCudaArraySupported = 121
cudaDevAttrReserved122 = 122
cudaDevAttrReserved123 = 123
cudaDevAttrReserved124 = 124
cudaDevAttrIpcEventSupport = 125
cudaDevAttrMemSyncDomainCount = 126
cudaDevAttrReserved127 = 127
cudaDevAttrReserved128 = 128
cudaDevAttrReserved129 = 129
cudaDevAttrNumaConfig = 130
cudaDevAttrNumaId = 131
cudaDevAttrReserved132 = 132
cudaDevAttrMpsEnabled = 133
cudaDevAttrHostNumaId = 134
cudaDevAttrD3D12CigSupported = 135
cudaDevAttrVulkanCigSupported = 138
cudaDevAttrGpuPciDeviceId = 139
cudaDevAttrGpuPciSubsystemId = 140
cudaDevAttrReserved141 = 141
cudaDevAttrHostNumaMemoryPoolsSupported = 142
cudaDevAttrHostNumaMultinodeIpcSupported = 143
- cudaDevAttrMax = 144
enum cudaDeviceNumaConfig
cudaDeviceNumaConfigNone = 0
cudaDeviceNumaConfigNumaNode = 1
enum cudaDeviceP2PAttr
cudaDevP2PAttrPerformanceRank = 1
cudaDevP2PAttrAccessSupported = 2
cudaDevP2PAttrNativeAtomicSupported = 3
cudaDevP2PAttrCudaArrayAccessSupported = 4
enum cudaDriverEntryPointQueryResult
cudaDriverEntryPointSuccess = 0
cudaDriverEntryPointSymbolNotFound = 1
cudaDriverEntryPointVersionNotSufficent = 2
-enum cudaEglColorFormat
-enum cudaEglFrameType
-enum cudaEglResourceLocationFlags
enum cudaError
cudaSuccess = 0
cudaErrorInvalidValue = 1
cudaErrorMemoryAllocation = 2
cudaErrorInitializationError = 3
cudaErrorCudartUnloading = 4
cudaErrorProfilerDisabled = 5
cudaErrorProfilerNotInitialized = 6
cudaErrorProfilerAlreadyStarted = 7
cudaErrorProfilerAlreadyStopped = 8
cudaErrorInvalidConfiguration = 9
cudaErrorInvalidPitchValue = 12
cudaErrorInvalidSymbol = 13
cudaErrorInvalidHostPointer = 16
cudaErrorInvalidDevicePointer = 17
cudaErrorInvalidTexture = 18
cudaErrorInvalidTextureBinding = 19
cudaErrorInvalidChannelDescriptor = 20
cudaErrorInvalidMemcpyDirection = 21
cudaErrorAddressOfConstant = 22
cudaErrorTextureFetchFailed = 23
cudaErrorTextureNotBound = 24
cudaErrorSynchronizationError = 25
cudaErrorInvalidFilterSetting = 26
cudaErrorInvalidNormSetting = 27
cudaErrorMixedDeviceExecution = 28
cudaErrorNotYetImplemented = 31
cudaErrorMemoryValueTooLarge = 32
cudaErrorStubLibrary = 34
cudaErrorInsufficientDriver = 35
cudaErrorCallRequiresNewerDriver = 36
cudaErrorInvalidSurface = 37
cudaErrorDuplicateVariableName = 43
cudaErrorDuplicateTextureName = 44
cudaErrorDuplicateSurfaceName = 45
cudaErrorDevicesUnavailable = 46
cudaErrorIncompatibleDriverContext = 49
cudaErrorMissingConfiguration = 52
cudaErrorPriorLaunchFailure = 53
cudaErrorLaunchMaxDepthExceeded = 65
cudaErrorLaunchFileScopedTex = 66
cudaErrorLaunchFileScopedSurf = 67
cudaErrorSyncDepthExceeded = 68
cudaErrorLaunchPendingCountExceeded = 69
cudaErrorInvalidDeviceFunction = 98
cudaErrorNoDevice = 100
cudaErrorInvalidDevice = 101
cudaErrorDeviceNotLicensed = 102
cudaErrorSoftwareValidityNotEstablished = 103
cudaErrorStartupFailure = 127
cudaErrorInvalidKernelImage = 200
cudaErrorDeviceUninitialized = 201
cudaErrorMapBufferObjectFailed = 205
cudaErrorUnmapBufferObjectFailed = 206
cudaErrorArrayIsMapped = 207
cudaErrorAlreadyMapped = 208
cudaErrorNoKernelImageForDevice = 209
cudaErrorAlreadyAcquired = 210
cudaErrorNotMapped = 211
cudaErrorNotMappedAsArray = 212
cudaErrorNotMappedAsPointer = 213
cudaErrorECCUncorrectable = 214
cudaErrorUnsupportedLimit = 215
cudaErrorDeviceAlreadyInUse = 216
cudaErrorPeerAccessUnsupported = 217
cudaErrorInvalidPtx = 218
cudaErrorInvalidGraphicsContext = 219
cudaErrorNvlinkUncorrectable = 220
cudaErrorJitCompilerNotFound = 221
cudaErrorUnsupportedPtxVersion = 222
cudaErrorJitCompilationDisabled = 223
cudaErrorUnsupportedExecAffinity = 224
cudaErrorUnsupportedDevSideSync = 225
cudaErrorContained = 226
cudaErrorInvalidSource = 300
cudaErrorFileNotFound = 301
cudaErrorSharedObjectSymbolNotFound = 302
cudaErrorSharedObjectInitFailed = 303
cudaErrorOperatingSystem = 304
cudaErrorInvalidResourceHandle = 400
cudaErrorIllegalState = 401
cudaErrorLossyQuery = 402
cudaErrorSymbolNotFound = 500
cudaErrorNotReady = 600
cudaErrorIllegalAddress = 700
cudaErrorLaunchOutOfResources = 701
cudaErrorLaunchTimeout = 702
cudaErrorLaunchIncompatibleTexturing = 703
cudaErrorPeerAccessAlreadyEnabled = 704
cudaErrorPeerAccessNotEnabled = 705
cudaErrorSetOnActiveProcess = 708
cudaErrorContextIsDestroyed = 709
cudaErrorAssert = 710
cudaErrorTooManyPeers = 711
cudaErrorHostMemoryAlreadyRegistered = 712
cudaErrorHostMemoryNotRegistered = 713
cudaErrorHardwareStackError = 714
cudaErrorIllegalInstruction = 715
cudaErrorMisalignedAddress = 716
cudaErrorInvalidAddressSpace = 717
cudaErrorInvalidPc = 718
cudaErrorLaunchFailure = 719
cudaErrorCooperativeLaunchTooLarge = 720
cudaErrorTensorMemoryLeak = 721
cudaErrorNotPermitted = 800
cudaErrorNotSupported = 801
cudaErrorSystemNotReady = 802
cudaErrorSystemDriverMismatch = 803
cudaErrorCompatNotSupportedOnDevice = 804
cudaErrorMpsConnectionFailed = 805
cudaErrorMpsRpcFailure = 806
cudaErrorMpsServerNotReady = 807
cudaErrorMpsMaxClientsReached = 808
cudaErrorMpsMaxConnectionsReached = 809
cudaErrorMpsClientTerminated = 810
cudaErrorCdpNotSupported = 811
cudaErrorCdpVersionMismatch = 812
cudaErrorStreamCaptureUnsupported = 900
cudaErrorStreamCaptureInvalidated = 901
cudaErrorStreamCaptureMerge = 902
cudaErrorStreamCaptureUnmatched = 903
cudaErrorStreamCaptureUnjoined = 904
cudaErrorStreamCaptureIsolation = 905
cudaErrorStreamCaptureImplicit = 906
cudaErrorCapturedEvent = 907
cudaErrorStreamCaptureWrongThread = 908
cudaErrorTimeout = 909
cudaErrorGraphExecUpdateFailure = 910
cudaErrorExternalDevice = 911
cudaErrorInvalidClusterSize = 912
cudaErrorFunctionNotLoaded = 913
cudaErrorInvalidResourceType = 914
cudaErrorInvalidResourceConfiguration = 915
cudaErrorUnknown = 999
cudaErrorApiFailureBase = 10000
-enum cudaExternalMemoryHandleType
-enum cudaExternalSemaphoreHandleType
enum cudaFlushGPUDirectRDMAWritesOptions
cudaFlushGPUDirectRDMAWritesOptionHost = 1
cudaFlushGPUDirectRDMAWritesOptionMemOps = 2
enum cudaFlushGPUDirectRDMAWritesScope
cudaFlushGPUDirectRDMAWritesToOwner = 100
cudaFlushGPUDirectRDMAWritesToAllDevices = 200
enum cudaFlushGPUDirectRDMAWritesTarget
cudaFlushGPUDirectRDMAWritesTargetCurrentDevice = 0
enum cudaFuncAttribute
cudaFuncAttributeMaxDynamicSharedMemorySize = 8
cudaFuncAttributePreferredSharedMemoryCarveout = 9
cudaFuncAttributeClusterDimMustBeSet = 10
cudaFuncAttributeRequiredClusterWidth = 11
cudaFuncAttributeRequiredClusterHeight = 12
cudaFuncAttributeRequiredClusterDepth = 13
cudaFuncAttributeNonPortableClusterSizeAllowed = 14
cudaFuncAttributeClusterSchedulingPolicyPreference = 15
cudaFuncAttributeMax = 16
enum cudaFuncCache
cudaFuncCachePreferNone = 0
cudaFuncCachePreferShared = 1
cudaFuncCachePreferL1 = 2
cudaFuncCachePreferEqual = 3
enum cudaGPUDirectRDMAWritesOrdering
cudaGPUDirectRDMAWritesOrderingNone = 0
cudaGPUDirectRDMAWritesOrderingOwner = 100
cudaGPUDirectRDMAWritesOrderingAllDevices = 200
enum cudaGetDriverEntryPointFlags
cudaEnableDefault = 0
cudaEnableLegacyStream = 1
cudaEnablePerThreadDefaultStream = 2
enum cudaGraphChildGraphNodeOwnership
cudaGraphChildGraphOwnershipClone = 0
cudaGraphChildGraphOwnershipMove = 1
-enum cudaGraphConditionalNodeType
enum cudaGraphDebugDotFlags
cudaGraphDebugDotFlagsVerbose = 1
cudaGraphDebugDotFlagsKernelNodeParams = 4
cudaGraphDebugDotFlagsMemcpyNodeParams = 8
cudaGraphDebugDotFlagsMemsetNodeParams = 16
cudaGraphDebugDotFlagsHostNodeParams = 32
cudaGraphDebugDotFlagsEventNodeParams = 64
cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 128
cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 256
cudaGraphDebugDotFlagsKernelNodeAttributes = 512
cudaGraphDebugDotFlagsHandles = 1024
cudaGraphDebugDotFlagsConditionalNodeParams = 32768
enum cudaGraphDependencyType
cudaGraphDependencyTypeDefault = 0
cudaGraphDependencyTypeProgrammatic = 1
enum cudaGraphExecUpdateResult
cudaGraphExecUpdateSuccess = 0
cudaGraphExecUpdateError = 1
cudaGraphExecUpdateErrorTopologyChanged = 2
cudaGraphExecUpdateErrorNodeTypeChanged = 3
cudaGraphExecUpdateErrorFunctionChanged = 4
cudaGraphExecUpdateErrorParametersChanged = 5
cudaGraphExecUpdateErrorNotSupported = 6
cudaGraphExecUpdateErrorUnsupportedFunctionChange = 7
cudaGraphExecUpdateErrorAttributesChanged = 8
enum cudaGraphInstantiateFlags
cudaGraphInstantiateFlagAutoFreeOnLaunch = 1
cudaGraphInstantiateFlagUpload = 2
cudaGraphInstantiateFlagDeviceLaunch = 4
cudaGraphInstantiateFlagUseNodePriority = 8
enum cudaGraphInstantiateResult
cudaGraphInstantiateSuccess = 0
cudaGraphInstantiateError = 1
cudaGraphInstantiateInvalidStructure = 2
cudaGraphInstantiateNodeOperationNotSupported = 3
cudaGraphInstantiateMultipleDevicesNotSupported = 4
cudaGraphInstantiateConditionalHandleUnused = 5
-enum cudaGraphKernelNodeField
-enum cudaGraphMemAttributeType
enum cudaGraphNodeType
cudaGraphNodeTypeKernel = 0
cudaGraphNodeTypeMemcpy = 1
cudaGraphNodeTypeMemset = 2
cudaGraphNodeTypeHost = 3
cudaGraphNodeTypeGraph = 4
cudaGraphNodeTypeEmpty = 5
cudaGraphNodeTypeWaitEvent = 6
cudaGraphNodeTypeEventRecord = 7
cudaGraphNodeTypeExtSemaphoreSignal = 8
cudaGraphNodeTypeExtSemaphoreWait = 9
cudaGraphNodeTypeMemAlloc = 10
cudaGraphNodeTypeMemFree = 11
cudaGraphNodeTypeConditional = 13
cudaGraphNodeTypeCount = 14
enum cudaGraphicsCubeFace
cudaGraphicsCubeFacePositiveX = 0
cudaGraphicsCubeFaceNegativeX = 1
cudaGraphicsCubeFacePositiveY = 2
cudaGraphicsCubeFaceNegativeY = 3
cudaGraphicsCubeFacePositiveZ = 4
cudaGraphicsCubeFaceNegativeZ = 5
enum cudaGraphicsMapFlags
cudaGraphicsMapFlagsNone = 0
cudaGraphicsMapFlagsReadOnly = 1
cudaGraphicsMapFlagsWriteDiscard = 2
enum cudaGraphicsRegisterFlags
cudaGraphicsRegisterFlagsNone = 0
cudaGraphicsRegisterFlagsReadOnly = 1
cudaGraphicsRegisterFlagsWriteDiscard = 2
cudaGraphicsRegisterFlagsSurfaceLoadStore = 4
cudaGraphicsRegisterFlagsTextureGather = 8
-enum cudaJitOption
-enum cudaJit_CacheMode
-enum cudaJit_Fallback
enum cudaLaunchAttributeID
cudaLaunchAttributeIgnore = 0
cudaLaunchAttributeAccessPolicyWindow = 1
cudaLaunchAttributeCooperative = 2
cudaLaunchAttributeSynchronizationPolicy = 3
cudaLaunchAttributeClusterDimension = 4
cudaLaunchAttributeClusterSchedulingPolicyPreference = 5
cudaLaunchAttributeProgrammaticStreamSerialization = 6
cudaLaunchAttributeProgrammaticEvent = 7
cudaLaunchAttributePriority = 8
cudaLaunchAttributeMemSyncDomainMap = 9
cudaLaunchAttributeMemSyncDomain = 10
cudaLaunchAttributePreferredClusterDimension = 11
cudaLaunchAttributeLaunchCompletionEvent = 12
cudaLaunchAttributeDeviceUpdatableKernelNode = 13
cudaLaunchAttributePreferredSharedMemoryCarveout = 14
enum cudaLaunchMemSyncDomain
cudaLaunchMemSyncDomainDefault = 0
cudaLaunchMemSyncDomainRemote = 1
-enum cudaLibraryOption
enum cudaLimit
cudaLimitStackSize = 0
cudaLimitPrintfFifoSize = 1
cudaLimitMallocHeapSize = 2
cudaLimitDevRuntimeSyncDepth = 3
cudaLimitDevRuntimePendingLaunchCount = 4
cudaLimitMaxL2FetchGranularity = 5
cudaLimitPersistingL2CacheSize = 6
enum cudaMemAccessFlags
cudaMemAccessFlagsProtNone = 0
cudaMemAccessFlagsProtRead = 1
cudaMemAccessFlagsProtReadWrite = 3
enum cudaMemAllocationHandleType
cudaMemHandleTypeNone = 0
cudaMemHandleTypePosixFileDescriptor = 1
cudaMemHandleTypeWin32 = 2
cudaMemHandleTypeWin32Kmt = 4
cudaMemHandleTypeFabric = 8
enum cudaMemAllocationType
cudaMemAllocationTypeInvalid = 0
cudaMemAllocationTypePinned = 1
cudaMemAllocationTypeMax = 2147483647
enum cudaMemLocationType
cudaMemLocationTypeInvalid = 0
cudaMemLocationTypeDevice = 1
cudaMemLocationTypeHost = 2
cudaMemLocationTypeHostNuma = 3
cudaMemLocationTypeHostNumaCurrent = 4
enum cudaMemPoolAttr
cudaMemPoolReuseFollowEventDependencies = 1
cudaMemPoolReuseAllowOpportunistic = 2
cudaMemPoolReuseAllowInternalDependencies = 3
cudaMemPoolAttrReleaseThreshold = 4
cudaMemPoolAttrReservedMemCurrent = 5
cudaMemPoolAttrReservedMemHigh = 6
cudaMemPoolAttrUsedMemCurrent = 7
cudaMemPoolAttrUsedMemHigh = 8
enum cudaMemRangeAttribute
cudaMemRangeAttributeReadMostly = 1
cudaMemRangeAttributePreferredLocation = 2
cudaMemRangeAttributeAccessedBy = 3
cudaMemRangeAttributeLastPrefetchLocation = 4
cudaMemRangeAttributePreferredLocationType = 5
cudaMemRangeAttributePreferredLocationId = 6
cudaMemRangeAttributeLastPrefetchLocationType = 7
cudaMemRangeAttributeLastPrefetchLocationId = 8
enum cudaMemcpy3DOperandType
cudaMemcpyOperandTypePointer = 1
cudaMemcpyOperandTypeArray = 2
cudaMemcpyOperandTypeMax = 2147483647
enum cudaMemcpyFlags
cudaMemcpyFlagDefault = 0
cudaMemcpyFlagPreferOverlapWithCompute = 1
enum cudaMemcpyKind
cudaMemcpyHostToHost = 0
cudaMemcpyHostToDevice = 1
cudaMemcpyDeviceToHost = 2
cudaMemcpyDeviceToDevice = 3
cudaMemcpyDefault = 4
enum cudaMemoryAdvise
cudaMemAdviseSetReadMostly = 1
cudaMemAdviseUnsetReadMostly = 2
cudaMemAdviseSetPreferredLocation = 3
cudaMemAdviseUnsetPreferredLocation = 4
cudaMemAdviseSetAccessedBy = 5
cudaMemAdviseUnsetAccessedBy = 6
enum cudaMemoryType
cudaMemoryTypeUnregistered = 0
cudaMemoryTypeHost = 1
cudaMemoryTypeDevice = 2
cudaMemoryTypeManaged = 3
enum cudaResourceType
cudaResourceTypeArray = 0
cudaResourceTypeMipmappedArray = 1
cudaResourceTypeLinear = 2
cudaResourceTypePitch2D = 3
enum cudaResourceViewFormat
cudaResViewFormatNone = 0
cudaResViewFormatUnsignedChar1 = 1
cudaResViewFormatUnsignedChar2 = 2
cudaResViewFormatUnsignedChar4 = 3
cudaResViewFormatSignedChar1 = 4
cudaResViewFormatSignedChar2 = 5
cudaResViewFormatSignedChar4 = 6
cudaResViewFormatUnsignedShort1 = 7
cudaResViewFormatUnsignedShort2 = 8
cudaResViewFormatUnsignedShort4 = 9
cudaResViewFormatSignedShort1 = 10
cudaResViewFormatSignedShort2 = 11
cudaResViewFormatSignedShort4 = 12
cudaResViewFormatUnsignedInt1 = 13
cudaResViewFormatUnsignedInt2 = 14
cudaResViewFormatUnsignedInt4 = 15
cudaResViewFormatSignedInt1 = 16
cudaResViewFormatSignedInt2 = 17
cudaResViewFormatSignedInt4 = 18
cudaResViewFormatHalf1 = 19
cudaResViewFormatHalf2 = 20
cudaResViewFormatHalf4 = 21
cudaResViewFormatFloat1 = 22
cudaResViewFormatFloat2 = 23
cudaResViewFormatFloat4 = 24
cudaResViewFormatUnsignedBlockCompressed1 = 25
cudaResViewFormatUnsignedBlockCompressed2 = 26
cudaResViewFormatUnsignedBlockCompressed3 = 27
cudaResViewFormatUnsignedBlockCompressed4 = 28
cudaResViewFormatSignedBlockCompressed4 = 29
cudaResViewFormatUnsignedBlockCompressed5 = 30
cudaResViewFormatSignedBlockCompressed5 = 31
cudaResViewFormatUnsignedBlockCompressed6H = 32
cudaResViewFormatSignedBlockCompressed6H = 33
cudaResViewFormatUnsignedBlockCompressed7 = 34
enum cudaSharedCarveout
cudaSharedmemCarveoutDefault = 18446744073709551615
cudaSharedmemCarveoutMaxShared = 100
cudaSharedmemCarveoutMaxL1 = 0
enum cudaSharedMemConfig
cudaSharedMemBankSizeDefault = 0
cudaSharedMemBankSizeFourByte = 1
cudaSharedMemBankSizeEightByte = 2
enum cudaStreamCaptureMode
cudaStreamCaptureModeGlobal = 0
cudaStreamCaptureModeThreadLocal = 1
cudaStreamCaptureModeRelaxed = 2
enum cudaStreamCaptureStatus
cudaStreamCaptureStatusNone = 0
cudaStreamCaptureStatusActive = 1
cudaStreamCaptureStatusInvalidated = 2
enum cudaStreamUpdateCaptureDependenciesFlags
cudaStreamAddCaptureDependencies = 0
cudaStreamSetCaptureDependencies = 1
enum cudaSurfaceBoundaryMode
cudaBoundaryModeZero = 0
cudaBoundaryModeClamp = 1
cudaBoundaryModeTrap = 2
enum cudaSurfaceFormatMode
cudaFormatModeForced = 0
cudaFormatModeAuto = 1
enum cudaTextureAddressMode
cudaAddressModeWrap = 0
cudaAddressModeClamp = 1
cudaAddressModeMirror = 2
cudaAddressModeBorder = 3
enum cudaTextureFilterMode
cudaFilterModePoint = 0
cudaFilterModeLinear = 1
enum cudaTextureReadMode
cudaReadModeElementType = 0
cudaReadModeNormalizedFloat = 1
enum cudaUserObjectFlags
cudaUserObjectNoDestructorSync = 1
enum cudaUserObjectRetainFlags
cudaGraphUserObjectMove = 1
struct CUuuid_st
struct cudaAccessPolicyWindow
base_ptr
hitProp
hitRatio
missProp
num_bytes
struct cudaArrayMemoryRequirements
alignment
size
struct cudaArraySparseProperties
depth
flags
height
miptailFirstLevel
miptailSize
width
-struct cudaAsyncNotificationInfo_t
struct cudaChannelFormatDesc
f
w
x
y
z
struct cudaChildGraphNodeParams
graph
ownership
-struct cudaConditionalNodeParams
struct cudaDeviceProp
ECCEnabled
accessPolicyMaxWindowSize
asyncEngineCount
canMapHostMemory
canUseHostPointerForRegisteredMem
clockRate
clusterLaunch
computeMode
computePreemptionSupported
concurrentKernels
concurrentManagedAccess
cooperativeLaunch
cooperativeMultiDeviceLaunch
deferredMappingCudaArraySupported
deviceOverlap
directManagedMemAccessFromHost
globalL1CacheSupported
gpuDirectRDMAFlushWritesOptions
gpuDirectRDMASupported
gpuDirectRDMAWritesOrdering
hostNativeAtomicSupported
hostRegisterReadOnlySupported
hostRegisterSupported
integrated
ipcEventSupported
isMultiGpuBoard
kernelExecTimeoutEnabled
l2CacheSize
localL1CacheSupported
luid
luidDeviceNodeMask
major
managedMemory
maxBlocksPerMultiProcessor
maxGridSize
maxSurface1D
maxSurface1DLayered
maxSurface2D
maxSurface2DLayered
maxSurface3D
maxSurfaceCubemap
maxSurfaceCubemapLayered
maxTexture1D
maxTexture1DLayered
maxTexture1DLinear
maxTexture1DMipmap
maxTexture2D
maxTexture2DGather
maxTexture2DLayered
maxTexture2DLinear
maxTexture2DMipmap
maxTexture3D
maxTexture3DAlt
maxTextureCubemap
maxTextureCubemapLayered
maxThreadsDim
maxThreadsPerBlock
maxThreadsPerMultiProcessor
memPitch
memoryBusWidth
memoryClockRate
memoryPoolSupportedHandleTypes
memoryPoolsSupported
minor
multiGpuBoardGroupID
multiProcessorCount
name
pageableMemoryAccess
pageableMemoryAccessUsesHostPageTables
pciBusID
pciDeviceID
pciDomainID
persistingL2CacheMaxSize
regsPerBlock
regsPerMultiprocessor
- reserved
reservedSharedMemPerBlock
sharedMemPerBlock
sharedMemPerBlockOptin
sharedMemPerMultiprocessor
singleToDoublePrecisionPerfRatio
sparseCudaArraySupported
streamPrioritiesSupported
surfaceAlignment
tccDriver
textureAlignment
texturePitchAlignment
timelineSemaphoreInteropSupported
totalConstMem
totalGlobalMem
unifiedAddressing
unifiedFunctionPointers
uuid
warpSize
-struct cudaEglFrame
-struct cudaEglPlaneDesc
struct cudaEventRecordNodeParams
event
struct cudaEventWaitNodeParams
event
struct cudaExtent
depth
height
width
-struct cudaExternalMemoryBufferDesc
struct cudaExternalMemoryHandleDesc
-struct cudaExternalMemoryMipmappedArrayDesc
struct cudaExternalSemaphoreHandleDesc
-struct cudaExternalSemaphoreSignalNodeParams
-struct cudaExternalSemaphoreSignalNodeParamsV2
struct cudaExternalSemaphoreSignalParams
struct cudaExternalSemaphoreSignalParams_v1
-struct cudaExternalSemaphoreWaitNodeParams
-struct cudaExternalSemaphoreWaitNodeParamsV2
struct cudaExternalSemaphoreWaitParams
struct cudaExternalSemaphoreWaitParams_v1
struct cudaFuncAttributes
binaryVersion
cacheModeCA
clusterDimMustBeSet
clusterSchedulingPolicyPreference
constSizeBytes
localSizeBytes
maxDynamicSharedSizeBytes
maxThreadsPerBlock
nonPortableClusterSizeAllowed
numRegs
preferredShmemCarveout
ptxVersion
requiredClusterWidth
reserved
sharedSizeBytes
struct cudaGraphEdgeData
from_port
reserved
to_port
type
struct cudaGraphExecUpdateResultInfo
errorFromNode
errorNode
result
struct cudaGraphInstantiateParams
errNode_out
flags
result_out
uploadStream
struct cudaGraphKernelNodeUpdate
struct cudaGraphNodeParams
alloc
- conditional
eventRecord
eventWait
- extSemSignal
- extSemWait
free
graph
host
kernel
memcpy
- memset
reserved0
reserved1
reserved2
type
struct cudaHostNodeParams
fn
userData
struct cudaHostNodeParamsV2
fn
userData
struct cudaIpcEventHandle_t
struct cudaIpcMemHandle_t
struct cudaKernelNodeParams
blockDim
extra
func
gridDim
kernelParams
sharedMemBytes
struct cudaKernelNodeParamsV2
blockDim
extra
func
gridDim
kernelParams
sharedMemBytes
struct cudaLaunchAttribute
id
val
union cudaLaunchAttributeValue
struct cudaLaunchConfig_t
attrs
blockDim
dynamicSmemBytes
gridDim
numAttrs
stream
struct cudaLaunchMemSyncDomainMap
default_
remote
struct cudaLaunchParams
args
blockDim
func
gridDim
sharedMem
stream
struct cudaMemAccessDesc
flags
location
struct cudaMemAllocNodeParams
accessDescCount
accessDescs
bytesize
dptr
poolProps
struct cudaMemAllocNodeParamsV2
accessDescCount
accessDescs
bytesize
dptr
poolProps
struct cudaMemFreeNodeParams
dptr
struct cudaMemLocation
id
type
struct cudaMemPoolProps
allocType
handleTypes
location
maxSize
reserved
usage
win32SecurityAttributes
struct cudaMemPoolPtrExportData
struct cudaMemcpy3DOperand
struct cudaMemcpy3DParms
dstArray
dstPos
dstPtr
extent
kind
srcArray
srcPos
srcPtr
struct cudaMemcpy3DPeerParms
dstArray
dstDevice
dstPos
dstPtr
extent
srcArray
srcDevice
srcPos
srcPtr
struct cudaMemcpyAttributes
dstLocHint
flags
srcAccessOrder
srcLocHint
struct cudaMemcpyNodeParams
copyParams
flags
reserved
struct cudaMemsetParams
dst
elementSize
height
pitch
value
width
struct cudaMemsetParamsV2
dst
elementSize
height
pitch
value
width
struct cudaOffset3D
struct cudaPitchedPtr
pitch
ptr
xsize
ysize
struct cudaPointerAttributes
device
devicePointer
hostPointer
type
struct cudaPos
x
y
z
struct cudaResourceDesc
array
desc
devPtr
height
mipmap
pitchInBytes
resType
sizeInBytes
width
struct cudaResourceViewDesc
depth
firstLayer
firstMipmapLevel
format
height
lastLayer
lastMipmapLevel
width
struct cudaTextureDesc
addressMode
borderColor
disableTrilinearOptimization
filterMode
maxAnisotropy
maxMipmapLevelClamp
minMipmapLevelClamp
mipmapFilterMode
mipmapLevelBias
normalizedCoords
readMode
sRGB
seamlessCubemap
typedef const cudaArray * cudaArray_const_t;
typedef cudaArray * cudaArray_t;
-typedef cudaAsyncCallbackEntry * cudaAsyncCallbackHandle_t;
-typedef CUeglStreamConnection_st * cudaEglStreamConnection;
typedef enum cudaError cudaError_t;
typedef CUevent_st * cudaEvent_t;
-typedef CUexternalMemory_st * cudaExternalMemory_t;
-typedef CUexternalSemaphore_st * cudaExternalSemaphore_t;
typedef CUfunc_st * cudaFunction_t;
-typedef unsigned long long cudaGraphConditionalHandle;
typedef CUgraphDeviceUpdatableNode_st * cudaGraphDeviceNode_t;
typedef CUgraphExec_st * cudaGraphExec_t;
typedef CUgraphNode_st * cudaGraphNode_t;
typedef CUgraph_st * cudaGraph_t;
typedef cudaGraphicsResource * cudaGraphicsResource_t;
typedef void(* cudaHostFn_t)(void* userData);
typedef CUkern_st * cudaKernel_t;
typedef CUlib_st * cudaLibrary_t;
typedef CUmemPoolHandle_st * cudaMemPool_t;
typedef const cudaMipmappedArray * cudaMipmappedArray_const_t;
typedef cudaMipmappedArray * cudaMipmappedArray_t;
typedef CUstream_st * cudaStream_t;
typedef unsigned long long cudaSurfaceObject_t;
typedef unsigned long long cudaTextureObject_t;
typedef CUuserObject_st * cudaUserObject_t;
76% (527 of 691 declarations available)
6.1. Device Management#
cudaError_t cudaChooseDevice(int* device, const cudaDeviceProp* prop);
cudaError_t cudaDeviceFlushGPUDirectRDMAWrites(cudaFlushGPUDirectRDMAWritesTarget target, cudaFlushGPUDirectRDMAWritesScope scope);
cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
__device__ cudaError_t cudaDeviceGetAttribute(int* value, cudaDeviceAttr attr, int device);
cudaError_t cudaDeviceGetByPCIBusId(int* device, const char* pciBusId);
cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache ** pCacheConfig);
__device__ cudaError_t cudaDeviceGetCacheConfig(cudaFuncCache ** pCacheConfig);
cudaError_t cudaDeviceGetDefaultMemPool(cudaMemPool_t* memPool, int device);
-cudaError_t cudaDeviceGetHostAtomicCapabilities(unsigned int* capabilities, const cudaAtomicOperation ** operations, unsigned int count, int device);
cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
__device__ cudaError_t cudaDeviceGetLimit(size_t* pValue, cudaLimit limit);
cudaError_t cudaDeviceGetMemPool(cudaMemPool_t* memPool, int device);
-cudaError_t cudaDeviceGetNvSciSyncAttributes(void* nvSciSyncAttrList, int device, int flags);
-cudaError_t cudaDeviceGetP2PAtomicCapabilities(unsigned int* capabilities, const cudaAtomicOperation ** operations, unsigned int count, int srcDevice, int dstDevice);
cudaError_t cudaDeviceGetP2PAttribute(int* value, cudaDeviceP2PAttr attr, int srcDevice, int dstDevice);
cudaError_t cudaDeviceGetPCIBusId(char* pciBusId, int len, int device);
cudaError_t cudaDeviceGetStreamPriorityRange(int* leastPriority, int* greatestPriority);
cudaError_t cudaDeviceGetTexture1DLinearMaxWidth(size_t* maxWidthInElements, const cudaChannelFormatDesc* fmtDesc, int device);
-cudaError_t cudaDeviceRegisterAsyncNotification(int device, cudaAsyncCallback callbackFunc, void* userData, cudaAsyncCallbackHandle_t* callback);
cudaError_t cudaDeviceReset(void);
cudaError_t cudaDeviceSetCacheConfig(cudaFuncCache cacheConfig);
cudaError_t cudaDeviceSetLimit(cudaLimit limit, size_t value);
cudaError_t cudaDeviceSetMemPool(int device, cudaMemPool_t memPool);
cudaError_t cudaDeviceSynchronize(void);
-__device__ cudaError_t cudaDeviceSynchronize(void);
-cudaError_t cudaDeviceUnregisterAsyncNotification(int device, cudaAsyncCallbackHandle_t callback);
cudaError_t cudaGetDevice(int* device);
__device__ cudaError_t cudaGetDevice(int* device);
cudaError_t cudaGetDeviceCount(int* count);
__device__ cudaError_t cudaGetDeviceCount(int* count);
cudaError_t cudaGetDeviceFlags(unsigned int* flags);
cudaError_t cudaGetDeviceProperties(cudaDeviceProp* prop, int device);
cudaError_t cudaInitDevice(int device, unsigned int deviceFlags, unsigned int flags);
cudaError_t cudaIpcCloseMemHandle(void* devPtr);
cudaError_t cudaIpcGetEventHandle(cudaIpcEventHandle_t* handle, cudaEvent_t event);
cudaError_t cudaIpcGetMemHandle(cudaIpcMemHandle_t* handle, void* devPtr);
cudaError_t cudaIpcOpenEventHandle(cudaEvent_t* event, cudaIpcEventHandle_t handle);
cudaError_t cudaIpcOpenMemHandle(void** devPtr, cudaIpcMemHandle_t handle, unsigned int flags);
cudaError_t cudaSetDevice(int device);
cudaError_t cudaSetDeviceFlags(unsigned int flags);
cudaError_t cudaSetValidDevices(int* device_arr, int len);
6.2. Device Management [DEPRECATED]#
cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
__device__ cudaError_t cudaDeviceGetSharedMemConfig(cudaSharedMemConfig ** pConfig);
cudaError_t cudaDeviceSetSharedMemConfig(cudaSharedMemConfig config);
6.3. Error Handling#
const char* cudaGetErrorName(cudaError_t error);
__device__ const char* cudaGetErrorName(cudaError_t error);
const char* cudaGetErrorString(cudaError_t error);
__device__ const char* cudaGetErrorString(cudaError_t error);
cudaError_t cudaGetLastError(void);
-__device__ cudaError_t cudaGetLastError(void);
cudaError_t cudaPeekAtLastError(void);
-__device__ cudaError_t cudaPeekAtLastError(void);
6.4. Stream Management#
-struct cudaGraphRecaptureCallbackData
-typedef cudaError_t* (*cudaGraphRecaptureCallback_t)(void* data, cudaGraphNode_t node, const cudaGraphNodeParams* originalParams, const cudaGraphNodeParams* recaptureParams, enum cudaGraphRecaptureStatus status);
typedef void(* cudaStreamCallback_t)(cudaStream_t stream, cudaError_t status, void* userData);
cudaError_t cudaCtxResetPersistingL2Cache(void);
cudaError_t cudaStreamAddCallback(cudaStream_t stream, cudaStreamCallback_t callback, void* userData, unsigned int flags);
cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, void* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
cudaError_t cudaStreamBeginCapture(cudaStream_t stream, cudaStreamCaptureMode mode);
cudaError_t cudaStreamBeginCaptureToGraph(cudaStream_t stream, cudaGraph_t graph, const cudaGraphNode_t* dependencies, const cudaGraphEdgeData* dependencyData, size_t numDependencies, cudaStreamCaptureMode mode);
-cudaError_t cudaStreamBeginRecaptureToGraph(cudaStream_t stream, cudaStreamCaptureMode mode, cudaGraph_t graph, cudaGraphRecaptureCallbackData* callbackData = 0);
cudaError_t cudaStreamCopyAttributes(cudaStream_t dst, cudaStream_t src);
cudaError_t cudaStreamCreate(cudaStream_t* pStream);
cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
-__device__ cudaError_t cudaStreamCreateWithFlags(cudaStream_t* pStream, unsigned int flags);
cudaError_t cudaStreamCreateWithPriority(cudaStream_t* pStream, unsigned int flags, int priority);
cudaError_t cudaStreamDestroy(cudaStream_t stream);
-__device__ cudaError_t cudaStreamDestroy(cudaStream_t stream);
cudaError_t cudaStreamEndCapture(cudaStream_t stream, cudaGraph_t* pGraph);
cudaError_t cudaStreamGetAttribute(cudaStream_t hStream, cudaStreamAttrID attr, cudaStreamAttrValue* value_out);
cudaError_t cudaStreamGetCaptureInfo(cudaStream_t stream, cudaStreamCaptureStatus ** captureStatus_out, unsigned long long* id_out = 0, cudaGraph_t* graph_out = 0, const cudaGraphNode_t** dependencies_out = 0, const cudaGraphEdgeData** edgeData_out = 0, size_t* numDependencies_out = 0);
cudaError_t cudaStreamGetDevice(cudaStream_t hStream, int* device);
cudaError_t cudaStreamGetFlags(cudaStream_t hStream, unsigned int* flags);
cudaError_t cudaStreamGetId(cudaStream_t hStream, unsigned long long* streamId);
cudaError_t cudaStreamGetPriority(cudaStream_t hStream, int* priority);
cudaError_t cudaStreamIsCapturing(cudaStream_t stream, cudaStreamCaptureStatus ** pCaptureStatus);
cudaError_t cudaStreamQuery(cudaStream_t stream);
cudaError_t cudaStreamSetAttribute(cudaStream_t hStream, cudaStreamAttrID attr, const cudaStreamAttrValue* value);
cudaError_t cudaStreamSynchronize(cudaStream_t stream);
cudaError_t cudaStreamUpdateCaptureDependencies(cudaStream_t stream, cudaGraphNode_t* dependencies, const cudaGraphEdgeData* dependencyData, size_t numDependencies, unsigned int flags = 0);
cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags = 0);
-__device__ cudaError_t cudaStreamWaitEvent(cudaStream_t stream, cudaEvent_t event, unsigned int flags = 0);
cudaError_t cudaThreadExchangeStreamCaptureMode(cudaStreamCaptureMode ** mode);
6.5. Event Management#
cudaError_t cudaEventCreate(cudaEvent_t* event);
cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
-__device__ cudaError_t cudaEventCreateWithFlags(cudaEvent_t* event, unsigned int flags);
cudaError_t cudaEventDestroy(cudaEvent_t event);
-__device__ cudaError_t cudaEventDestroy(cudaEvent_t event);
cudaError_t cudaEventElapsedTime(float* ms, cudaEvent_t start, cudaEvent_t end);
cudaError_t cudaEventQuery(cudaEvent_t event);
cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
-__device__ cudaError_t cudaEventRecord(cudaEvent_t event, cudaStream_t stream = 0);
cudaError_t cudaEventRecordWithFlags(cudaEvent_t event, cudaStream_t stream = 0, unsigned int flags = 0);
cudaError_t cudaEventSynchronize(cudaEvent_t event);
6.6. External Resource Interoperability#
-cudaError_t cudaDestroyExternalMemory(cudaExternalMemory_t extMem);
-cudaError_t cudaDestroyExternalSemaphore(cudaExternalSemaphore_t extSem);
-cudaError_t cudaExternalMemoryGetMappedBuffer(void** devPtr, cudaExternalMemory_t extMem, const cudaExternalMemoryBufferDesc* bufferDesc);
-cudaError_t cudaExternalMemoryGetMappedMipmappedArray(cudaMipmappedArray_t* mipmap, cudaExternalMemory_t extMem, const cudaExternalMemoryMipmappedArrayDesc* mipmapDesc);
-cudaError_t cudaImportExternalMemory(cudaExternalMemory_t* extMem_out, const cudaExternalMemoryHandleDesc* memHandleDesc);
-cudaError_t cudaImportExternalSemaphore(cudaExternalSemaphore_t* extSem_out, const cudaExternalSemaphoreHandleDesc* semHandleDesc);
-cudaError_t cudaSignalExternalSemaphoresAsync(const cudaExternalSemaphore_t* extSemArray, const cudaExternalSemaphoreSignalParams* paramsArray, unsigned int numExtSems, cudaStream_t stream = 0);
-cudaError_t cudaWaitExternalSemaphoresAsync(const cudaExternalSemaphore_t* extSemArray, const cudaExternalSemaphoreWaitParams* paramsArray, unsigned int numExtSems, cudaStream_t stream = 0);
6.7. Execution Control#
cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
-__device__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, const void* func);
cudaError_t cudaFuncGetName(const char** name, const void* func);
-cudaError_t cudaFuncGetParamCount(const void* func, size_t* paramCount);
cudaError_t cudaFuncGetParamInfo(const void* func, size_t paramIndex, size_t* paramOffset, size_t* paramSize);
cudaError_t cudaFuncSetAttribute(const void* func, cudaFuncAttribute attr, int value);
cudaError_t cudaFuncSetCacheConfig(const void* func, cudaFuncCache cacheConfig);
__device__ void* cudaGetParameterBuffer(size_t alignment, size_t size);
__device__ void cudaGridDependencySynchronize(void);
cudaError_t cudaLaunchCooperativeKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
__device__ cudaError_t cudaLaunchDevice(void* func, void* parameterBuffer, dim3 gridDimension, dim3 blockDimension, unsigned int sharedMemSize, cudaStream_t stream);
cudaError_t cudaLaunchHostFunc(cudaStream_t stream, cudaHostFn_t fn, void* userData);
-cudaError_t cudaLaunchHostFunc_v2(cudaStream_t stream, cudaHostFn_t fn, void* userData, unsigned int syncMode);
cudaError_t cudaLaunchKernel(const void* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem, cudaStream_t stream);
cudaError_t cudaLaunchKernelExC(const cudaLaunchConfig_t* config, const void* func, void** args);
__device__ void cudaTriggerProgrammaticLaunchCompletion(void);
6.8. Execution Control [DEPRECATED]#
cudaError_t cudaFuncSetSharedMemConfig(const void* func, cudaSharedMemConfig config);
6.9. Occupancy#
cudaError_t cudaOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, const void* func, int numBlocks, int blockSize);
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
-__device__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize);
cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, const void* func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
-cudaError_t cudaOccupancyMaxActiveClusters(int* numClusters, const void* func, const cudaLaunchConfig_t* launchConfig);
-cudaError_t cudaOccupancyMaxPotentialClusterSize(int* clusterSize, const void* func, const cudaLaunchConfig_t* launchConfig);
6.10. Memory Management#
cudaError_t cudaArrayGetInfo(cudaChannelFormatDesc* desc, cudaExtent* extent, unsigned int* flags, cudaArray_t array);
-cudaError_t cudaArrayGetMemoryRequirements(cudaArrayMemoryRequirements* memoryRequirements, cudaArray_t array, int device);
-cudaError_t cudaArrayGetPlane(cudaArray_t* pPlaneArray, cudaArray_t hArray, unsigned int planeIdx);
-cudaError_t cudaArrayGetSparseProperties(cudaArraySparseProperties* sparseProperties, cudaArray_t array);
cudaError_t cudaFree(void* devPtr);
__device__ cudaError_t cudaFree(void* devPtr);
cudaError_t cudaFreeArray(cudaArray_t array);
cudaError_t cudaFreeHost(void* ptr);
cudaError_t cudaFreeMipmappedArray(cudaMipmappedArray_t mipmappedArray);
-cudaError_t cudaGetMipmappedArrayLevel(cudaArray_t* levelArray, cudaMipmappedArray_const_t mipmappedArray, unsigned int level);
cudaError_t cudaGetSymbolAddress(void** devPtr, const void* symbol);
cudaError_t cudaGetSymbolSize(size_t* size, const void* symbol);
cudaError_t cudaHostAlloc(void** pHost, size_t size, unsigned int flags);
cudaError_t cudaHostGetDevicePointer(void** pDevice, void* pHost, unsigned int flags);
cudaError_t cudaHostGetFlags(unsigned int* pFlags, void* pHost);
cudaError_t cudaHostRegister(void* ptr, size_t size, unsigned int flags);
cudaError_t cudaHostUnregister(void* ptr);
cudaError_t cudaMalloc(void** devPtr, size_t size);
__device__ cudaError_t cudaMalloc(void** devPtr, size_t size);
cudaError_t cudaMalloc3D(cudaPitchedPtr* pitchedDevPtr, cudaExtent extent);
cudaError_t cudaMalloc3DArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int flags = 0);
cudaError_t cudaMallocArray(cudaArray_t* array, const cudaChannelFormatDesc* desc, size_t width, size_t height = 0, unsigned int flags = 0);
cudaError_t cudaMallocHost(void** ptr, size_t size);
cudaError_t cudaMallocManaged(void** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
cudaError_t cudaMallocMipmappedArray(cudaMipmappedArray_t* mipmappedArray, const cudaChannelFormatDesc* desc, cudaExtent extent, unsigned int numLevels, unsigned int flags = 0);
cudaError_t cudaMallocPitch(void** devPtr, size_t* pitch, size_t width, size_t height);
cudaError_t cudaMemAdvise(const void* devPtr, size_t count, cudaMemoryAdvise advice, cudaMemLocation location);
-cudaError_t cudaMemDiscardAndPrefetchBatchAsync(void** dptrs, size_t* sizes, size_t count, cudaMemLocation* prefetchLocs, size_t* prefetchLocIdxs, size_t numPrefetchLocs, unsigned long long flags, cudaStream_t stream);
cudaError_t cudaMemDiscardBatchAsync(void** dptrs, size_t* sizes, size_t count, unsigned long long flags, cudaStream_t stream);
cudaError_t cudaMemGetInfo(size_t* free, size_t* total);
cudaError_t cudaMemPrefetchAsync(const void* devPtr, size_t count, cudaMemLocation location, unsigned int flags, cudaStream_t stream = 0);
cudaError_t cudaMemPrefetchBatchAsync(void** dptrs, size_t* sizes, size_t count, cudaMemLocation* prefetchLocs, size_t* prefetchLocIdxs, size_t numPrefetchLocs, unsigned long long flags, cudaStream_t stream);
cudaError_t cudaMemRangeGetAttribute(void* data, size_t dataSize, cudaMemRangeAttribute attribute, const void* devPtr, size_t count);
-cudaError_t cudaMemRangeGetAttributes(void** data, size_t* dataSizes, cudaMemRangeAttribute ** attributes, size_t numAttributes, const void* devPtr, size_t count);
cudaError_t cudaMemcpy(void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2D(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
-cudaError_t cudaMemcpy2DArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t width, size_t height, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy2DAsync(void* dst, size_t dpitch, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DFromArray(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DFromArrayAsync(void* dst, size_t dpitch, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy2DToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind);
cudaError_t cudaMemcpy2DToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t spitch, size_t width, size_t height, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpy3D(const cudaMemcpy3DParms* p);
cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpy3DAsync(const cudaMemcpy3DParms* p, cudaStream_t stream = 0);
-cudaError_t cudaMemcpy3DBatchAsync(size_t numOps, cudaMemcpy3DBatchOp* opList, unsigned long long flags, cudaStream_t stream);
cudaError_t cudaMemcpy3DPeer(const cudaMemcpy3DPeerParms* p);
cudaError_t cudaMemcpy3DPeerAsync(const cudaMemcpy3DPeerParms* p, cudaStream_t stream = 0);
-cudaError_t cudaMemcpy3DWithAttributesAsync(cudaMemcpy3DBatchOp* op, unsigned long long flags, cudaStream_t stream);
cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemcpyAsync(void* dst, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
-cudaError_t cudaMemcpyBatchAsync(const void** dsts, const void** srcs, const size_t* sizes, size_t count, cudaMemcpyAttributes* attrs, size_t* attrsIdxs, size_t numAttrs, cudaStream_t stream);
cudaError_t cudaMemcpyFromSymbol(void* dst, const void* symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyPeer(void* dst, int dstDevice, const void* src, int srcDevice, size_t count);
cudaError_t cudaMemcpyPeerAsync(void* dst, int dstDevice, const void* src, int srcDevice, size_t count, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToSymbol(const void* symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
cudaError_t cudaMemcpyToSymbolAsync(const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind, cudaStream_t stream = 0);
-cudaError_t cudaMemcpyWithAttributesAsync(void* dst, const void* src, size_t size, cudaMemcpyAttributes* attr, cudaStream_t stream);
cudaError_t cudaMemset(void* devPtr, int value, size_t count);
cudaError_t cudaMemset2D(void* devPtr, size_t pitch, int value, size_t width, size_t height);
cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset2DAsync(void* devPtr, size_t pitch, int value, size_t width, size_t height, cudaStream_t stream = 0);
cudaError_t cudaMemset3D(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent);
cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemset3DAsync(cudaPitchedPtr pitchedDevPtr, int value, cudaExtent extent, cudaStream_t stream = 0);
cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
-__device__ cudaError_t cudaMemsetAsync(void* devPtr, int value, size_t count, cudaStream_t stream = 0);
-cudaError_t cudaMipmappedArrayGetMemoryRequirements(cudaArrayMemoryRequirements* memoryRequirements, cudaMipmappedArray_t mipmap, int device);
-cudaError_t cudaMipmappedArrayGetSparseProperties(cudaArraySparseProperties* sparseProperties, cudaMipmappedArray_t mipmap);
cudaExtent make_cudaExtent(size_t w, size_t h, size_t d);
cudaPitchedPtr make_cudaPitchedPtr(void* d, size_t p, size_t xsz, size_t ysz);
cudaPos make_cudaPos(size_t x, size_t y, size_t z);
6.11. Memory Management [DEPRECATED]#
-cudaError_t cudaMemcpyArrayToArray(cudaArray_t dst, size_t wOffsetDst, size_t hOffsetDst, cudaArray_const_t src, size_t wOffsetSrc, size_t hOffsetSrc, size_t count, cudaMemcpyKind kind = cudaMemcpyDeviceToDevice);
-cudaError_t cudaMemcpyFromArray(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind);
-cudaError_t cudaMemcpyFromArrayAsync(void* dst, cudaArray_const_t src, size_t wOffset, size_t hOffset, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
cudaError_t cudaMemcpyToArray(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaMemcpyToArrayAsync(cudaArray_t dst, size_t wOffset, size_t hOffset, const void* src, size_t count, cudaMemcpyKind kind, cudaStream_t stream = 0);
6.12. Stream Ordered Memory Allocator#
cudaError_t cudaFreeAsync(void* devPtr, cudaStream_t hStream);
cudaError_t cudaMallocAsync(void** devPtr, size_t size, cudaStream_t hStream);
cudaError_t cudaMallocFromPoolAsync(void** ptr, size_t size, cudaMemPool_t memPool, cudaStream_t stream);
cudaError_t cudaMemGetDefaultMemPool(cudaMemPool_t* memPool, cudaMemLocation* location, cudaMemAllocationType type);
cudaError_t cudaMemGetMemPool(cudaMemPool_t* memPool, cudaMemLocation* location, cudaMemAllocationType type);
cudaError_t cudaMemPoolCreate(cudaMemPool_t* memPool, const cudaMemPoolProps* poolProps);
cudaError_t cudaMemPoolDestroy(cudaMemPool_t memPool);
cudaError_t cudaMemPoolExportPointer(cudaMemPoolPtrExportData* exportData, void* ptr);
cudaError_t cudaMemPoolExportToShareableHandle(void* shareableHandle, cudaMemPool_t memPool, cudaMemAllocationHandleType handleType, unsigned int flags);
cudaError_t cudaMemPoolGetAccess(cudaMemAccessFlags ** flags, cudaMemPool_t memPool, cudaMemLocation* location);
cudaError_t cudaMemPoolGetAttribute(cudaMemPool_t memPool, cudaMemPoolAttr attr, void* value);
cudaError_t cudaMemPoolImportFromShareableHandle(cudaMemPool_t* memPool, void* shareableHandle, cudaMemAllocationHandleType handleType, unsigned int flags);
cudaError_t cudaMemPoolImportPointer(void** ptr, cudaMemPool_t memPool, cudaMemPoolPtrExportData* exportData);
cudaError_t cudaMemPoolSetAccess(cudaMemPool_t memPool, const cudaMemAccessDesc* descList, size_t count);
cudaError_t cudaMemPoolSetAttribute(cudaMemPool_t memPool, cudaMemPoolAttr attr, void* value);
cudaError_t cudaMemPoolTrimTo(cudaMemPool_t memPool, size_t minBytesToKeep);
cudaError_t cudaMemSetMemPool(cudaMemLocation* location, cudaMemAllocationType type, cudaMemPool_t memPool);
6.13. Unified Addressing#
cudaError_t cudaPointerGetAttributes(cudaPointerAttributes* attributes, const void* ptr);
6.14. Peer Device Memory Access#
cudaError_t cudaDeviceCanAccessPeer(int* canAccessPeer, int device, int peerDevice);
cudaError_t cudaDeviceDisablePeerAccess(int peerDevice);
cudaError_t cudaDeviceEnablePeerAccess(int peerDevice, unsigned int flags);
6.15. OpenGL Interoperability#
enum cudaGLDeviceList
cudaGLDeviceListAll = 1
cudaGLDeviceListCurrentFrame = 2
cudaGLDeviceListNextFrame = 3
cudaError_t cudaGLGetDevices(unsigned int* pCudaDeviceCount, int* pCudaDevices, unsigned int cudaDeviceCount, cudaGLDeviceList deviceList);
cudaError_t cudaGraphicsGLRegisterBuffer(cudaGraphicsResource** resource, GLuint buffer, unsigned int flags);
cudaError_t cudaGraphicsGLRegisterImage(cudaGraphicsResource** resource, GLuint image, GLenum target, unsigned int flags);
-cudaError_t cudaWGLGetDevice(int* device, HGPUNV hGpu);
6.16. OpenGL Interoperability [DEPRECATED]#
enum cudaGLMapFlags
cudaGLMapFlagsNone = 0
cudaGLMapFlagsReadOnly = 1
cudaGLMapFlagsWriteDiscard = 2
cudaError_t cudaGLMapBufferObject(void** devPtr, GLuint bufObj);
cudaError_t cudaGLMapBufferObjectAsync(void** devPtr, GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLRegisterBufferObject(GLuint bufObj);
cudaError_t cudaGLSetBufferObjectMapFlags(GLuint bufObj, unsigned int flags);
-cudaError_t cudaGLSetGLDevice(int device);
cudaError_t cudaGLUnmapBufferObject(GLuint bufObj);
cudaError_t cudaGLUnmapBufferObjectAsync(GLuint bufObj, cudaStream_t stream);
cudaError_t cudaGLUnregisterBufferObject(GLuint bufObj);
6.17. Direct3D 9 Interoperability#
-Windows APIs are currently unsupported
6.18. Direct3D 9 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
6.19. Direct3D 10 Interoperability#
-Windows APIs are currently unsupported
6.20. Direct3D 10 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
6.21. Direct3D 11 Interoperability#
-Windows APIs are currently unsupported
6.22. Direct3D 11 Interoperability [DEPRECATED]#
-Windows APIs are currently unsupported
6.23. VDPAU Interoperability#
-VDPAU is currently unsupported
6.24. EGL Interoperability#
-EGL is currently unsupported
6.25. Graphics Interoperability#
cudaError_t cudaGraphicsMapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
-cudaError_t cudaGraphicsResourceGetMappedMipmappedArray(cudaMipmappedArray_t* mipmappedArray, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceGetMappedPointer(void** devPtr, size_t* size, cudaGraphicsResource_t resource);
cudaError_t cudaGraphicsResourceSetMapFlags(cudaGraphicsResource_t resource, unsigned int flags);
cudaError_t cudaGraphicsSubResourceGetMappedArray(cudaArray_t* array, cudaGraphicsResource_t resource, unsigned int arrayIndex, unsigned int mipLevel);
cudaError_t cudaGraphicsUnmapResources(int count, cudaGraphicsResource_t* resources, cudaStream_t stream = 0);
cudaError_t cudaGraphicsUnregisterResource(cudaGraphicsResource_t resource);
6.26. Texture Object Management#
cudaChannelFormatDesc cudaCreateChannelDesc(int x, int y, int z, int w, cudaChannelFormatKind f);
cudaError_t cudaCreateTextureObject(cudaTextureObject_t* pTexObject, const cudaResourceDesc* pResDesc, const cudaTextureDesc* pTexDesc, const cudaResourceViewDesc* pResViewDesc);
cudaError_t cudaDestroyTextureObject(cudaTextureObject_t texObject);
cudaError_t cudaGetChannelDesc(cudaChannelFormatDesc* desc, cudaArray_const_t array);
cudaError_t cudaGetTextureObjectResourceDesc(cudaResourceDesc* pResDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectResourceViewDesc(cudaResourceViewDesc* pResViewDesc, cudaTextureObject_t texObject);
cudaError_t cudaGetTextureObjectTextureDesc(cudaTextureDesc* pTexDesc, cudaTextureObject_t texObject);
6.27. Surface Object Management#
cudaError_t cudaCreateSurfaceObject(cudaSurfaceObject_t* pSurfObject, const cudaResourceDesc* pResDesc);
cudaError_t cudaDestroySurfaceObject(cudaSurfaceObject_t surfObject);
cudaError_t cudaGetSurfaceObjectResourceDesc(cudaResourceDesc* pResDesc, cudaSurfaceObject_t surfObject);
6.28. Version Management#
cudaError_t cudaDriverGetVersion(int* driverVersion);
cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
__device__ cudaError_t cudaRuntimeGetVersion(int* runtimeVersion);
6.29. Error Log Management Functions#
typedef void(* cudaLogsCallback_t)(void* data, cudaLogLevel logLevel, char* message, size_t length);
cudaError_t cudaLogsCurrent(cudaLogIterator* iterator_out, unsigned int flags);
cudaError_t cudaLogsDumpToFile(cudaLogIterator* iterator, const char* pathToFile, unsigned int flags);
cudaError_t cudaLogsDumpToMemory(cudaLogIterator* iterator, char* buffer, size_t* size, unsigned int flags);
cudaError_t cudaLogsRegisterCallback(cudaLogsCallback_t callbackFunc, void* userData, cudaLogsCallbackHandle* callback_out);
cudaError_t cudaLogsUnregisterCallback(cudaLogsCallbackHandle callback);
6.30. Graph Management#
-cudaError_t cudaDeviceGetGraphMemAttribute(int device, cudaGraphMemAttributeType attr, void* value);
-cudaError_t cudaDeviceGraphMemTrim(int device);
-cudaError_t cudaDeviceSetGraphMemAttribute(int device, cudaGraphMemAttributeType attr, void* value);
__device__ cudaGraphExec_t cudaGetCurrentGraphExec(void);
cudaError_t cudaGraphAddChildGraphNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaGraph_t childGraph);
cudaError_t cudaGraphAddDependencies(cudaGraph_t graph, const cudaGraphNode_t* from, const cudaGraphNode_t* to, const cudaGraphEdgeData* edgeData, size_t numDependencies);
cudaError_t cudaGraphAddEmptyNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies);
cudaError_t cudaGraphAddEventRecordNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaEvent_t event);
cudaError_t cudaGraphAddEventWaitNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaEvent_t event);
-cudaError_t cudaGraphAddExternalSemaphoresSignalNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaExternalSemaphoreSignalNodeParams* nodeParams);
-cudaError_t cudaGraphAddExternalSemaphoresWaitNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaExternalSemaphoreWaitNodeParams* nodeParams);
cudaError_t cudaGraphAddHostNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphAddKernelNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphAddMemAllocNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, cudaMemAllocNodeParams* nodeParams);
cudaError_t cudaGraphAddMemFreeNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dptr);
cudaError_t cudaGraphAddMemcpyNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaMemcpy3DParms* pCopyParams);
cudaError_t cudaGraphAddMemcpyNode1D(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaGraphAddMemcpyNodeFromSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphAddMemcpyNodeToSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphAddMemsetNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const cudaMemsetParams* pMemsetParams);
cudaError_t cudaGraphAddNode(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, const cudaGraphEdgeData* dependencyData, size_t numDependencies, cudaGraphNodeParams* nodeParams);
cudaError_t cudaGraphChildGraphNodeGetGraph(cudaGraphNode_t node, cudaGraph_t* pGraph);
cudaError_t cudaGraphClone(cudaGraph_t* pGraphClone, cudaGraph_t originalGraph);
-cudaError_t cudaGraphConditionalHandleCreate(cudaGraphConditionalHandle* pHandle_out, cudaGraph_t graph, unsigned int defaultLaunchValue = 0, unsigned int flags = 0);
-cudaError_t cudaGraphConditionalHandleCreate_v2(cudaGraphConditionalHandle* pHandle_out, cudaGraph_t graph, cudaExecutionContext_t ctx = NULL, unsigned int defaultLaunchValue = 0, unsigned int flags = 0);
-cudaError_t cudaGraphCreate(cudaGraph_t* pGraph, unsigned int flags = 0);
cudaError_t cudaGraphDebugDotPrint(cudaGraph_t graph, const char* path, unsigned int flags);
cudaError_t cudaGraphDestroy(cudaGraph_t graph);
cudaError_t cudaGraphDestroyNode(cudaGraphNode_t node);
cudaError_t cudaGraphEventRecordNodeGetEvent(cudaGraphNode_t node, cudaEvent_t* event_out);
cudaError_t cudaGraphEventRecordNodeSetEvent(cudaGraphNode_t node, cudaEvent_t event);
cudaError_t cudaGraphEventWaitNodeGetEvent(cudaGraphNode_t node, cudaEvent_t* event_out);
cudaError_t cudaGraphEventWaitNodeSetEvent(cudaGraphNode_t node, cudaEvent_t event);
cudaError_t cudaGraphExecChildGraphNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, cudaGraph_t childGraph);
cudaError_t cudaGraphExecDestroy(cudaGraphExec_t graphExec);
cudaError_t cudaGraphExecEventRecordNodeSetEvent(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, cudaEvent_t event);
cudaError_t cudaGraphExecEventWaitNodeSetEvent(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, cudaEvent_t event);
-cudaError_t cudaGraphExecExternalSemaphoresSignalNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, const cudaExternalSemaphoreSignalNodeParams* nodeParams);
-cudaError_t cudaGraphExecExternalSemaphoresWaitNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, const cudaExternalSemaphoreWaitNodeParams* nodeParams);
cudaError_t cudaGraphExecGetFlags(cudaGraphExec_t graphExec, unsigned long long* flags);
-cudaError_t cudaGraphExecGetId(cudaGraphExec_t hGraphExec, unsigned int* graphID);
cudaError_t cudaGraphExecHostNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphExecKernelNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphExecMemcpyNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphExecMemcpyNodeSetParams1D(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaGraphExecMemcpyNodeSetParamsFromSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphExecMemcpyNodeSetParamsToSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphExecMemsetNodeSetParams(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const cudaMemsetParams* pNodeParams);
cudaError_t cudaGraphExecNodeSetParams(cudaGraphExec_t graphExec, cudaGraphNode_t node, cudaGraphNodeParams* nodeParams);
cudaError_t cudaGraphExecUpdate(cudaGraphExec_t hGraphExec, cudaGraph_t hGraph, cudaGraphExecUpdateResultInfo* resultInfo);
-cudaError_t cudaGraphExternalSemaphoresSignalNodeGetParams(cudaGraphNode_t hNode, cudaExternalSemaphoreSignalNodeParams* params_out);
-cudaError_t cudaGraphExternalSemaphoresSignalNodeSetParams(cudaGraphNode_t hNode, const cudaExternalSemaphoreSignalNodeParams* nodeParams);
-cudaError_t cudaGraphExternalSemaphoresWaitNodeGetParams(cudaGraphNode_t hNode, cudaExternalSemaphoreWaitNodeParams* params_out);
-cudaError_t cudaGraphExternalSemaphoresWaitNodeSetParams(cudaGraphNode_t hNode, const cudaExternalSemaphoreWaitNodeParams* nodeParams);
cudaError_t cudaGraphGetEdges(cudaGraph_t graph, cudaGraphNode_t* from, cudaGraphNode_t* to, cudaGraphEdgeData* edgeData, size_t* numEdges);
cudaError_t cudaGraphGetId(cudaGraph_t hGraph, unsigned int* graphID);
cudaError_t cudaGraphGetNodes(cudaGraph_t graph, cudaGraphNode_t* nodes, size_t* numNodes);
cudaError_t cudaGraphGetRootNodes(cudaGraph_t graph, cudaGraphNode_t* pRootNodes, size_t* pNumRootNodes);
cudaError_t cudaGraphHostNodeGetParams(cudaGraphNode_t node, cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphHostNodeSetParams(cudaGraphNode_t node, const cudaHostNodeParams* pNodeParams);
cudaError_t cudaGraphInstantiate(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, unsigned long long flags = 0);
cudaError_t cudaGraphInstantiateWithFlags(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, unsigned long long flags = 0);
cudaError_t cudaGraphInstantiateWithParams(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, cudaGraphInstantiateParams* instantiateParams);
cudaError_t cudaGraphKernelNodeCopyAttributes(cudaGraphNode_t hDst, cudaGraphNode_t hSrc);
cudaError_t cudaGraphKernelNodeGetAttribute(cudaGraphNode_t hNode, cudaKernelNodeAttrID attr, cudaKernelNodeAttrValue* value_out);
cudaError_t cudaGraphKernelNodeGetParams(cudaGraphNode_t node, cudaKernelNodeParams* pNodeParams);
cudaError_t cudaGraphKernelNodeSetAttribute(cudaGraphNode_t hNode, cudaKernelNodeAttrID attr, const cudaKernelNodeAttrValue* value);
-__device__ cudaError_t cudaGraphKernelNodeSetEnabled(cudaGraphDeviceNode_t node, bool enable);
-__device__ cudaError_t cudaGraphKernelNodeSetGridDim(cudaGraphDeviceNode_t node, dim3 gridDim);
-template < typename T >__device__ cudaError_t cudaGraphKernelNodeSetParam(cudaGraphDeviceNode_t node, size_t offset, const T& value);
-__device__ cudaError_t cudaGraphKernelNodeSetParam(cudaGraphDeviceNode_t node, size_t offset, const void* value, size_t size);
cudaError_t cudaGraphKernelNodeSetParams(cudaGraphNode_t node, const cudaKernelNodeParams* pNodeParams);
-__device__ cudaError_t cudaGraphKernelNodeUpdatesApply(const cudaGraphKernelNodeUpdate* updates, size_t updateCount);
cudaError_t cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream);
-__device__ cudaError_t cudaGraphLaunch(cudaGraphExec_t graphExec, cudaStream_t stream);
cudaError_t cudaGraphMemAllocNodeGetParams(cudaGraphNode_t node, cudaMemAllocNodeParams* params_out);
cudaError_t cudaGraphMemFreeNodeGetParams(cudaGraphNode_t node, void* dptr_out);
cudaError_t cudaGraphMemcpyNodeGetParams(cudaGraphNode_t node, cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphMemcpyNodeSetParams(cudaGraphNode_t node, const cudaMemcpy3DParms* pNodeParams);
cudaError_t cudaGraphMemcpyNodeSetParams1D(cudaGraphNode_t node, void* dst, const void* src, size_t count, cudaMemcpyKind kind);
cudaError_t cudaGraphMemcpyNodeSetParamsFromSymbol(cudaGraphNode_t node, void* dst, const void* symbol, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphMemcpyNodeSetParamsToSymbol(cudaGraphNode_t node, const void* symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphMemsetNodeGetParams(cudaGraphNode_t node, cudaMemsetParams* pNodeParams);
cudaError_t cudaGraphMemsetNodeSetParams(cudaGraphNode_t node, const cudaMemsetParams* pNodeParams);
cudaError_t cudaGraphNodeFindInClone(cudaGraphNode_t* pNode, cudaGraphNode_t originalNode, cudaGraph_t clonedGraph);
-cudaError_t cudaGraphNodeGetContainingGraph(cudaGraphNode_t hNode, cudaGraph_t* phGraph);
cudaError_t cudaGraphNodeGetDependencies(cudaGraphNode_t node, cudaGraphNode_t* pDependencies, cudaGraphEdgeData* edgeData, size_t* pNumDependencies);
cudaError_t cudaGraphNodeGetDependentNodes(cudaGraphNode_t node, cudaGraphNode_t* pDependentNodes, cudaGraphEdgeData* edgeData, size_t* pNumDependentNodes);
cudaError_t cudaGraphNodeGetEnabled(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, unsigned int* isEnabled);
cudaError_t cudaGraphNodeGetLocalId(cudaGraphNode_t hNode, unsigned int* nodeId);
-cudaError_t cudaGraphNodeGetParams(cudaGraphNode_t node, cudaGraphNodeParams* nodeParams);
cudaError_t cudaGraphNodeGetToolsId(cudaGraphNode_t hNode, unsigned long long* toolsNodeId);
cudaError_t cudaGraphNodeGetType(cudaGraphNode_t node, cudaGraphNodeType ** pType);
cudaError_t cudaGraphNodeSetEnabled(cudaGraphExec_t hGraphExec, cudaGraphNode_t hNode, unsigned int isEnabled);
cudaError_t cudaGraphNodeSetParams(cudaGraphNode_t node, cudaGraphNodeParams* nodeParams);
cudaError_t cudaGraphReleaseUserObject(cudaGraph_t graph, cudaUserObject_t object, unsigned int count = 1);
cudaError_t cudaGraphRemoveDependencies(cudaGraph_t graph, const cudaGraphNode_t* from, const cudaGraphNode_t* to, const cudaGraphEdgeData* edgeData, size_t numDependencies);
cudaError_t cudaGraphRetainUserObject(cudaGraph_t graph, cudaUserObject_t object, unsigned int count = 1, unsigned int flags = 0);
-__device__ void cudaGraphSetConditional(cudaGraphConditionalHandle handle, unsigned int value);
cudaError_t cudaGraphUpload(cudaGraphExec_t graphExec, cudaStream_t stream);
cudaError_t cudaUserObjectCreate(cudaUserObject_t* object_out, void* ptr, cudaHostFn_t destroy, unsigned int initialRefcount, unsigned int flags);
cudaError_t cudaUserObjectRelease(cudaUserObject_t object, unsigned int count = 1);
cudaError_t cudaUserObjectRetain(cudaUserObject_t object, unsigned int count = 1);
6.31. Driver Entry Point Access#
cudaError_t cudaGetDriverEntryPoint(const char* symbol, void** funcPtr, unsigned long long flags, cudaDriverEntryPointQueryResult ** driverStatus = NULL);
cudaError_t cudaGetDriverEntryPointByVersion(const char* symbol, void** funcPtr, unsigned int cudaVersion, unsigned long long flags, cudaDriverEntryPointQueryResult ** driverStatus = NULL);
6.32. Library Management#
-cudaError_t cudaKernelSetAttributeForDevice(cudaKernel_t kernel, cudaFuncAttribute attr, int value, int device);
-cudaError_t cudaLibraryEnumerateKernels(cudaKernel_t* kernels, unsigned int numKernels, cudaLibrary_t lib);
cudaError_t cudaLibraryGetGlobal(void** dptr, size_t* bytes, cudaLibrary_t library, const char* name);
cudaError_t cudaLibraryGetKernel(cudaKernel_t* pKernel, cudaLibrary_t library, const char* name);
-cudaError_t cudaLibraryGetKernelCount(unsigned int* count, cudaLibrary_t lib);
-cudaError_t cudaLibraryGetManaged(void** dptr, size_t* bytes, cudaLibrary_t library, const char* name);
-cudaError_t cudaLibraryGetUnifiedFunction(void** fptr, cudaLibrary_t library, const char* symbol);
-cudaError_t cudaLibraryLoadData(cudaLibrary_t* library, const void* code, cudaJitOption ** jitOptions, void** jitOptionsValues, unsigned int numJitOptions, cudaLibraryOption ** libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions);
-cudaError_t cudaLibraryLoadFromFile(cudaLibrary_t* library, const char* fileName, cudaJitOption ** jitOptions, void** jitOptionsValues, unsigned int numJitOptions, cudaLibraryOption ** libraryOptions, void** libraryOptionValues, unsigned int numLibraryOptions);
cudaError_t cudaLibraryUnload(cudaLibrary_t library);
6.33. Execution Context Management#
cudaError_t cudaDevResourceGenerateDesc(cudaDevResourceDesc_t* phDesc, cudaDevResource* resources, unsigned int nbResources);
-cudaError_t cudaDevSmResourceSplit(cudaDevResource* result, unsigned int nbGroups, const cudaDevResource* input, cudaDevResource* remainder, unsigned int flags, cudaDevSmResourceGroupParams* groupParams);
cudaError_t cudaDevSmResourceSplitByCount(cudaDevResource* result, unsigned int* nbGroups, const cudaDevResource* input, cudaDevResource* remaining, unsigned int flags, unsigned int minCount);
cudaError_t cudaDeviceGetDevResource(int device, cudaDevResource* resource, cudaDevResourceType type);
cudaError_t cudaDeviceGetExecutionCtx(cudaExecutionContext_t* ctx, int device);
cudaError_t cudaExecutionCtxDestroy(cudaExecutionContext_t ctx);
cudaError_t cudaExecutionCtxGetDevResource(cudaExecutionContext_t ctx, cudaDevResource* resource, cudaDevResourceType type);
cudaError_t cudaExecutionCtxGetDevice(int* device, cudaExecutionContext_t ctx);
cudaError_t cudaExecutionCtxGetId(cudaExecutionContext_t ctx, unsigned long long* ctxId);
cudaError_t cudaExecutionCtxRecordEvent(cudaExecutionContext_t ctx, cudaEvent_t event);
cudaError_t cudaExecutionCtxStreamCreate(cudaStream_t* phStream, cudaExecutionContext_t ctx, unsigned int flags, int priority);
cudaError_t cudaExecutionCtxSynchronize(cudaExecutionContext_t ctx);
cudaError_t cudaExecutionCtxWaitEvent(cudaExecutionContext_t ctx, cudaEvent_t event);
cudaError_t cudaGreenCtxCreate(cudaExecutionContext_t* phCtx, cudaDevResourceDesc_t desc, int device, unsigned int flags);
cudaError_t cudaStreamGetDevResource(cudaStream_t hStream, cudaDevResource* resource, cudaDevResourceType type);
6.34. C++ API Routines#
-class __cudaOccupancyB2DHelper
template < class T >__host__ cudaChannelFormatDesc cudaCreateChannelDesc(void);
cudaError_t cudaEventCreate(cudaEvent_t* event, unsigned int flags);
template < class T >__host__ cudaError_t cudaFuncGetAttributes(cudaFuncAttributes* attr, T* entry);
template < class T >__host__ cudaError_t cudaFuncGetName(const char** name, T* func);
template < class T >__host__ cudaError_t cudaFuncSetAttribute(T* func, cudaFuncAttribute attr, int value);
template < class T >__host__ cudaError_t cudaFuncSetCacheConfig(T* func, cudaFuncCache cacheConfig);
-template < class T >__host__ cudaError_t cudaGetKernel(cudaKernel_t* kernelPtr, T* func);
template < class T >__host__ cudaError_t cudaGetSymbolAddress(void** devPtr, const T& symbol);
template < class T >__host__ cudaError_t cudaGetSymbolSize(size_t* size, const T& symbol);
template < class T >__host__ cudaError_t cudaGraphAddMemcpyNodeFromSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, void* dst, const T& symbol, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphAddMemcpyNodeToSymbol(cudaGraphNode_t* pGraphNode, cudaGraph_t graph, const cudaGraphNode_t* pDependencies, size_t numDependencies, const T& symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphExecMemcpyNodeSetParamsFromSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, void* dst, const T& symbol, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphExecMemcpyNodeSetParamsToSymbol(cudaGraphExec_t hGraphExec, cudaGraphNode_t node, const T& symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
cudaError_t cudaGraphInstantiate(cudaGraphExec_t* pGraphExec, cudaGraph_t graph, cudaGraphNode_t* pErrorNode, char* pLogBuffer, size_t bufferSize);
template < class T >__host__ cudaError_t cudaGraphMemcpyNodeSetParamsFromSymbol(cudaGraphNode_t node, void* dst, const T& symbol, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaGraphMemcpyNodeSetParamsToSymbol(cudaGraphNode_t node, const T& symbol, const void* src, size_t count, size_t offset, cudaMemcpyKind kind);
template < class T >__host__ cudaError_t cudaLaunchCooperativeKernel(T* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem = 0, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaLaunchKernel(T* func, dim3 gridDim, dim3 blockDim, void** args, size_t sharedMem = 0, cudaStream_t stream = 0);
-template < typename... ActTypes >__host__ cudaError_t cudaLaunchKernelEx(const cudaLaunchConfig_t* config, const cudaKernel_t kernel, ActTypes &&... args);
template < typename... ExpTypes, typename... ActTypes >__host__ cudaError_t cudaLaunchKernelEx(const cudaLaunchConfig_t* config, void (*kernel)(ExpTypes...), ActTypes &&... args);
template < class T >__host__ cudaError_t cudaLibraryGetGlobal(T** dptr, size_t* bytes, cudaLibrary_t library, const char* name);
-template < class T >__host__ cudaError_t cudaLibraryGetManaged(T** dptr, size_t* bytes, cudaLibrary_t library, const char* name);
-template < class T >__host__ cudaError_t cudaLibraryGetUnifiedFunction(T** fptr, cudaLibrary_t library, const char* symbol);
cudaError_t cudaMallocAsync(void** ptr, size_t size, cudaMemPool_t memPool, cudaStream_t stream);
cudaError_t cudaMallocHost(void** ptr, size_t size, unsigned int flags);
template < class T >__host__ cudaError_t cudaMallocManaged(T** devPtr, size_t size, unsigned int flags = cudaMemAttachGlobal);
-template < typename T >__host__ cudaError_t cudaMemDiscardAndPrefetchBatchAsync(T** dptrs, size_t* sizes, size_t count, cudaMemLocation prefetchLocs, unsigned long long flags, cudaStream_t stream);
-template < typename T >__host__ cudaError_t cudaMemDiscardAndPrefetchBatchAsync(T** dptrs, size_t* sizes, size_t count, cudaMemLocation* prefetchLocs, size_t* prefetchLocIdxs, size_t numPrefetchLocs, unsigned long long flags, cudaStream_t stream);
-template < typename T >__host__ cudaError_t cudaMemPrefetchBatchAsync(T** dptrs, size_t* sizes, size_t count, cudaMemLocation prefetchLocs, unsigned long long flags, cudaStream_t stream);
-template < typename T >__host__ cudaError_t cudaMemPrefetchBatchAsync(T** dptrs, size_t* sizes, size_t count, cudaMemLocation* prefetchLocs, size_t* prefetchLocIdxs, size_t numPrefetchLocs, unsigned long long flags, cudaStream_t stream);
-template < typename T, typename U >__host__ cudaError_t cudaMemcpyAsync(T dst, U src, const size_t size, cudaMemcpyAttributes* attr, cudaStream_t hStream);
-template < typename T, typename U >__host__ cudaError_t cudaMemcpyBatchAsync(const T** dsts, const U** srcs, const size_t* sizes, size_t count, cudaMemcpyAttributes attr, cudaStream_t hStream);
-template < typename T, typename U >__host__ cudaError_t cudaMemcpyBatchAsync(const T** dsts, const U** srcs, const size_t* sizes, size_t count, cudaMemcpyAttributes* attrs, size_t* attrsIdxs, size_t numAttrs, cudaStream_t hStream);
template < class T >__host__ cudaError_t cudaMemcpyFromSymbol(void* dst, const T& symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost);
template < class T >__host__ cudaError_t cudaMemcpyFromSymbolAsync(void* dst, const T& symbol, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyDeviceToHost, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaMemcpyToSymbol(const T& symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice);
template < class T >__host__ cudaError_t cudaMemcpyToSymbolAsync(const T& symbol, const void* src, size_t count, size_t offset = 0, cudaMemcpyKind kind = cudaMemcpyHostToDevice, cudaStream_t stream = 0);
template < class T >__host__ cudaError_t cudaOccupancyAvailableDynamicSMemPerBlock(size_t* dynamicSmemSize, T* func, int numBlocks, int blockSize);
template < class T >__host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessor(int* numBlocks, T func, int blockSize, size_t dynamicSMemSize);
template < class T >__host__ cudaError_t cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags(int* numBlocks, T func, int blockSize, size_t dynamicSMemSize, unsigned int flags);
-template < class T >__host__ cudaError_t cudaOccupancyMaxActiveClusters(int* numClusters, T* func, const cudaLaunchConfig_t* config);
template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSize(int* minGridSize, int* blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0);
template < typename UnaryFunction, class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMem(int* minGridSize, int* blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0);
template < typename UnaryFunction, class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeVariableSMemWithFlags(int* minGridSize, int* blockSize, T func, UnaryFunction blockSizeToDynamicSMemSize, int blockSizeLimit = 0, unsigned int flags = 0);
template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialBlockSizeWithFlags(int* minGridSize, int* blockSize, T func, size_t dynamicSMemSize = 0, int blockSizeLimit = 0, unsigned int flags = 0);
-template < class T >__host__ cudaError_t cudaOccupancyMaxPotentialClusterSize(int* clusterSize, T* func, const cudaLaunchConfig_t* config);
template < class T >__host__ cudaError_t cudaStreamAttachMemAsync(cudaStream_t stream, T* devPtr, size_t length = 0, unsigned int flags = cudaMemAttachSingle);
6.35. Interactions with the CUDA Driver API#
cudaError_t cudaGetFuncBySymbol(cudaFunction_t* functionPtr, const void* symbolPtr);
-cudaError_t cudaGetKernel(cudaKernel_t* kernelPtr, const void* entryFuncAddr);
6.36. Logical Endpoint#
-__device__ cudaError_t cudaFabricOpErrorStatusCount(void* status, cudaFabricOpStatusSource statusSource, unsigned int* count);
-__device__ cudaError_t cudaFabricOpErrorStatusGet(void* status, cudaFabricOpStatusSource statusSource, unsigned int statusIndex, cudaFabricOpStatusInfo* statusInfo);
6.37. Profiler Control#
cudaError_t cudaProfilerStart(void);
cudaError_t cudaProfilerStop(void);
6.38. Data types used by CUDA Runtime#
-#define CUDA_EGL_MAX_PLANES
#define CUDA_IPC_HANDLE_SIZE
#define cudaArrayColorAttachment
#define cudaArrayCubemap
#define cudaArrayDefault
#define cudaArrayDeferredMapping
#define cudaArrayLayered
#define cudaArraySparse
#define cudaArraySparsePropertiesSingleMipTail
#define cudaArraySurfaceLoadStore
#define cudaArrayTextureGather
#define cudaCpuDeviceId
#define cudaDeviceBlockingSync
#define cudaDeviceLmemResizeToMax
#define cudaDeviceMapHost
#define cudaDeviceMask
#define cudaDeviceScheduleAuto
#define cudaDeviceScheduleBlockingSync
#define cudaDeviceScheduleMask
#define cudaDeviceScheduleSpin
#define cudaDeviceScheduleYield
#define cudaDeviceSyncMemops
#define cudaEventBlockingSync
#define cudaEventDefault
#define cudaEventDisableTiming
#define cudaEventInterprocess
#define cudaEventRecordDefault
#define cudaEventRecordExternal
#define cudaEventWaitDefault
#define cudaEventWaitExternal
-#define cudaExternalMemoryDedicated
-#define cudaExternalSemaphoreSignalSkipNvSciBufMemSync
-#define cudaExternalSemaphoreWaitSkipNvSciBufMemSync
#define cudaGraphKernelNodePortDefault
#define cudaGraphKernelNodePortLaunchCompletion
#define cudaGraphKernelNodePortProgrammatic
#define cudaHostAllocDefault
#define cudaHostAllocMapped
#define cudaHostAllocPortable
#define cudaHostAllocWriteCombined
#define cudaHostRegisterDefault
#define cudaHostRegisterIoMemory
#define cudaHostRegisterMapped
#define cudaHostRegisterPortable
#define cudaHostRegisterReadOnly
#define cudaInitDeviceFlagsAreValid
#define cudaInvalidDeviceId
#define cudaIpcMemLazyEnablePeerAccess
#define cudaMemAttachGlobal
#define cudaMemAttachHost
#define cudaMemAttachSingle
#define cudaMemPoolCreateUsageHwDecompress
-#define cudaNvSciSyncAttrSignal
-#define cudaNvSciSyncAttrWait
#define cudaOccupancyDefault
#define cudaOccupancyDisableCachingOverride
#define cudaPeerAccessDefault
#define cudaStreamDefault
#define cudaStreamLegacy
#define cudaStreamNonBlocking
#define cudaStreamPerThread
enum cudaAccessProperty
cudaAccessPropertyNormal = 0
cudaAccessPropertyStreaming = 1
cudaAccessPropertyPersisting = 2
-enum cudaAsyncNotificationType
enum cudaAtomicOperation
cudaAtomicOperationIntegerAdd = 0
cudaAtomicOperationIntegerMin = 1
cudaAtomicOperationIntegerMax = 2
cudaAtomicOperationIntegerIncrement = 3
cudaAtomicOperationIntegerDecrement = 4
cudaAtomicOperationAnd = 5
cudaAtomicOperationOr = 6
cudaAtomicOperationXOR = 7
cudaAtomicOperationExchange = 8
cudaAtomicOperationCAS = 9
cudaAtomicOperationFloatAdd = 10
cudaAtomicOperationFloatMin = 11
cudaAtomicOperationFloatMax = 12
enum cudaAtomicOperationCapability
- cudaAtomicCapabilitySigned = 1
cudaAtomicCapabilityUnsigned = 2
cudaAtomicCapabilityReduction = 4
cudaAtomicCapabilityScalar32 = 8
cudaAtomicCapabilityScalar64 = 16
cudaAtomicCapabilityScalar128 = 32
cudaAtomicCapabilityVector32x4 = 64
-enum cudaCGScope
enum cudaChannelFormatKind
cudaChannelFormatKindSigned = 0
cudaChannelFormatKindUnsigned = 1
cudaChannelFormatKindFloat = 2
cudaChannelFormatKindNone = 3
cudaChannelFormatKindNV12 = 4
cudaChannelFormatKindUnsignedNormalized8X1 = 5
cudaChannelFormatKindUnsignedNormalized8X2 = 6
cudaChannelFormatKindUnsignedNormalized8X4 = 7
cudaChannelFormatKindUnsignedNormalized16X1 = 8
cudaChannelFormatKindUnsignedNormalized16X2 = 9
cudaChannelFormatKindUnsignedNormalized16X4 = 10
cudaChannelFormatKindSignedNormalized8X1 = 11
cudaChannelFormatKindSignedNormalized8X2 = 12
cudaChannelFormatKindSignedNormalized8X4 = 13
cudaChannelFormatKindSignedNormalized16X1 = 14
cudaChannelFormatKindSignedNormalized16X2 = 15
cudaChannelFormatKindSignedNormalized16X4 = 16
cudaChannelFormatKindUnsignedBlockCompressed1 = 17
cudaChannelFormatKindUnsignedBlockCompressed1SRGB = 18
cudaChannelFormatKindUnsignedBlockCompressed2 = 19
cudaChannelFormatKindUnsignedBlockCompressed2SRGB = 20
cudaChannelFormatKindUnsignedBlockCompressed3 = 21
cudaChannelFormatKindUnsignedBlockCompressed3SRGB = 22
cudaChannelFormatKindUnsignedBlockCompressed4 = 23
cudaChannelFormatKindSignedBlockCompressed4 = 24
cudaChannelFormatKindUnsignedBlockCompressed5 = 25
cudaChannelFormatKindSignedBlockCompressed5 = 26
cudaChannelFormatKindUnsignedBlockCompressed6H = 27
cudaChannelFormatKindSignedBlockCompressed6H = 28
cudaChannelFormatKindUnsignedBlockCompressed7 = 29
cudaChannelFormatKindUnsignedBlockCompressed7SRGB = 30
cudaChannelFormatKindUnsignedNormalized1010102 = 31
- cudaChannelFormatKindUnsigned8Packed422 = 32
- cudaChannelFormatKindUnsigned8Packed444 = 33
- cudaChannelFormatKindUnsigned8SemiPlanar420 = 34
- cudaChannelFormatKindUnsigned16SemiPlanar420 = 35
- cudaChannelFormatKindUnsigned8SemiPlanar422 = 36
- cudaChannelFormatKindUnsigned16SemiPlanar422 = 37
- cudaChannelFormatKindUnsigned8SemiPlanar444 = 38
- cudaChannelFormatKindUnsigned16SemiPlanar444 = 39
- cudaChannelFormatKindUnsigned8Planar420 = 40
- cudaChannelFormatKindUnsigned16Planar420 = 41
- cudaChannelFormatKindUnsigned8Planar422 = 42
- cudaChannelFormatKindUnsigned16Planar422 = 43
- cudaChannelFormatKindUnsigned8Planar444 = 44
- cudaChannelFormatKindUnsigned16Planar444 = 45
enum cudaClusterSchedulingPolicy
cudaClusterSchedulingPolicyDefault = 0
cudaClusterSchedulingPolicySpread = 1
cudaClusterSchedulingPolicyLoadBalancing = 2
enum cudaComputeMode
cudaComputeModeDefault = 0
cudaComputeModeExclusive = 1
cudaComputeModeProhibited = 2
cudaComputeModeExclusiveProcess = 3
-enum cudaDevResourceType
-enum cudaDevSmResourceGroup_flags
-enum cudaDevWorkqueueConfigScope
enum cudaDeviceAttr
cudaDevAttrMaxThreadsPerBlock = 1
cudaDevAttrMaxBlockDimX = 2
cudaDevAttrMaxBlockDimY = 3
cudaDevAttrMaxBlockDimZ = 4
cudaDevAttrMaxGridDimX = 5
cudaDevAttrMaxGridDimY = 6
cudaDevAttrMaxGridDimZ = 7
cudaDevAttrMaxSharedMemoryPerBlock = 8
cudaDevAttrTotalConstantMemory = 9
cudaDevAttrWarpSize = 10
cudaDevAttrMaxPitch = 11
cudaDevAttrMaxRegistersPerBlock = 12
cudaDevAttrClockRate = 13
cudaDevAttrTextureAlignment = 14
cudaDevAttrGpuOverlap = 15
cudaDevAttrMultiProcessorCount = 16
cudaDevAttrKernelExecTimeout = 17
cudaDevAttrIntegrated = 18
cudaDevAttrCanMapHostMemory = 19
cudaDevAttrComputeMode = 20
cudaDevAttrMaxTexture1DWidth = 21
cudaDevAttrMaxTexture2DWidth = 22
cudaDevAttrMaxTexture2DHeight = 23
cudaDevAttrMaxTexture3DWidth = 24
cudaDevAttrMaxTexture3DHeight = 25
cudaDevAttrMaxTexture3DDepth = 26
cudaDevAttrMaxTexture2DLayeredWidth = 27
cudaDevAttrMaxTexture2DLayeredHeight = 28
cudaDevAttrMaxTexture2DLayeredLayers = 29
cudaDevAttrSurfaceAlignment = 30
cudaDevAttrConcurrentKernels = 31
cudaDevAttrEccEnabled = 32
cudaDevAttrPciBusId = 33
cudaDevAttrPciDeviceId = 34
cudaDevAttrTccDriver = 35
cudaDevAttrMemoryClockRate = 36
cudaDevAttrGlobalMemoryBusWidth = 37
cudaDevAttrL2CacheSize = 38
cudaDevAttrMaxThreadsPerMultiProcessor = 39
cudaDevAttrAsyncEngineCount = 40
cudaDevAttrUnifiedAddressing = 41
cudaDevAttrMaxTexture1DLayeredWidth = 42
cudaDevAttrMaxTexture1DLayeredLayers = 43
cudaDevAttrMaxTexture2DGatherWidth = 45
cudaDevAttrMaxTexture2DGatherHeight = 46
cudaDevAttrMaxTexture3DWidthAlt = 47
cudaDevAttrMaxTexture3DHeightAlt = 48
cudaDevAttrMaxTexture3DDepthAlt = 49
cudaDevAttrPciDomainId = 50
cudaDevAttrTexturePitchAlignment = 51
cudaDevAttrMaxTextureCubemapWidth = 52
cudaDevAttrMaxTextureCubemapLayeredWidth = 53
cudaDevAttrMaxTextureCubemapLayeredLayers = 54
cudaDevAttrMaxSurface1DWidth = 55
cudaDevAttrMaxSurface2DWidth = 56
cudaDevAttrMaxSurface2DHeight = 57
cudaDevAttrMaxSurface3DWidth = 58
cudaDevAttrMaxSurface3DHeight = 59
cudaDevAttrMaxSurface3DDepth = 60
cudaDevAttrMaxSurface1DLayeredWidth = 61
cudaDevAttrMaxSurface1DLayeredLayers = 62
cudaDevAttrMaxSurface2DLayeredWidth = 63
cudaDevAttrMaxSurface2DLayeredHeight = 64
cudaDevAttrMaxSurface2DLayeredLayers = 65
cudaDevAttrMaxSurfaceCubemapWidth = 66
cudaDevAttrMaxSurfaceCubemapLayeredWidth = 67
cudaDevAttrMaxSurfaceCubemapLayeredLayers = 68
cudaDevAttrMaxTexture1DLinearWidth = 69
cudaDevAttrMaxTexture2DLinearWidth = 70
cudaDevAttrMaxTexture2DLinearHeight = 71
cudaDevAttrMaxTexture2DLinearPitch = 72
cudaDevAttrMaxTexture2DMipmappedWidth = 73
cudaDevAttrMaxTexture2DMipmappedHeight = 74
cudaDevAttrComputeCapabilityMajor = 75
cudaDevAttrComputeCapabilityMinor = 76
cudaDevAttrMaxTexture1DMipmappedWidth = 77
cudaDevAttrStreamPrioritiesSupported = 78
cudaDevAttrGlobalL1CacheSupported = 79
cudaDevAttrLocalL1CacheSupported = 80
cudaDevAttrMaxSharedMemoryPerMultiprocessor = 81
cudaDevAttrMaxRegistersPerMultiprocessor = 82
cudaDevAttrManagedMemory = 83
cudaDevAttrIsMultiGpuBoard = 84
cudaDevAttrMultiGpuBoardGroupID = 85
cudaDevAttrHostNativeAtomicSupported = 86
cudaDevAttrSingleToDoublePrecisionPerfRatio = 87
cudaDevAttrPageableMemoryAccess = 88
cudaDevAttrConcurrentManagedAccess = 89
cudaDevAttrComputePreemptionSupported = 90
cudaDevAttrCanUseHostPointerForRegisteredMem = 91
cudaDevAttrReserved92 = 92
cudaDevAttrReserved93 = 93
cudaDevAttrReserved94 = 94
cudaDevAttrCooperativeLaunch = 95
- cudaDevAttrReserved96 = 96
cudaDevAttrMaxSharedMemoryPerBlockOptin = 97
cudaDevAttrCanFlushRemoteWrites = 98
cudaDevAttrHostRegisterSupported = 99
cudaDevAttrPageableMemoryAccessUsesHostPageTables = 100
cudaDevAttrDirectManagedMemAccessFromHost = 101
cudaDevAttrMaxBlocksPerMultiprocessor = 106
cudaDevAttrMaxPersistingL2CacheSize = 108
cudaDevAttrMaxAccessPolicyWindowSize = 109
cudaDevAttrReservedSharedMemoryPerBlock = 111
cudaDevAttrSparseCudaArraySupported = 112
cudaDevAttrHostRegisterReadOnlySupported = 113
cudaDevAttrTimelineSemaphoreInteropSupported = 114
cudaDevAttrMemoryPoolsSupported = 115
cudaDevAttrGPUDirectRDMASupported = 116
cudaDevAttrGPUDirectRDMAFlushWritesOptions = 117
cudaDevAttrGPUDirectRDMAWritesOrdering = 118
cudaDevAttrMemoryPoolSupportedHandleTypes = 119
cudaDevAttrClusterLaunch = 120
cudaDevAttrDeferredMappingCudaArraySupported = 121
cudaDevAttrReserved122 = 122
cudaDevAttrReserved123 = 123
cudaDevAttrReserved124 = 124
cudaDevAttrIpcEventSupport = 125
cudaDevAttrMemSyncDomainCount = 126
cudaDevAttrReserved127 = 127
cudaDevAttrReserved128 = 128
cudaDevAttrReserved129 = 129
cudaDevAttrNumaConfig = 130
cudaDevAttrNumaId = 131
cudaDevAttrReserved132 = 132
cudaDevAttrMpsEnabled = 133
cudaDevAttrHostNumaId = 134
cudaDevAttrD3D12CigSupported = 135
cudaDevAttrVulkanCigSupported = 138
cudaDevAttrGpuPciDeviceId = 139
cudaDevAttrGpuPciSubsystemId = 140
cudaDevAttrReserved141 = 141
cudaDevAttrHostNumaMemoryPoolsSupported = 142
cudaDevAttrHostNumaMultinodeIpcSupported = 143
cudaDevAttrHostMemoryPoolsSupported = 144
cudaDevAttrReserved145 = 145
cudaDevAttrOnlyPartialHostNativeAtomicSupported = 147
- cudaDevAttrAtomicReductionSupported = 148
- cudaDevAttrCigStreamsSupported = 151
- cudaDevAttrMax = 152
enum cudaDeviceNumaConfig
cudaDeviceNumaConfigNone = 0
cudaDeviceNumaConfigNumaNode = 1
enum cudaDeviceP2PAttr
cudaDevP2PAttrPerformanceRank = 1
cudaDevP2PAttrAccessSupported = 2
cudaDevP2PAttrNativeAtomicSupported = 3
cudaDevP2PAttrCudaArrayAccessSupported = 4
- cudaDevP2PAttrOnlyPartialNativeAtomicSupported = 5
enum cudaDriverEntryPointQueryResult
cudaDriverEntryPointSuccess = 0
cudaDriverEntryPointSymbolNotFound = 1
cudaDriverEntryPointVersionNotSufficent = 2
-enum cudaEglColorFormat
-enum cudaEglFrameType
-enum cudaEglResourceLocationFlags
enum cudaError
cudaSuccess = 0
cudaErrorInvalidValue = 1
cudaErrorMemoryAllocation = 2
cudaErrorInitializationError = 3
cudaErrorCudartUnloading = 4
cudaErrorProfilerDisabled = 5
cudaErrorProfilerNotInitialized = 6
cudaErrorProfilerAlreadyStarted = 7
cudaErrorProfilerAlreadyStopped = 8
cudaErrorInvalidConfiguration = 9
- cudaErrorVersionTranslation = 10
cudaErrorInvalidPitchValue = 12
cudaErrorInvalidSymbol = 13
cudaErrorInvalidHostPointer = 16
cudaErrorInvalidDevicePointer = 17
cudaErrorInvalidTexture = 18
cudaErrorInvalidTextureBinding = 19
cudaErrorInvalidChannelDescriptor = 20
cudaErrorInvalidMemcpyDirection = 21
cudaErrorAddressOfConstant = 22
cudaErrorTextureFetchFailed = 23
cudaErrorTextureNotBound = 24
cudaErrorSynchronizationError = 25
cudaErrorInvalidFilterSetting = 26
cudaErrorInvalidNormSetting = 27
cudaErrorMixedDeviceExecution = 28
cudaErrorNotYetImplemented = 31
cudaErrorMemoryValueTooLarge = 32
cudaErrorStubLibrary = 34
cudaErrorInsufficientDriver = 35
cudaErrorCallRequiresNewerDriver = 36
cudaErrorInvalidSurface = 37
cudaErrorDuplicateVariableName = 43
cudaErrorDuplicateTextureName = 44
cudaErrorDuplicateSurfaceName = 45
cudaErrorDevicesUnavailable = 46
cudaErrorIncompatibleDriverContext = 49
cudaErrorMissingConfiguration = 52
cudaErrorPriorLaunchFailure = 53
cudaErrorLaunchMaxDepthExceeded = 65
cudaErrorLaunchFileScopedTex = 66
cudaErrorLaunchFileScopedSurf = 67
cudaErrorSyncDepthExceeded = 68
cudaErrorLaunchPendingCountExceeded = 69
cudaErrorInvalidDeviceFunction = 98
cudaErrorNoDevice = 100
cudaErrorInvalidDevice = 101
cudaErrorDeviceNotLicensed = 102
cudaErrorSoftwareValidityNotEstablished = 103
cudaErrorStartupFailure = 127
cudaErrorInvalidKernelImage = 200
cudaErrorDeviceUninitialized = 201
cudaErrorMapBufferObjectFailed = 205
cudaErrorUnmapBufferObjectFailed = 206
cudaErrorArrayIsMapped = 207
cudaErrorAlreadyMapped = 208
cudaErrorNoKernelImageForDevice = 209
cudaErrorAlreadyAcquired = 210
cudaErrorNotMapped = 211
cudaErrorNotMappedAsArray = 212
cudaErrorNotMappedAsPointer = 213
cudaErrorECCUncorrectable = 214
cudaErrorUnsupportedLimit = 215
cudaErrorDeviceAlreadyInUse = 216
cudaErrorPeerAccessUnsupported = 217
cudaErrorInvalidPtx = 218
cudaErrorInvalidGraphicsContext = 219
cudaErrorNvlinkUncorrectable = 220
cudaErrorJitCompilerNotFound = 221
cudaErrorUnsupportedPtxVersion = 222
cudaErrorJitCompilationDisabled = 223
cudaErrorUnsupportedExecAffinity = 224
cudaErrorUnsupportedDevSideSync = 225
cudaErrorContained = 226
cudaErrorInvalidSource = 300
cudaErrorFileNotFound = 301
cudaErrorSharedObjectSymbolNotFound = 302
cudaErrorSharedObjectInitFailed = 303
cudaErrorOperatingSystem = 304
cudaErrorInvalidResourceHandle = 400
cudaErrorIllegalState = 401
cudaErrorLossyQuery = 402
cudaErrorSymbolNotFound = 500
cudaErrorNotReady = 600
cudaErrorIllegalAddress = 700
cudaErrorLaunchOutOfResources = 701
cudaErrorLaunchTimeout = 702
cudaErrorLaunchIncompatibleTexturing = 703
cudaErrorPeerAccessAlreadyEnabled = 704
cudaErrorPeerAccessNotEnabled = 705
cudaErrorSetOnActiveProcess = 708
cudaErrorContextIsDestroyed = 709
cudaErrorAssert = 710
cudaErrorTooManyPeers = 711
cudaErrorHostMemoryAlreadyRegistered = 712
cudaErrorHostMemoryNotRegistered = 713
cudaErrorHardwareStackError = 714
cudaErrorIllegalInstruction = 715
cudaErrorMisalignedAddress = 716
cudaErrorInvalidAddressSpace = 717
cudaErrorInvalidPc = 718
cudaErrorLaunchFailure = 719
cudaErrorCooperativeLaunchTooLarge = 720
cudaErrorTensorMemoryLeak = 721
cudaErrorNotPermitted = 800
cudaErrorNotSupported = 801
cudaErrorSystemNotReady = 802
cudaErrorSystemDriverMismatch = 803
cudaErrorCompatNotSupportedOnDevice = 804
cudaErrorMpsConnectionFailed = 805
cudaErrorMpsRpcFailure = 806
cudaErrorMpsServerNotReady = 807
cudaErrorMpsMaxClientsReached = 808
cudaErrorMpsMaxConnectionsReached = 809
cudaErrorMpsClientTerminated = 810
cudaErrorCdpNotSupported = 811
cudaErrorCdpVersionMismatch = 812
cudaErrorStreamCaptureUnsupported = 900
cudaErrorStreamCaptureInvalidated = 901
cudaErrorStreamCaptureMerge = 902
cudaErrorStreamCaptureUnmatched = 903
cudaErrorStreamCaptureUnjoined = 904
cudaErrorStreamCaptureIsolation = 905
cudaErrorStreamCaptureImplicit = 906
cudaErrorCapturedEvent = 907
cudaErrorStreamCaptureWrongThread = 908
cudaErrorTimeout = 909
cudaErrorGraphExecUpdateFailure = 910
cudaErrorExternalDevice = 911
cudaErrorInvalidClusterSize = 912
cudaErrorFunctionNotLoaded = 913
cudaErrorInvalidResourceType = 914
cudaErrorInvalidResourceConfiguration = 915
cudaErrorStreamDetached = 917
- cudaErrorGraphRecaptureFailure = 918
cudaErrorUnknown = 999
cudaErrorApiFailureBase = 10000
-enum cudaExternalMemoryHandleType
-enum cudaExternalSemaphoreHandleType
-enum cudaFabricOpStatusInfo
-enum cudaFabricOpStatusSource
enum cudaFlushGPUDirectRDMAWritesOptions
cudaFlushGPUDirectRDMAWritesOptionHost = 1
cudaFlushGPUDirectRDMAWritesOptionMemOps = 2
enum cudaFlushGPUDirectRDMAWritesScope
cudaFlushGPUDirectRDMAWritesToOwner = 100
cudaFlushGPUDirectRDMAWritesToAllDevices = 200
enum cudaFlushGPUDirectRDMAWritesTarget
cudaFlushGPUDirectRDMAWritesTargetCurrentDevice = 0
enum cudaFuncAttribute
cudaFuncAttributeMaxDynamicSharedMemorySize = 8
cudaFuncAttributePreferredSharedMemoryCarveout = 9
cudaFuncAttributeClusterDimMustBeSet = 10
cudaFuncAttributeRequiredClusterWidth = 11
cudaFuncAttributeRequiredClusterHeight = 12
cudaFuncAttributeRequiredClusterDepth = 13
cudaFuncAttributeNonPortableClusterSizeAllowed = 14
cudaFuncAttributeClusterSchedulingPolicyPreference = 15
cudaFuncAttributeMax = 16
enum cudaFuncCache
cudaFuncCachePreferNone = 0
cudaFuncCachePreferShared = 1
cudaFuncCachePreferL1 = 2
cudaFuncCachePreferEqual = 3
enum cudaGPUDirectRDMAWritesOrdering
cudaGPUDirectRDMAWritesOrderingNone = 0
cudaGPUDirectRDMAWritesOrderingOwner = 100
cudaGPUDirectRDMAWritesOrderingAllDevices = 200
enum cudaGetDriverEntryPointFlags
cudaEnableDefault = 0
cudaEnableLegacyStream = 1
cudaEnablePerThreadDefaultStream = 2
-enum cudaGraphChildGraphNodeOwnership
cudaGraphChildGraphOwnershipClone = 0
cudaGraphChildGraphOwnershipMove = 1
- cudaGraphChildGraphOwnershipInvalid = 18446744073709551615
-enum cudaGraphConditionalNodeType
enum cudaGraphDebugDotFlags
cudaGraphDebugDotFlagsVerbose = 1
cudaGraphDebugDotFlagsKernelNodeParams = 4
cudaGraphDebugDotFlagsMemcpyNodeParams = 8
cudaGraphDebugDotFlagsMemsetNodeParams = 16
cudaGraphDebugDotFlagsHostNodeParams = 32
cudaGraphDebugDotFlagsEventNodeParams = 64
cudaGraphDebugDotFlagsExtSemasSignalNodeParams = 128
cudaGraphDebugDotFlagsExtSemasWaitNodeParams = 256
cudaGraphDebugDotFlagsKernelNodeAttributes = 512
cudaGraphDebugDotFlagsHandles = 1024
cudaGraphDebugDotFlagsConditionalNodeParams = 32768
enum cudaGraphDependencyType
cudaGraphDependencyTypeDefault = 0
cudaGraphDependencyTypeProgrammatic = 1
enum cudaGraphExecUpdateResult
cudaGraphExecUpdateSuccess = 0
cudaGraphExecUpdateError = 1
cudaGraphExecUpdateErrorTopologyChanged = 2
cudaGraphExecUpdateErrorNodeTypeChanged = 3
cudaGraphExecUpdateErrorFunctionChanged = 4
cudaGraphExecUpdateErrorParametersChanged = 5
cudaGraphExecUpdateErrorNotSupported = 6
cudaGraphExecUpdateErrorUnsupportedFunctionChange = 7
cudaGraphExecUpdateErrorAttributesChanged = 8
enum cudaGraphInstantiateFlags
cudaGraphInstantiateFlagAutoFreeOnLaunch = 1
cudaGraphInstantiateFlagUpload = 2
cudaGraphInstantiateFlagDeviceLaunch = 4
cudaGraphInstantiateFlagUseNodePriority = 8
enum cudaGraphInstantiateResult
cudaGraphInstantiateSuccess = 0
cudaGraphInstantiateError = 1
cudaGraphInstantiateInvalidStructure = 2
cudaGraphInstantiateNodeOperationNotSupported = 3
cudaGraphInstantiateMultipleDevicesNotSupported = 4
cudaGraphInstantiateConditionalHandleUnused = 5
-enum cudaGraphKernelNodeField
-enum cudaGraphMemAttributeType
enum cudaGraphNodeType
cudaGraphNodeTypeKernel = 0
cudaGraphNodeTypeMemcpy = 1
cudaGraphNodeTypeMemset = 2
cudaGraphNodeTypeHost = 3
cudaGraphNodeTypeGraph = 4
cudaGraphNodeTypeEmpty = 5
cudaGraphNodeTypeWaitEvent = 6
cudaGraphNodeTypeEventRecord = 7
cudaGraphNodeTypeExtSemaphoreSignal = 8
cudaGraphNodeTypeExtSemaphoreWait = 9
cudaGraphNodeTypeMemAlloc = 10
cudaGraphNodeTypeMemFree = 11
cudaGraphNodeTypeConditional = 13
- cudaGraphNodeTypeReserved16 = 16
- cudaGraphNodeTypeCount = 17
-enum cudaGraphRecaptureStatus
enum cudaGraphicsCubeFace
cudaGraphicsCubeFacePositiveX = 0
cudaGraphicsCubeFaceNegativeX = 1
cudaGraphicsCubeFacePositiveY = 2
cudaGraphicsCubeFaceNegativeY = 3
cudaGraphicsCubeFacePositiveZ = 4
cudaGraphicsCubeFaceNegativeZ = 5
enum cudaGraphicsMapFlags
cudaGraphicsMapFlagsNone = 0
cudaGraphicsMapFlagsReadOnly = 1
cudaGraphicsMapFlagsWriteDiscard = 2
enum cudaGraphicsRegisterFlags
cudaGraphicsRegisterFlagsNone = 0
cudaGraphicsRegisterFlagsReadOnly = 1
cudaGraphicsRegisterFlagsWriteDiscard = 2
cudaGraphicsRegisterFlagsSurfaceLoadStore = 4
cudaGraphicsRegisterFlagsTextureGather = 8
-enum cudaHostTaskSyncMode
-enum cudaJitOption
-enum cudaJit_CacheMode
-enum cudaJit_Fallback
-enum cudaKernelFunctionType
enum cudaLaunchAttributeID
cudaLaunchAttributeIgnore = 0
cudaLaunchAttributeAccessPolicyWindow = 1
cudaLaunchAttributeCooperative = 2
cudaLaunchAttributeSynchronizationPolicy = 3
cudaLaunchAttributeClusterDimension = 4
cudaLaunchAttributeClusterSchedulingPolicyPreference = 5
cudaLaunchAttributeProgrammaticStreamSerialization = 6
cudaLaunchAttributeProgrammaticEvent = 7
cudaLaunchAttributePriority = 8
cudaLaunchAttributeMemSyncDomainMap = 9
cudaLaunchAttributeMemSyncDomain = 10
cudaLaunchAttributePreferredClusterDimension = 11
cudaLaunchAttributeLaunchCompletionEvent = 12
cudaLaunchAttributeDeviceUpdatableKernelNode = 13
cudaLaunchAttributePreferredSharedMemoryCarveout = 14
cudaLaunchAttributeNvlinkUtilCentricScheduling = 16
- cudaLaunchAttributePortableClusterSizeMode = 17
- cudaLaunchAttributeSharedMemoryMode = 18
-enum cudaLaunchAttributePortableClusterMode
enum cudaLaunchMemSyncDomain
cudaLaunchMemSyncDomainDefault = 0
cudaLaunchMemSyncDomainRemote = 1
-enum cudaLibraryOption
enum cudaLimit
cudaLimitStackSize = 0
cudaLimitPrintfFifoSize = 1
cudaLimitMallocHeapSize = 2
cudaLimitDevRuntimeSyncDepth = 3
cudaLimitDevRuntimePendingLaunchCount = 4
cudaLimitMaxL2FetchGranularity = 5
cudaLimitPersistingL2CacheSize = 6
enum cudaMemAccessFlags
cudaMemAccessFlagsProtNone = 0
cudaMemAccessFlagsProtRead = 1
cudaMemAccessFlagsProtReadWrite = 3
enum cudaMemAllocationHandleType
cudaMemHandleTypeNone = 0
cudaMemHandleTypePosixFileDescriptor = 1
cudaMemHandleTypeWin32 = 2
cudaMemHandleTypeWin32Kmt = 4
cudaMemHandleTypeFabric = 8
enum cudaMemAllocationType
cudaMemAllocationTypeInvalid = 0
cudaMemAllocationTypePinned = 1
cudaMemAllocationTypeManaged = 2
cudaMemAllocationTypeMax = 2147483647
enum cudaMemLocationType
cudaMemLocationTypeInvalid = 0
cudaMemLocationTypeNone = 0
cudaMemLocationTypeDevice = 1
cudaMemLocationTypeHost = 2
cudaMemLocationTypeHostNuma = 3
cudaMemLocationTypeHostNumaCurrent = 4
- cudaMemLocationTypeInvisible = 5
enum cudaMemPoolAttr
cudaMemPoolReuseFollowEventDependencies = 1
cudaMemPoolReuseAllowOpportunistic = 2
cudaMemPoolReuseAllowInternalDependencies = 3
cudaMemPoolAttrReleaseThreshold = 4
cudaMemPoolAttrReservedMemCurrent = 5
cudaMemPoolAttrReservedMemHigh = 6
cudaMemPoolAttrUsedMemCurrent = 7
cudaMemPoolAttrUsedMemHigh = 8
cudaMemPoolAttrAllocationType = 9
cudaMemPoolAttrExportHandleTypes = 10
cudaMemPoolAttrLocationId = 11
cudaMemPoolAttrLocationType = 12
cudaMemPoolAttrMaxPoolSize = 13
cudaMemPoolAttrHwDecompressEnabled = 14
enum cudaMemRangeAttribute
cudaMemRangeAttributeReadMostly = 1
cudaMemRangeAttributePreferredLocation = 2
cudaMemRangeAttributeAccessedBy = 3
cudaMemRangeAttributeLastPrefetchLocation = 4
cudaMemRangeAttributePreferredLocationType = 5
cudaMemRangeAttributePreferredLocationId = 6
cudaMemRangeAttributeLastPrefetchLocationType = 7
cudaMemRangeAttributeLastPrefetchLocationId = 8
enum cudaMemcpy3DOperandType
cudaMemcpyOperandTypePointer = 1
cudaMemcpyOperandTypeArray = 2
cudaMemcpyOperandTypeMax = 2147483647
enum cudaMemcpyFlags
cudaMemcpyFlagDefault = 0
cudaMemcpyFlagPreferOverlapWithCompute = 1
enum cudaMemcpyKind
cudaMemcpyHostToHost = 0
cudaMemcpyHostToDevice = 1
cudaMemcpyDeviceToHost = 2
cudaMemcpyDeviceToDevice = 3
cudaMemcpyDefault = 4
enum cudaMemoryAdvise
cudaMemAdviseSetReadMostly = 1
cudaMemAdviseUnsetReadMostly = 2
cudaMemAdviseSetPreferredLocation = 3
cudaMemAdviseUnsetPreferredLocation = 4
cudaMemAdviseSetAccessedBy = 5
cudaMemAdviseUnsetAccessedBy = 6
enum cudaMemoryType
cudaMemoryTypeUnregistered = 0
cudaMemoryTypeHost = 1
cudaMemoryTypeDevice = 2
cudaMemoryTypeManaged = 3
enum cudaResourceType
cudaResourceTypeArray = 0
cudaResourceTypeMipmappedArray = 1
cudaResourceTypeLinear = 2
cudaResourceTypePitch2D = 3
enum cudaResourceViewFormat
cudaResViewFormatNone = 0
cudaResViewFormatUnsignedChar1 = 1
cudaResViewFormatUnsignedChar2 = 2
cudaResViewFormatUnsignedChar4 = 3
cudaResViewFormatSignedChar1 = 4
cudaResViewFormatSignedChar2 = 5
cudaResViewFormatSignedChar4 = 6
cudaResViewFormatUnsignedShort1 = 7
cudaResViewFormatUnsignedShort2 = 8
cudaResViewFormatUnsignedShort4 = 9
cudaResViewFormatSignedShort1 = 10
cudaResViewFormatSignedShort2 = 11
cudaResViewFormatSignedShort4 = 12
cudaResViewFormatUnsignedInt1 = 13
cudaResViewFormatUnsignedInt2 = 14
cudaResViewFormatUnsignedInt4 = 15
cudaResViewFormatSignedInt1 = 16
cudaResViewFormatSignedInt2 = 17
cudaResViewFormatSignedInt4 = 18
cudaResViewFormatHalf1 = 19
cudaResViewFormatHalf2 = 20
cudaResViewFormatHalf4 = 21
cudaResViewFormatFloat1 = 22
cudaResViewFormatFloat2 = 23
cudaResViewFormatFloat4 = 24
cudaResViewFormatUnsignedBlockCompressed1 = 25
cudaResViewFormatUnsignedBlockCompressed2 = 26
cudaResViewFormatUnsignedBlockCompressed3 = 27
cudaResViewFormatUnsignedBlockCompressed4 = 28
cudaResViewFormatSignedBlockCompressed4 = 29
cudaResViewFormatUnsignedBlockCompressed5 = 30
cudaResViewFormatSignedBlockCompressed5 = 31
cudaResViewFormatUnsignedBlockCompressed6H = 32
cudaResViewFormatSignedBlockCompressed6H = 33
cudaResViewFormatUnsignedBlockCompressed7 = 34
enum cudaSharedCarveout
cudaSharedmemCarveoutDefault = 18446744073709551615
cudaSharedmemCarveoutMaxShared = 100
cudaSharedmemCarveoutMaxL1 = 0
enum cudaSharedMemConfig
cudaSharedMemBankSizeDefault = 0
cudaSharedMemBankSizeFourByte = 1
cudaSharedMemBankSizeEightByte = 2
-enum cudaSharedMemoryMode
enum cudaStreamCaptureMode
cudaStreamCaptureModeGlobal = 0
cudaStreamCaptureModeThreadLocal = 1
cudaStreamCaptureModeRelaxed = 2
enum cudaStreamCaptureStatus
cudaStreamCaptureStatusNone = 0
cudaStreamCaptureStatusActive = 1
cudaStreamCaptureStatusInvalidated = 2
enum cudaStreamUpdateCaptureDependenciesFlags
cudaStreamAddCaptureDependencies = 0
cudaStreamSetCaptureDependencies = 1
enum cudaSurfaceBoundaryMode
cudaBoundaryModeZero = 0
cudaBoundaryModeClamp = 1
cudaBoundaryModeTrap = 2
enum cudaSurfaceFormatMode
cudaFormatModeForced = 0
cudaFormatModeAuto = 1
enum cudaTextureAddressMode
cudaAddressModeWrap = 0
cudaAddressModeClamp = 1
cudaAddressModeMirror = 2
cudaAddressModeBorder = 3
enum cudaTextureFilterMode
cudaFilterModePoint = 0
cudaFilterModeLinear = 1
enum cudaTextureReadMode
cudaReadModeElementType = 0
cudaReadModeNormalizedFloat = 1
enum cudaUserObjectFlags
cudaUserObjectNoDestructorSync = 1
enum cudaUserObjectRetainFlags
cudaGraphUserObjectMove = 1
struct CUuuid_st
struct cudaAccessPolicyWindow
base_ptr
hitProp
hitRatio
missProp
num_bytes
struct cudaArrayMemoryRequirements
alignment
size
struct cudaArraySparseProperties
depth
flags
height
miptailFirstLevel
miptailSize
width
-struct cudaAsyncNotificationInfo_t
struct cudaChannelFormatDesc
f
w
x
y
z
struct cudaChildGraphNodeParams
graph
ownership
-struct cudaConditionalNodeParams
struct cudaDevResource
sm
type
wq
wqConfig
-struct cudaDevSmResource
-struct cudaDevSmResourceGroupParams
-struct cudaDevWorkqueueConfigResource
-struct cudaDevWorkqueueResource
struct cudaDeviceProp
ECCEnabled
accessPolicyMaxWindowSize
asyncEngineCount
canMapHostMemory
canUseHostPointerForRegisteredMem
clusterLaunch
computePreemptionSupported
concurrentKernels
concurrentManagedAccess
cooperativeLaunch
deferredMappingCudaArraySupported
- deviceNumaConfig
- deviceNumaId
directManagedMemAccessFromHost
globalL1CacheSupported
gpuDirectRDMAFlushWritesOptions
gpuDirectRDMASupported
gpuDirectRDMAWritesOrdering
- gpuPciDeviceID
- gpuPciSubsystemID
hostNativeAtomicSupported
- hostNumaId
- hostNumaMultinodeIpcSupported
hostRegisterReadOnlySupported
hostRegisterSupported
integrated
ipcEventSupported
isMultiGpuBoard
l2CacheSize
localL1CacheSupported
luid
luidDeviceNodeMask
major
managedMemory
maxBlocksPerMultiProcessor
maxGridSize
maxSurface1D
maxSurface1DLayered
maxSurface2D
maxSurface2DLayered
maxSurface3D
maxSurfaceCubemap
maxSurfaceCubemapLayered
maxTexture1D
maxTexture1DLayered
maxTexture1DMipmap
maxTexture2D
maxTexture2DGather
maxTexture2DLayered
maxTexture2DLinear
maxTexture2DMipmap
maxTexture3D
maxTexture3DAlt
maxTextureCubemap
maxTextureCubemapLayered
maxThreadsDim
maxThreadsPerBlock
maxThreadsPerMultiProcessor
memPitch
memoryBusWidth
memoryPoolSupportedHandleTypes
memoryPoolsSupported
minor
- mpsEnabled
multiGpuBoardGroupID
multiProcessorCount
name
pageableMemoryAccess
pageableMemoryAccessUsesHostPageTables
pciBusID
pciDeviceID
pciDomainID
persistingL2CacheMaxSize
regsPerBlock
regsPerMultiprocessor
- reserved
reservedSharedMemPerBlock
sharedMemPerBlock
sharedMemPerBlockOptin
sharedMemPerMultiprocessor
sparseCudaArraySupported
streamPrioritiesSupported
surfaceAlignment
tccDriver
textureAlignment
texturePitchAlignment
timelineSemaphoreInteropSupported
totalConstMem
totalGlobalMem
unifiedAddressing
unifiedFunctionPointers
uuid
warpSize
-struct cudaEglFrame
-struct cudaEglPlaneDesc
struct cudaEventRecordNodeParams
event
struct cudaEventWaitNodeParams
event
struct cudaExtent
depth
height
width
-struct cudaExternalMemoryBufferDesc
struct cudaExternalMemoryHandleDesc
-struct cudaExternalMemoryMipmappedArrayDesc
struct cudaExternalSemaphoreHandleDesc
-struct cudaExternalSemaphoreSignalNodeParams
-struct cudaExternalSemaphoreSignalNodeParamsV2
struct cudaExternalSemaphoreSignalParams
-struct cudaExternalSemaphoreWaitNodeParams
-struct cudaExternalSemaphoreWaitNodeParamsV2
struct cudaExternalSemaphoreWaitParams
struct cudaFuncAttributes
binaryVersion
cacheModeCA
clusterDimMustBeSet
clusterSchedulingPolicyPreference
constSizeBytes
- deviceNodeUpdateStatus
localSizeBytes
maxDynamicSharedSizeBytes
maxThreadsPerBlock
nonPortableClusterSizeAllowed
numRegs
preferredShmemCarveout
ptxVersion
requiredClusterWidth
- reserved
sharedSizeBytes
struct cudaGraphEdgeData
from_port
reserved
to_port
type
struct cudaGraphExecUpdateResultInfo
errorFromNode
errorNode
result
struct cudaGraphInstantiateParams
errNode_out
flags
result_out
uploadStream
struct cudaGraphKernelNodeUpdate
struct cudaGraphNodeParams
alloc
- conditional
eventRecord
eventWait
- extSemSignal
- extSemWait
free
graph
host
kernel
memcpy
- memset
reserved0
reserved1
reserved2
type
struct cudaHostNodeParams
fn
userData
struct cudaHostNodeParamsV2
fn
- syncMode
userData
struct cudaIpcEventHandle_t
struct cudaIpcMemHandle_t
struct cudaKernelNodeParams
blockDim
extra
func
gridDim
kernelParams
sharedMemBytes
struct cudaKernelNodeParamsV2
blockDim
- ctx
- cuFunc
extra
func
- functionType
gridDim
- kern
kernelParams
sharedMemBytes
struct cudaLaunchAttribute
id
val
union cudaLaunchAttributeValue
struct cudaLaunchConfig_t
attrs
blockDim
dynamicSmemBytes
gridDim
numAttrs
stream
struct cudaLaunchMemSyncDomainMap
default_
remote
struct cudaMemAccessDesc
flags
location
struct cudaMemAllocNodeParams
accessDescCount
accessDescs
bytesize
dptr
poolProps
struct cudaMemAllocNodeParamsV2
accessDescCount
accessDescs
bytesize
dptr
poolProps
struct cudaMemFreeNodeParams
dptr
struct cudaMemLocation
id
type
struct cudaMemPoolProps
allocType
handleTypes
location
maxSize
reserved
usage
win32SecurityAttributes
struct cudaMemPoolPtrExportData
struct cudaMemcpy3DOperand
struct cudaMemcpy3DParms
dstArray
dstPos
dstPtr
extent
kind
srcArray
srcPos
srcPtr
struct cudaMemcpy3DPeerParms
dstArray
dstDevice
dstPos
dstPtr
extent
srcArray
srcDevice
srcPos
srcPtr
struct cudaMemcpyAttributes
dstLocHint
flags
srcAccessOrder
srcLocHint
struct cudaMemcpyNodeParams
copyParams
- ctx
flags
- reserved
struct cudaMemsetParams
dst
elementSize
height
pitch
value
width
struct cudaMemsetParamsV2
- ctx
dst
elementSize
height
pitch
value
width
struct cudaOffset3D
struct cudaPitchedPtr
pitch
ptr
xsize
ysize
struct cudaPointerAttributes
device
devicePointer
hostPointer
- reserved
type
struct cudaPos
x
y
z
struct cudaResourceDesc
array
desc
devPtr
- flags
height
mipmap
pitchInBytes
resType
sizeInBytes
width
struct cudaResourceViewDesc
depth
firstLayer
firstMipmapLevel
format
height
lastLayer
lastMipmapLevel
- reserved
width
struct cudaTextureDesc
addressMode
borderColor
disableTrilinearOptimization
filterMode
maxAnisotropy
maxMipmapLevelClamp
minMipmapLevelClamp
mipmapFilterMode
mipmapLevelBias
normalizedCoords
readMode
sRGB
seamlessCubemap
typedef const cudaArray * cudaArray_const_t;
typedef cudaArray * cudaArray_t;
-typedef cudaAsyncCallbackEntry * cudaAsyncCallbackHandle_t;
-typedef CUdevResourceDesc_st * cudaDevResourceDesc_t;
-typedef CUeglStreamConnection_st * cudaEglStreamConnection;
typedef enum cudaError cudaError_t;
typedef CUevent_st * cudaEvent_t;
typedef cudaExecutionContext_st * cudaExecutionContext_t;
-typedef CUexternalMemory_st * cudaExternalMemory_t;
-typedef CUexternalSemaphore_st * cudaExternalSemaphore_t;
typedef CUfunc_st * cudaFunction_t;
-typedef unsigned long long cudaGraphConditionalHandle;
typedef CUgraphDeviceUpdatableNode_st * cudaGraphDeviceNode_t;
typedef CUgraphExec_st * cudaGraphExec_t;
typedef CUgraphNode_st * cudaGraphNode_t;
typedef CUgraph_st * cudaGraph_t;
typedef cudaGraphicsResource * cudaGraphicsResource_t;
typedef void(* cudaHostFn_t)(void* userData);
typedef CUkern_st * cudaKernel_t;
typedef CUlib_st * cudaLibrary_t;
typedef CUmemPoolHandle_st * cudaMemPool_t;
typedef const cudaMipmappedArray * cudaMipmappedArray_const_t;
typedef cudaMipmappedArray * cudaMipmappedArray_t;
typedef CUstream_st * cudaStream_t;
typedef unsigned long long cudaSurfaceObject_t;
typedef unsigned long long cudaTextureObject_t;
typedef CUuserObject_st * cudaUserObject_t;