ILGPU  0.9.0
ILGPU.Runtime.Cuda Namespace Reference

Namespaces

namespace  API
 

Classes

class  CudaAccelerator
 Represents a Cuda accelerator. More...
 
class  CudaAcceleratorId
 Represents a single Cuda accelerator reference. More...
 
struct  CudaDriverVersion
 Represents a CUDA driver version More...
 
class  CudaDriverVersionUtils
 Utilities for CudaDriverVersion.
 
class  CudaException
 Represents a Cuda exception that can be thrown by the Cuda runtime. More...
 
class  CudaKernel
 Represents a Cuda kernel that can be directly launched on a GPU. More...
 
class  CudaMemoryBuffer
 Represents an unmanaged Cuda buffer. More...
 
class  CudaStream
 Represents a Cuda stream. More...
 

Enumerations

enum  CudaAcceleratorFlags { CudaAcceleratorFlags.ScheduleAuto = 0, CudaAcceleratorFlags.ScheduleSpin = 1, CudaAcceleratorFlags.ScheduleYield = 2, CudaAcceleratorFlags.ScheduleBlockingSync = 4 }
 Represents the accelerator flags for a Cuda accelerator. More...
 
enum  CudaCacheConfiguration { CudaCacheConfiguration.Default = 0, CudaCacheConfiguration.PreferShared = 1, CudaCacheConfiguration.PreferL1 = 2, CudaCacheConfiguration.PreferEqual = 3 }
 Represents a cache configuration of a device. More...
 
enum  CudaMemoryType {
  CudaMemoryType.None = 0, CudaMemoryType.Host = 1, CudaMemoryType.Device = 2, CudaMemoryType.Array = 3,
  CudaMemoryType.Unified = 4
}
 Represents the type of a device pointer. More...
 
enum  StreamFlags { StreamFlags.CU_STREAM_DEFAULT = 0, StreamFlags.CU_STREAM_NON_BLOCKING = 1 }
 
enum  DeviceAttribute {
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK = 1, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X = 2, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y = 3, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Z = 4,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_X = 5, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Y = 6, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Z = 7, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK = 8,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_SHARED_MEMORY_PER_BLOCK = 8, DeviceAttribute.CU_DEVICE_ATTRIBUTE_TOTAL_CONSTANT_MEMORY = 9, DeviceAttribute.CU_DEVICE_ATTRIBUTE_WARP_SIZE = 10, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_PITCH = 11,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_BLOCK = 12, DeviceAttribute.CU_DEVICE_ATTRIBUTE_REGISTERS_PER_BLOCK = 12, DeviceAttribute.CU_DEVICE_ATTRIBUTE_CLOCK_RATE = 13, DeviceAttribute.CU_DEVICE_ATTRIBUTE_TEXTURE_ALIGNMENT = 14,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_GPU_OVERLAP = 15, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MULTIPROCESSOR_COUNT = 16, DeviceAttribute.CU_DEVICE_ATTRIBUTE_KERNEL_EXEC_TIMEOUT = 17, DeviceAttribute.CU_DEVICE_ATTRIBUTE_INTEGRATED = 18,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_CAN_MAP_HOST_MEMORY = 19, DeviceAttribute.CU_DEVICE_ATTRIBUTE_COMPUTE_MODE = 20, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_WIDTH = 21, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_WIDTH = 22,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_HEIGHT = 23, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH = 24, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT = 25, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH = 26,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_WIDTH = 27, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_HEIGHT = 28, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_LAYERS = 29, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_WIDTH = 27,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_HEIGHT = 28, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_NUMSLICES = 29, DeviceAttribute.CU_DEVICE_ATTRIBUTE_SURFACE_ALIGNMENT = 30, DeviceAttribute.CU_DEVICE_ATTRIBUTE_CONCURRENT_KERNELS = 31,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_ECC_ENABLED = 32, DeviceAttribute.CU_DEVICE_ATTRIBUTE_PCI_BUS_ID = 33, DeviceAttribute.CU_DEVICE_ATTRIBUTE_PCI_DEVICE_ID = 34, DeviceAttribute.CU_DEVICE_ATTRIBUTE_TCC_DRIVER = 35,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MEMORY_CLOCK_RATE = 36, DeviceAttribute.CU_DEVICE_ATTRIBUTE_GLOBAL_MEMORY_BUS_WIDTH = 37, DeviceAttribute.CU_DEVICE_ATTRIBUTE_L2_CACHE_SIZE = 38, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_MULTIPROCESSOR = 39,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT = 40, DeviceAttribute.CU_DEVICE_ATTRIBUTE_UNIFIED_ADDRESSING = 41, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_WIDTH = 42, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_LAYERS = 43,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_CAN_TEX2D_GATHER = 44, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_WIDTH = 45, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_HEIGHT = 46, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH_ALTERNATE = 47,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT_ALTERNATE = 48, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH_ALTERNATE = 49, DeviceAttribute.CU_DEVICE_ATTRIBUTE_PCI_DOMAIN_ID = 50, DeviceAttribute.CU_DEVICE_ATTRIBUTE_TEXTURE_PITCH_ALIGNMENT = 51,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_WIDTH = 52, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_WIDTH = 53, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_LAYERS = 54, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_WIDTH = 55,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_WIDTH = 56, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_HEIGHT = 57, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_WIDTH = 58, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_HEIGHT = 59,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_DEPTH = 60, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_WIDTH = 61, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_LAYERS = 62, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_WIDTH = 63,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_HEIGHT = 64, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_LAYERS = 65, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_WIDTH = 66, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_WIDTH = 67,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_LAYERS = 68, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LINEAR_WIDTH = 69, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_WIDTH = 70, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_HEIGHT = 71,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_PITCH = 72, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_WIDTH = 73, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_HEIGHT = 74, DeviceAttribute.CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MAJOR = 75,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MINOR = 76, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_MIPMAPPED_WIDTH = 77, DeviceAttribute.CU_DEVICE_ATTRIBUTE_STREAM_PRIORITIES_SUPPORTED = 78, DeviceAttribute.CU_DEVICE_ATTRIBUTE_GLOBAL_L1_CACHE_SUPPORTED = 79,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_LOCAL_L1_CACHE_SUPPORTED = 80, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_MULTIPROCESSOR = 81, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR = 82, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MANAGED_MEMORY = 83,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD = 84, DeviceAttribute.CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD_GROUP_ID = 85, DeviceAttribute.CU_DEVICE_ATTRIBUTE_HOST_NATIVE_ATOMIC_SUPPORTED = 86, DeviceAttribute.CU_DEVICE_ATTRIBUTE_SINGLE_TO_DOUBLE_PRECISION_PERF_RATIO = 87,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS = 88, DeviceAttribute.CU_DEVICE_ATTRIBUTE_CONCURRENT_MANAGED_ACCESS = 89, DeviceAttribute.CU_DEVICE_ATTRIBUTE_COMPUTE_PREEMPTION_SUPPORTED = 90, DeviceAttribute.CU_DEVICE_ATTRIBUTE_CAN_USE_HOST_POINTER_FOR_REGISTERED_MEM = 91,
  DeviceAttribute.CU_DEVICE_ATTRIBUTE_MAX = 92
}
 
enum  CudaError {
  CudaError.CUDA_SUCCESS = 0, CudaError.CUDA_ERROR_INVALID_VALUE = 1, CudaError.CUDA_ERROR_OUT_OF_MEMORY = 2, CudaError.CUDA_ERROR_NOT_INITIALIZED = 3,
  CudaError.CUDA_ERROR_DEINITIALIZED = 4, CudaError.CUDA_ERROR_PROFILER_DISABLED = 5, CudaError.CUDA_ERROR_PROFILER_NOT_INITIALIZED = 6, CudaError.CUDA_ERROR_PROFILER_ALREADY_STARTED = 7,
  CudaError.CUDA_ERROR_PROFILER_ALREADY_STOPPED = 8, CudaError.CUDA_ERROR_NO_DEVICE = 100, CudaError.CUDA_ERROR_INVALID_DEVICE = 101, CudaError.CUDA_ERROR_INVALID_IMAGE = 200,
  CudaError.CUDA_ERROR_INVALID_CONTEXT = 201, CudaError.CUDA_ERROR_CONTEXT_ALREADY_CURRENT = 202, CudaError.CUDA_ERROR_MAP_FAILED = 205, CudaError.CUDA_ERROR_UNMAP_FAILED = 206,
  CudaError.CUDA_ERROR_ARRAY_IS_MAPPED = 207, CudaError.CUDA_ERROR_ALREADY_MAPPED = 208, CudaError.CUDA_ERROR_NO_BINARY_FOR_GPU = 209, CudaError.CUDA_ERROR_ALREADY_ACQUIRED = 210,
  CudaError.CUDA_ERROR_NOT_MAPPED = 211, CudaError.CUDA_ERROR_NOT_MAPPED_AS_ARRAY = 212, CudaError.CUDA_ERROR_NOT_MAPPED_AS_POINTER = 213, CudaError.CUDA_ERROR_ECC_UNCORRECTABLE = 214,
  CudaError.CUDA_ERROR_UNSUPPORTED_LIMIT = 215, CudaError.CUDA_ERROR_CONTEXT_ALREADY_IN_USE = 216, CudaError.CUDA_ERROR_PEER_ACCESS_UNSUPPORTED = 217, CudaError.CUDA_ERROR_INVALID_PTX = 218,
  CudaError.CUDA_ERROR_INVALID_GRAPHICS_CONTEXT = 219, CudaError.CUDA_ERROR_NVLINK_UNCORRECTABLE = 220, CudaError.CUDA_ERROR_INVALID_SOURCE = 300, CudaError.CUDA_ERROR_FILE_NOT_FOUND = 301,
  CudaError.CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND = 302, CudaError.CUDA_ERROR_SHARED_OBJECT_INIT_FAILED = 303, CudaError.CUDA_ERROR_OPERATING_SYSTEM = 304, CudaError.CUDA_ERROR_INVALID_HANDLE = 400,
  CudaError.CUDA_ERROR_NOT_FOUND = 500, CudaError.CUDA_ERROR_NOT_READY = 600, CudaError.CUDA_ERROR_ILLEGAL_ADDRESS = 700, CudaError.CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES = 701,
  CudaError.CUDA_ERROR_LAUNCH_TIMEOUT = 702, CudaError.CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING = 703, CudaError.CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED = 704, CudaError.CUDA_ERROR_PEER_ACCESS_NOT_ENABLED = 705,
  CudaError.CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE = 708, CudaError.CUDA_ERROR_CONTEXT_IS_DESTROYED = 709, CudaError.CUDA_ERROR_ASSERT = 710, CudaError.CUDA_ERROR_TOO_MANY_PEERS = 711,
  CudaError.CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED = 712, CudaError.CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED = 713, CudaError.CUDA_ERROR_HARDWARE_STACK_ERROR = 714, CudaError.CUDA_ERROR_ILLEGAL_INSTRUCTION = 715,
  CudaError.CUDA_ERROR_MISALIGNED_ADDRESS = 716, CudaError.CUDA_ERROR_INVALID_ADDRESS_SPACE = 717, CudaError.CUDA_ERROR_INVALID_PC = 718, CudaError.CUDA_ERROR_LAUNCH_FAILED = 719,
  CudaError.CUDA_ERROR_NOT_PERMITTED = 800, CudaError.CUDA_ERROR_NOT_SUPPORTED = 801, CudaError.CUDA_ERROR_UNKNOWN = 999
}
 
enum  PointerAttribute {
  PointerAttribute.CU_POINTER_ATTRIBUTE_CONTEXT = 1, PointerAttribute.CU_POINTER_ATTRIBUTE_MEMORY_TYPE = 2, PointerAttribute.CU_POINTER_ATTRIBUTE_DEVICE_POINTER = 3, PointerAttribute.CU_POINTER_ATTRIBUTE_HOST_POINTER = 4,
  PointerAttribute.CU_POINTER_ATTRIBUTE_P2P_TOKENS = 5, PointerAttribute.CU_POINTER_ATTRIBUTE_SYNC_MEMOPS = 6, PointerAttribute.CU_POINTER_ATTRIBUTE_BUFFER_ID = 7, PointerAttribute.CU_POINTER_ATTRIBUTE_IS_MANAGED = 8
}
 
enum  Peer2PeerAttribute { Peer2PeerAttribute.CU_DEVICE_P2P_ATTRIBUTE_PERFORMANCE_RANK = 1, Peer2PeerAttribute.CU_DEVICE_P2P_ATTRIBUTE_ACCESS_SUPPORTED = 2, Peer2PeerAttribute.CU_DEVICE_P2P_ATTRIBUTE_NATIVE_ATOMIC_SUPPORTED = 3 }
 
enum  CudaSharedMemoryConfiguration { CudaSharedMemoryConfiguration.Default = 0, CudaSharedMemoryConfiguration.FourByteBankSize = 1, CudaSharedMemoryConfiguration.EightByteBankSize = 2 }
 Represents a shared-memory configuration of a device. More...
 

Enumeration Type Documentation

Represents the accelerator flags for a Cuda accelerator.

Enumerator
ScheduleAuto 

Automatic scheduling (default).

ScheduleSpin 

Spin scheduling.

ScheduleYield 

Yield scheduling

ScheduleBlockingSync 

Blocking synchronization as default scheduling.

Represents a cache configuration of a device.

Enumerator
Default 

The default cache configuration.

PreferShared 

Prefer shared cache.

PreferL1 

Prefer L1 cache.

PreferEqual 

Prefer shared or L1 cache.

Enumerator
CUDA_SUCCESS 
CUDA_ERROR_INVALID_VALUE 
CUDA_ERROR_OUT_OF_MEMORY 
CUDA_ERROR_NOT_INITIALIZED 
CUDA_ERROR_DEINITIALIZED 
CUDA_ERROR_PROFILER_DISABLED 
CUDA_ERROR_PROFILER_NOT_INITIALIZED 
CUDA_ERROR_PROFILER_ALREADY_STARTED 
CUDA_ERROR_PROFILER_ALREADY_STOPPED 
CUDA_ERROR_NO_DEVICE 
CUDA_ERROR_INVALID_DEVICE 
CUDA_ERROR_INVALID_IMAGE 
CUDA_ERROR_INVALID_CONTEXT 
CUDA_ERROR_CONTEXT_ALREADY_CURRENT 
CUDA_ERROR_MAP_FAILED 
CUDA_ERROR_UNMAP_FAILED 
CUDA_ERROR_ARRAY_IS_MAPPED 
CUDA_ERROR_ALREADY_MAPPED 
CUDA_ERROR_NO_BINARY_FOR_GPU 
CUDA_ERROR_ALREADY_ACQUIRED 
CUDA_ERROR_NOT_MAPPED 
CUDA_ERROR_NOT_MAPPED_AS_ARRAY 
CUDA_ERROR_NOT_MAPPED_AS_POINTER 
CUDA_ERROR_ECC_UNCORRECTABLE 
CUDA_ERROR_UNSUPPORTED_LIMIT 
CUDA_ERROR_CONTEXT_ALREADY_IN_USE 
CUDA_ERROR_PEER_ACCESS_UNSUPPORTED 
CUDA_ERROR_INVALID_PTX 
CUDA_ERROR_INVALID_GRAPHICS_CONTEXT 
CUDA_ERROR_NVLINK_UNCORRECTABLE 
CUDA_ERROR_INVALID_SOURCE 
CUDA_ERROR_FILE_NOT_FOUND 
CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND 
CUDA_ERROR_SHARED_OBJECT_INIT_FAILED 
CUDA_ERROR_OPERATING_SYSTEM 
CUDA_ERROR_INVALID_HANDLE 
CUDA_ERROR_NOT_FOUND 
CUDA_ERROR_NOT_READY 
CUDA_ERROR_ILLEGAL_ADDRESS 
CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES 
CUDA_ERROR_LAUNCH_TIMEOUT 
CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING 
CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED 
CUDA_ERROR_PEER_ACCESS_NOT_ENABLED 
CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE 
CUDA_ERROR_CONTEXT_IS_DESTROYED 
CUDA_ERROR_ASSERT 
CUDA_ERROR_TOO_MANY_PEERS 
CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED 
CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED 
CUDA_ERROR_HARDWARE_STACK_ERROR 
CUDA_ERROR_ILLEGAL_INSTRUCTION 
CUDA_ERROR_MISALIGNED_ADDRESS 
CUDA_ERROR_INVALID_ADDRESS_SPACE 
CUDA_ERROR_INVALID_PC 
CUDA_ERROR_LAUNCH_FAILED 
CUDA_ERROR_NOT_PERMITTED 
CUDA_ERROR_NOT_SUPPORTED 
CUDA_ERROR_UNKNOWN 

Represents the type of a device pointer.

Enumerator
None 

Represents no known memory type.

Host 

Represents a host pointer.

Device 

Represents a device pointer.

Array 

Represents a pointer to a Cuda array.

Unified 

Represents a unified-memory pointer.

Represents a shared-memory configuration of a device.

Enumerator
Default 

The default shared-memory configuration.

FourByteBankSize 

Setup a bank size of 4 byte.

EightByteBankSize 

Setup a bank size of 8 byte.

Enumerator
CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK 
CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X 
CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y 
CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Z 
CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_X 
CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Y 
CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Z 
CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK 
CU_DEVICE_ATTRIBUTE_SHARED_MEMORY_PER_BLOCK 
CU_DEVICE_ATTRIBUTE_TOTAL_CONSTANT_MEMORY 
CU_DEVICE_ATTRIBUTE_WARP_SIZE 
CU_DEVICE_ATTRIBUTE_MAX_PITCH 
CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_BLOCK 
CU_DEVICE_ATTRIBUTE_REGISTERS_PER_BLOCK 
CU_DEVICE_ATTRIBUTE_CLOCK_RATE 
CU_DEVICE_ATTRIBUTE_TEXTURE_ALIGNMENT 
CU_DEVICE_ATTRIBUTE_GPU_OVERLAP 
CU_DEVICE_ATTRIBUTE_MULTIPROCESSOR_COUNT 
CU_DEVICE_ATTRIBUTE_KERNEL_EXEC_TIMEOUT 
CU_DEVICE_ATTRIBUTE_INTEGRATED 
CU_DEVICE_ATTRIBUTE_CAN_MAP_HOST_MEMORY 
CU_DEVICE_ATTRIBUTE_COMPUTE_MODE 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_HEIGHT 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_HEIGHT 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_LAYERS 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_HEIGHT 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_NUMSLICES 
CU_DEVICE_ATTRIBUTE_SURFACE_ALIGNMENT 
CU_DEVICE_ATTRIBUTE_CONCURRENT_KERNELS 
CU_DEVICE_ATTRIBUTE_ECC_ENABLED 
CU_DEVICE_ATTRIBUTE_PCI_BUS_ID 
CU_DEVICE_ATTRIBUTE_PCI_DEVICE_ID 
CU_DEVICE_ATTRIBUTE_TCC_DRIVER 
CU_DEVICE_ATTRIBUTE_MEMORY_CLOCK_RATE 
CU_DEVICE_ATTRIBUTE_GLOBAL_MEMORY_BUS_WIDTH 
CU_DEVICE_ATTRIBUTE_L2_CACHE_SIZE 
CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_MULTIPROCESSOR 
CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT 
CU_DEVICE_ATTRIBUTE_UNIFIED_ADDRESSING 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_LAYERS 
CU_DEVICE_ATTRIBUTE_CAN_TEX2D_GATHER 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_HEIGHT 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH_ALTERNATE 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT_ALTERNATE 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH_ALTERNATE 
CU_DEVICE_ATTRIBUTE_PCI_DOMAIN_ID 
CU_DEVICE_ATTRIBUTE_TEXTURE_PITCH_ALIGNMENT 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_LAYERS 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_HEIGHT 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_HEIGHT 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_DEPTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_LAYERS 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_HEIGHT 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_LAYERS 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_LAYERS 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LINEAR_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_HEIGHT 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_PITCH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_WIDTH 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_HEIGHT 
CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MAJOR 
CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MINOR 
CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_MIPMAPPED_WIDTH 
CU_DEVICE_ATTRIBUTE_STREAM_PRIORITIES_SUPPORTED 
CU_DEVICE_ATTRIBUTE_GLOBAL_L1_CACHE_SUPPORTED 
CU_DEVICE_ATTRIBUTE_LOCAL_L1_CACHE_SUPPORTED 
CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_MULTIPROCESSOR 
CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR 
CU_DEVICE_ATTRIBUTE_MANAGED_MEMORY 
CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD 
CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD_GROUP_ID 
CU_DEVICE_ATTRIBUTE_HOST_NATIVE_ATOMIC_SUPPORTED 
CU_DEVICE_ATTRIBUTE_SINGLE_TO_DOUBLE_PRECISION_PERF_RATIO 
CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS 
CU_DEVICE_ATTRIBUTE_CONCURRENT_MANAGED_ACCESS 
CU_DEVICE_ATTRIBUTE_COMPUTE_PREEMPTION_SUPPORTED 
CU_DEVICE_ATTRIBUTE_CAN_USE_HOST_POINTER_FOR_REGISTERED_MEM 
CU_DEVICE_ATTRIBUTE_MAX 
Enumerator
CU_DEVICE_P2P_ATTRIBUTE_PERFORMANCE_RANK 
CU_DEVICE_P2P_ATTRIBUTE_ACCESS_SUPPORTED 
CU_DEVICE_P2P_ATTRIBUTE_NATIVE_ATOMIC_SUPPORTED 
Enumerator
CU_POINTER_ATTRIBUTE_CONTEXT 
CU_POINTER_ATTRIBUTE_MEMORY_TYPE 
CU_POINTER_ATTRIBUTE_DEVICE_POINTER 
CU_POINTER_ATTRIBUTE_HOST_POINTER 
CU_POINTER_ATTRIBUTE_P2P_TOKENS 
CU_POINTER_ATTRIBUTE_SYNC_MEMOPS 
CU_POINTER_ATTRIBUTE_BUFFER_ID 
CU_POINTER_ATTRIBUTE_IS_MANAGED 
Enumerator
CU_STREAM_DEFAULT 
CU_STREAM_NON_BLOCKING