Enum CUDeviceAttribute
Device properties
Namespace: ManagedCuda.BasicTypes
Assembly: ManagedCuda.dll
Syntax
public enum CUDeviceAttribute
Fields
Name | Description |
---|---|
AsyncEngineCount | Number of asynchronous engines |
CanMapHostMemory | Device can map host memory into CUDA address space. 1 if the device can map host memory into the CUDA address space, or 0 if not |
CanUse64BitStreamMemOps | 64-bit operations are supported in ::cuStreamBatchMemOp and related APIs. |
CanUseHostPointerForRegisteredMem | Device can access host registered memory at the same virtual address as the CPU. |
CanUseStreamMemOps | ::cuStreamBatchMemOp and related APIs are supported. |
CanUseStreamWaitValueNOr | ::CU_STREAM_WAIT_VALUE_NOR is supported. |
ClockRate | Typical clock frequency in kilohertz |
ComputeCapabilityMajor | Major compute capability version number |
ComputeCapabilityMinor | Minor compute capability version number |
ComputeMode | Compute mode (See CUComputeMode for details) |
ComputePreemptionSupported | Device supports compute preemption. |
ConcurrentKernels | Device can possibly execute multiple kernels concurrently. 1 if the device supports executing multiple kernels within the same context simultaneously, or 0 if not. It is not guaranteed that multiple kernels will be resident on the device concurrently so this feature should not be relied upon for correctness. |
ConcurrentManagedAccess | Device can coherently access managed memory concurrently with the CPU |
CooperativeLaunch | Device supports launching cooperative kernels via ::cuLaunchCooperativeKernel |
CooperativeMultiDeviceLaunch | Device can participate in cooperative kernels launched via ::cuLaunchCooperativeKernelMultiDevice |
ECCEnabled | Device has ECC support enabled. 1 if error correction is enabled on the device, 0 if error correction is disabled or not supported by the device. |
GlobalL1CacheSupported | Device supports caching globals in L1 |
GlobalMemoryBusWidth | Global memory bus width in bits |
GPUOverlap | 1 if the device can concurrently copy memory between host and device while executing a kernel, or 0 if not |
HostNativeAtomicSupported | Link between the device and the host supports native atomic operations (this is a placeholder attribute, and is not supported on any current hardware) |
Integrated | Device is integrated with host memory. 1 if the device is integrated with the memory subsystem, or 0 if not |
KernelExecTimeout | Specifies whether there is a run time limit on kernels. 1 if there is a run time limit for kernels executed on the device, or 0 if not |
L2CacheSize | Size of L2 cache in bytes |
LocalL1CacheSupported | Device supports caching locals in L1 |
ManagedMemory | Device can allocate managed memory on this system |
MAX | Max elems... |
MaxBlockDimX | Maximum block dimension X |
MaxBlockDimY | Maximum block dimension Y |
MaxBlockDimZ | Maximum block dimension Z |
MaxGridDimX | Maximum grid dimension X |
MaxGridDimY | Maximum grid dimension Y |
MaxGridDimZ | Maximum grid dimension Z |
MaximumSurface1DLayeredLayers | Maximum layers in a 1D layered surface |
MaximumSurface1DLayeredWidth | Maximum 1D layered surface width |
MaximumSurface1DWidth | Maximum 1D surface width |
MaximumSurface2DHeight | Maximum 2D surface height |
MaximumSurface2DLayeredHeight | Maximum 2D layered surface height |
MaximumSurface2DLayeredLayers | Maximum layers in a 2D layered surface |
MaximumSurface2DLayeredWidth | Maximum 2D layered surface width |
MaximumSurface2DWidth | Maximum 2D surface width |
MaximumSurface3DDepth | Maximum 3D surface depth |
MaximumSurface3DHeight | Maximum 3D surface height |
MaximumSurface3DWidth | Maximum 3D surface width |
MaximumSurfaceCubemapLayeredLayers | Maximum layers in a cubemap layered surface |
MaximumSurfaceCubemapLayeredWidth | Maximum cubemap layered surface width |
MaximumSurfaceCubemapWidth | Maximum cubemap surface width |
MaximumTexture1DLayeredLayers | Maximum layers in a 1D layered texture |
MaximumTexture1DLayeredWidth | Maximum 1D layered texture width |
MaximumTexture1DLinearWidth | Maximum 1D linear texture width |
MaximumTexture1DMipmappedWidth | Maximum mipmapped 1D texture width |
MaximumTexture1DWidth | Maximum 1D texture width |
MaximumTexture2DArray_Height | Maximum texture array height |
MaximumTexture2DArray_NumSlices | Maximum slices in a texture array |
MaximumTexture2DArray_Width | Maximum texture array width |
MaximumTexture2DHeight | Maximum 2D texture height |
MaximumTexture2DLinearHeight | Maximum 2D linear texture height |
MaximumTexture2DLinearPitch | Maximum 2D linear texture pitch in bytes |
MaximumTexture2DLinearWidth | Maximum 2D linear texture width |
MaximumTexture2DMipmappedHeight | Maximum mipmapped 2D texture height |
MaximumTexture2DMipmappedWidth | Maximum mipmapped 2D texture width |
MaximumTexture2DWidth | Maximum 2D texture width |
MaximumTexture3DDepth | Maximum 3D texture depth |
MaximumTexture3DHeight | Maximum 3D texture height |
MaximumTexture3DWidth | Maximum 3D texture width |
MaximumTextureCubeMapLayeredLayers | Maximum layers in a cubemap layered texture |
MaximumTextureCubeMapLayeredWidth | Maximum cubemap layered texture width/height |
MaximumTextureCubeMapWidth | Maximum cubemap texture width/height |
MaxPitch | Maximum pitch in bytes allowed by the memory copy functions that involve memory regions allocated through cuMemAllocPitch_v2(ref CUdeviceptr, ref SizeT, SizeT, SizeT, UInt32) |
MaxRegistersPerBlock | Maximum number of 32-bit registers available to a thread block; this number is shared by all thread blocks simultaneously resident on a multiprocessor |
MaxRegistersPerMultiprocessor | Maximum number of 32-bit registers available per multiprocessor |
MaxSharedMemoryPerBlock | Maximum amount of shared memory available to a thread block in bytes; this amount is shared by all thread blocks simultaneously resident on a multiprocessor |
MaxSharedMemoryPerBlockOptin | Maximum optin shared memory per block |
MaxSharedMemoryPerMultiprocessor | Maximum shared memory available per multiprocessor in bytes |
MaxThreadsPerBlock | Maximum number of threads per block |
MaxThreadsPerMultiProcessor | Maximum resident threads per multiprocessor |
MemoryClockRate | Peak memory clock frequency in kilohertz |
MultiGpuBoard | Device is on a multi-GPU board |
MultiGpuBoardGroupID | Unique id for a group of devices on the same multi-GPU board |
MultiProcessorCount | Number of multiprocessors on device |
PageableMemoryAccess | Device supports coherently accessing pageable memory without calling cudaHostRegister on it |
PCIBusID | PCI bus ID of the device |
PCIDeviceID | PCI device ID of the device |
PCIDomainID | PCI domain ID of the device |
RegistersPerBlock | Deprecated, use MaxRegistersPerBlock |
SharedMemoryPerBlock | Deprecated, use MaxSharedMemoryPerBlock |
SingleToDoublePrecisionPerfRatio | Ratio of single precision performance (in floating-point operations per second) to double precision performance |
StreamPrioritiesSupported | Device supports stream priorities |
SurfaceAllignment | Alignment requirement for surfaces |
TCCDriver | Device is using TCC driver model |
TextureAlignment | Alignment requirement; texture base addresses aligned to textureAlign bytes do not need an offset applied to texture fetches |
TexturePitchAlignment | Pitch alignment requirement for textures |
TotalConstantMemory | Memory available on device for constant variables in a CUDA C kernel in bytes |
UnifiedAddressing | Device shares a unified address space with the host |
WarpSize | Warp size in threads |