Table of Contents

Class DeviceInfo

Namespace
DotCompute.Backends.CUDA.Types
Assembly
DotCompute.Backends.CUDA.dll

Represents CUDA device information.

public sealed class DeviceInfo
Inheritance
DeviceInfo
Inherited Members

Properties

ArchitectureGeneration

Gets or sets the architecture generation name (e.g., "Ada Lovelace", "Ampere", "Turing").

public string ArchitectureGeneration { get; set; }

Property Value

string

AvailableMemory

Gets or sets the currently available memory on the device in bytes.

public long AvailableMemory { get; set; }

Property Value

long

ClockRate

Gets or sets the GPU core clock rate in kHz.

public int ClockRate { get; set; }

Property Value

int

ComputeCapability

Gets or sets the compute capability (major.minor).

public (int Major, int Minor) ComputeCapability { get; set; }

Property Value

(int x, int y)

DeviceId

Gets or sets the device ID.

public int DeviceId { get; set; }

Property Value

int

DeviceIndex

Gets or sets the device index.

public int DeviceIndex { get; set; }

Property Value

int

EstimatedCudaCores

Gets or sets the estimated number of CUDA cores based on the architecture and SM count.

public int EstimatedCudaCores { get; set; }

Property Value

int

GlobalMemoryBytes

Gets or sets the total global memory in bytes.

public long GlobalMemoryBytes { get; set; }

Property Value

long

IsECCEnabled

Gets or sets whether ECC (Error-Correcting Code) memory is enabled on the device.

public bool IsECCEnabled { get; set; }

Property Value

bool

IsRTX2000Ada

Gets or sets whether this device is an RTX 2000 Ada generation GPU.

public bool IsRTX2000Ada { get; set; }

Property Value

bool

L2CacheSize

Gets or sets the L2 cache size in bytes.

public int L2CacheSize { get; set; }

Property Value

int

MaxThreadsPerBlock

Gets or sets the maximum threads per block.

public int MaxThreadsPerBlock { get; set; }

Property Value

int

MemoryBandwidthGBps

Gets or sets the memory bandwidth in GB/s.

public double MemoryBandwidthGBps { get; set; }

Property Value

double

MemoryClockRate

Gets or sets the memory clock rate in kHz.

public int MemoryClockRate { get; set; }

Property Value

int

MultiprocessorCount

Gets or sets the number of multiprocessors.

public int MultiprocessorCount { get; set; }

Property Value

int

Name

Gets or sets the device name.

public string Name { get; set; }

Property Value

string

SharedMemoryPerBlock

Gets or sets the shared memory per block in bytes.

public int SharedMemoryPerBlock { get; set; }

Property Value

int

StreamingMultiprocessors

Gets or sets the number of streaming multiprocessors.

public int StreamingMultiprocessors { get; set; }

Property Value

int

SupportsConcurrentKernels

Gets or sets whether the device supports concurrent kernel execution.

public bool SupportsConcurrentKernels { get; set; }

Property Value

bool

SupportsManagedMemory

Gets or sets whether the device supports managed memory.

public bool SupportsManagedMemory { get; set; }

Property Value

bool

SupportsUnifiedAddressing

Gets or sets whether the device supports unified addressing.

public bool SupportsUnifiedAddressing { get; set; }

Property Value

bool

SupportsUnifiedMemory

Gets or sets whether the device supports unified memory.

public bool SupportsUnifiedMemory { get; set; }

Property Value

bool

TotalMemory

Gets or sets the total memory available on the device in bytes.

public long TotalMemory { get; set; }

Property Value

long

WarpSize

Gets or sets the warp size.

public int WarpSize { get; set; }

Property Value

int