Enum rustacuda::device::DeviceAttribute[][src]

#[repr(u32)]
pub enum DeviceAttribute {
Show 103 variants MaxThreadsPerBlock, MaxBlockDimX, MaxBlockDimY, MaxBlockDimZ, MaxGridDimX, MaxGridDimY, MaxGridDimZ, MaxSharedMemoryPerBlock, TotalConstantMemory, WarpSize, MaxPitch, MaxRegistersPerBlock, ClockRate, TextureAlignment, MultiprocessorCount, KernelExecTimeout, Integrated, CanMapHostMemory, ComputeMode, MaximumTexture1DWidth, MaximumTexture2DWidth, MaximumTexture2DHeight, MaximumTexture3DWidth, MaximumTexture3DHeight, MaximumTexture3DDepth, MaximumTexture2DLayeredWidth, MaximumTexture2DLayeredHeight, MaximumTexture2DLayeredLayers, SurfaceAlignment, ConcurrentKernels, EccEnabled, PciBusId, PciDeviceId, TccDriver, MemoryClockRate, GlobalMemoryBusWidth, L2CacheSize, MaxThreadsPerMultiprocessor, AsyncEngineCount, UnifiedAddressing, MaximumTexture1DLayeredWidth, MaximumTexture1DLayeredLayers, MaximumTexture2DGatherWidth, MaximumTexture2DGatherHeight, MaximumTexture3DWidthAlternate, MaximumTexture3DHeightAlternate, MaximumTexture3DDepthAlternate, PciDomainId, TexturePitchAlignment, MaximumTextureCubemapWidth, MaximumTextureCubemapLayeredWidth, MaximumTextureCubemapLayeredLayers, MaximumSurface1DWidth, MaximumSurface2DWidth, MaximumSurface2DHeight, MaximumSurface3DWidth, MaximumSurface3DHeight, MaximumSurface3DDepth, MaximumSurface1DLayeredWidth, MaximumSurface1DLayeredLayers, MaximumSurface2DLayeredWidth, MaximumSurface2DLayeredHeight, MaximumSurface2DLayeredLayers, MaximumSurfacecubemapWidth, MaximumSurfacecubemapLayeredWidth, MaximumSurfacecubemapLayeredLayers, MaximumTexture1DLinearWidth, MaximumTexture2DLinearWidth, MaximumTexture2DLinearHeight, MaximumTexture2DLinearPitch, MaximumTexture2DMipmappedWidth, MaximumTexture2DMipmappedHeight, ComputeCapabilityMajor, ComputeCapabilityMinor, MaximumTexture1DMipmappedWidth, StreamPrioritiesSupported, GlobalL1CacheSupported, LocalL1CacheSupported, MaxSharedMemoryPerMultiprocessor, MaxRegistersPerMultiprocessor, ManagedMemory, MultiGpuBoard, MultiGpuBoardGroupId, HostNativeAtomicSupported, SingleToDoublePrecisionPerfRatio, PageableMemoryAccess, ConcurrentManagedAccess, ComputePreemptionSupported, CanUseHostPointerForRegisteredMem, CanUseStreamMemOps, CanUse64BitStreamMemOps, CanUseStreamWaitValueNor, CooperativeLaunch, CooperativeMultiDeviceLaunch, MaxSharedMemoryPerBlockOptin, CanFlushRemoteWrites, HostRegisterSupported, PageableMemoryAccessUsesHostPageTable, DirectManagedMemAccessFromhost, VirtualMemoryManagementSupported, HandleTypePosixFileDescriptorSupported, HandleTypeWin32HandleSupported, HandleTypeWin32KmtHandleSupported, // some variants omitted
}
Expand description

All supported device attributes for Device::get_attribute

Variants

MaxThreadsPerBlock

Maximum number of threads per block

MaxBlockDimX

Maximum x-dimension of a block

MaxBlockDimY

Maximum y-dimension of a block

MaxBlockDimZ

Maximum z-dimension of a block

MaxGridDimX

Maximum x-dimension of a grid

MaxGridDimY

Maximum y-dimension of a grid

MaxGridDimZ

Maximum z-dimension of a grid

MaxSharedMemoryPerBlock

Maximum amount of shared memory available to a thread block in bytes

TotalConstantMemory

Memory available on device for constant variables in a kernel in bytes

WarpSize

Warp size in threads

MaxPitch

Maximum pitch in bytes allowed by the memory copy functions that involve memory regions allocated through cuMemAllocPitch()

MaxRegistersPerBlock

Maximum number of 32-bit registers available to a thread block

ClockRate

Typical clock frequency in kilohertz

TextureAlignment

Alignment requirement for textures

MultiprocessorCount

Number of multiprocessors on device.

KernelExecTimeout

Specifies whether there is a run time limit on kernels

Integrated

Device is integrated with host memory

CanMapHostMemory

Device can map host memory into CUDA address space

ComputeMode

Compute Mode

MaximumTexture1DWidth

Maximum 1D texture width

MaximumTexture2DWidth

Maximum 2D texture width

MaximumTexture2DHeight

Maximum 2D texture height

MaximumTexture3DWidth

Maximum 3D texture width

MaximumTexture3DHeight

Maximum 3D texture height

MaximumTexture3DDepth

Maximum 3D texture depth

MaximumTexture2DLayeredWidth

Maximum 2D layered texture width

MaximumTexture2DLayeredHeight

Maximum 2D layered texture height

MaximumTexture2DLayeredLayers

Maximum layers in a 2D layered texture

SurfaceAlignment

Alignment requirement for surfaces

ConcurrentKernels

Device can possibly execute multiple kernels concurrently

EccEnabled

Device has ECC support enabled

PciBusId

PCI bus ID of the device

PciDeviceId

PCI device ID of the device

TccDriver

Device is using TCC driver model

MemoryClockRate

Peak memory clock frequency in kilohertz

GlobalMemoryBusWidth

Global memory bus width in bits

L2CacheSize

Size of L2 cache in bytes.

MaxThreadsPerMultiprocessor

Maximum resident threads per multiprocessor

AsyncEngineCount

Number of asynchronous engines

UnifiedAddressing

Device shares a unified address space with the host

MaximumTexture1DLayeredWidth

Maximum 1D layered texture width

MaximumTexture1DLayeredLayers

Maximum layers in a 1D layered texture

MaximumTexture2DGatherWidth

Maximum 2D texture width if CUDA_ARRAY3D_TEXTURE_GATHER is set

MaximumTexture2DGatherHeight

Maximum 2D texture height if CUDA_ARRAY3D_TEXTURE_GATHER is set

MaximumTexture3DWidthAlternate

Alternate maximum 3D texture width

MaximumTexture3DHeightAlternate

Alternate maximum 3D texture height

MaximumTexture3DDepthAlternate

Alternate maximum 3D texture depth

PciDomainId

PCI domain ID of the device

TexturePitchAlignment

Pitch alignment requirement for textures

MaximumTextureCubemapWidth

Maximum cubemap texture width/height

MaximumTextureCubemapLayeredWidth

Maximum cubemap layered texture width/height

MaximumTextureCubemapLayeredLayers

Maximum layers in a cubemap layered texture

MaximumSurface1DWidth

Maximum 1D surface width

MaximumSurface2DWidth

Maximum 2D surface width

MaximumSurface2DHeight

Maximum 2D surface height

MaximumSurface3DWidth

Maximum 3D surface width

MaximumSurface3DHeight

Maximum 3D surface height

MaximumSurface3DDepth

Maximum 3D surface depth

MaximumSurface1DLayeredWidth

Maximum 1D layered surface width

MaximumSurface1DLayeredLayers

Maximum layers in a 1D layered surface

MaximumSurface2DLayeredWidth

Maximum 2D layered surface width

MaximumSurface2DLayeredHeight

Maximum 2D layered surface height

MaximumSurface2DLayeredLayers

Maximum layers in a 2D layered surface

MaximumSurfacecubemapWidth

Maximum cubemap surface width

MaximumSurfacecubemapLayeredWidth

Maximum cubemap layered surface width

MaximumSurfacecubemapLayeredLayers

Maximum layers in a cubemap layered surface

MaximumTexture1DLinearWidth

Maximum 1D linear texture width

MaximumTexture2DLinearWidth

Maximum 2D linear texture width

MaximumTexture2DLinearHeight

Maximum 2D linear texture height

MaximumTexture2DLinearPitch

Maximum 2D linear texture pitch in bytes

MaximumTexture2DMipmappedWidth

Maximum mipmapped 2D texture height

MaximumTexture2DMipmappedHeight

Maximum mipmapped 2D texture width

ComputeCapabilityMajor

Major compute capability version number

ComputeCapabilityMinor

Minor compute capability version number

MaximumTexture1DMipmappedWidth

Maximum mipammed 1D texture width

StreamPrioritiesSupported

Device supports stream priorities

GlobalL1CacheSupported

Device supports caching globals in L1

LocalL1CacheSupported

Device supports caching locals in L1

MaxSharedMemoryPerMultiprocessor

Maximum shared memory available per multiprocessor in bytes

MaxRegistersPerMultiprocessor

Maximum number of 32-bit registers available per multiprocessor

ManagedMemory

Device can allocate managed memory on this system

MultiGpuBoard

Device is on a multi-GPU board

MultiGpuBoardGroupId

Unique ID for a group of devices on the same multi-GPU board

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)

SingleToDoublePrecisionPerfRatio

Ratio of single precision performance (in floating-point operations per second) to double precision performance

PageableMemoryAccess

Device supports coherently accessing pageable memory without calling cudaHostRegister on it.

ConcurrentManagedAccess

Device can coherently access managed memory concurrently with the CPU

ComputePreemptionSupported

Device supports compute preemption

CanUseHostPointerForRegisteredMem

Device can access host registered memory at the same virtual address as the CPU

CanUseStreamMemOps

Stream memory operations are supported.

CanUse64BitStreamMemOps

64-bit stream memory operations are supported.

CanUseStreamWaitValueNor

Wait value NOR is supported

CooperativeLaunch

Supports launching cooperative kernels

CooperativeMultiDeviceLaunch

Supports launching cooperative kernels on multiple devices.

MaxSharedMemoryPerBlockOptin

Maximum opt-in shared memory per block.

CanFlushRemoteWrites

Stream memory operations can wait for flush.

HostRegisterSupported

Device supports host memory registration

PageableMemoryAccessUsesHostPageTable

Device accesses pageable memory via the host page tables

DirectManagedMemAccessFromhost

Device supports direct access to device memory without migration

VirtualMemoryManagementSupported

Device supports virual memory management APIs

HandleTypePosixFileDescriptorSupported

Device supports exporting memory to a posix file descriptor

HandleTypeWin32HandleSupported

Device supports exporting memory to a Win32 NT handle

HandleTypeWin32KmtHandleSupported

Device supports exporting memory to a Win32 KMT handle

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.