IMPORTANT: To view this page as Markdown, append `.md` to the URL (e.g. /get-started.md). For the complete documentation index, see llms.txt.
Skip to main content
For the complete documentation index, see llms.txt. Markdown versions of all pages are available by appending .md to any URL (e.g. /get-started.md).

Mojo struct

DeviceAttribute

struct DeviceAttribute

Represents CUDA device attributes that can be queried from a GPU device.

This struct encapsulates the various device properties and capabilities that can be queried through the CUDA driver API. Each attribute is represented as a constant with a corresponding integer value that maps to the CUDA driver's attribute enum.

Implemented traits​

AnyType, Copyable, Deinitable, ImplicitlyCopyable, Movable, RegisterPassable, TrivialRegisterPassable

comptime members​

CLOCK_RATE​

comptime CLOCK_RATE = DeviceAttribute(Int32(13))

Typical clock frequency in kilohertz.

COMPUTE_CAPABILITY_MAJOR​

comptime COMPUTE_CAPABILITY_MAJOR = DeviceAttribute(Int32(75))

Major compute capability version number.

COMPUTE_CAPABILITY_MINOR​

comptime COMPUTE_CAPABILITY_MINOR = DeviceAttribute(Int32(76))

Minor compute capability version number.

COOPERATIVE_LAUNCH​

comptime COOPERATIVE_LAUNCH = DeviceAttribute(Int32(95))

Device supports launching cooperative kernels.

MAX_ACCESS_POLICY_WINDOW_SIZE​

comptime MAX_ACCESS_POLICY_WINDOW_SIZE = DeviceAttribute(Int32(109))

CUDA-only: Maximum value of CUaccessPolicyWindow::num_bytes.

MAX_BLOCK_DIM_X​

comptime MAX_BLOCK_DIM_X = DeviceAttribute(Int32(2))

Maximum block dimension X.

MAX_BLOCK_DIM_Y​

comptime MAX_BLOCK_DIM_Y = DeviceAttribute(Int32(3))

Maximum block dimension Y.

MAX_BLOCK_DIM_Z​

comptime MAX_BLOCK_DIM_Z = DeviceAttribute(Int32(4))

Maximum block dimension Z.

MAX_BLOCKS_PER_MULTIPROCESSOR​

comptime MAX_BLOCKS_PER_MULTIPROCESSOR = DeviceAttribute(Int32(106))

Maximum resident blocks per multiprocessor.

MAX_GRID_DIM_X​

comptime MAX_GRID_DIM_X = DeviceAttribute(Int32(5))

Maximum grid dimension X.

MAX_GRID_DIM_Y​

comptime MAX_GRID_DIM_Y = DeviceAttribute(Int32(6))

Maximum grid dimension Y.

MAX_GRID_DIM_Z​

comptime MAX_GRID_DIM_Z = DeviceAttribute(Int32(7))

Maximum grid dimension Z.

MAX_REGISTERS_PER_BLOCK​

comptime MAX_REGISTERS_PER_BLOCK = DeviceAttribute(Int32(12))

Maximum number of 32-bit registers available per block.

MAX_REGISTERS_PER_MULTIPROCESSOR​

comptime MAX_REGISTERS_PER_MULTIPROCESSOR = DeviceAttribute(Int32(82))

Maximum number of 32-bit registers available per multiprocessor.

MAX_SHARED_MEMORY_PER_BLOCK​

comptime MAX_SHARED_MEMORY_PER_BLOCK = DeviceAttribute(Int32(8))

Maximum shared memory available per block in bytes.

MAX_SHARED_MEMORY_PER_BLOCK_OPTIN​

comptime MAX_SHARED_MEMORY_PER_BLOCK_OPTIN = DeviceAttribute(Int32(97))

Maximum shared memory per block usable via cudaFuncSetAttribute.

MAX_SHARED_MEMORY_PER_MULTIPROCESSOR​

comptime MAX_SHARED_MEMORY_PER_MULTIPROCESSOR = DeviceAttribute(Int32(81))

Maximum shared memory available per multiprocessor in bytes.

MAX_THREADS_PER_BLOCK​

comptime MAX_THREADS_PER_BLOCK = DeviceAttribute(Int32(1))

Maximum number of threads per block.

MAX_THREADS_PER_MULTIPROCESSOR​

comptime MAX_THREADS_PER_MULTIPROCESSOR = DeviceAttribute(Int32(39))

Maximum resident threads per multiprocessor.

MULTIPROCESSOR_COUNT​

comptime MULTIPROCESSOR_COUNT = DeviceAttribute(Int32(16))

Number of multiprocessors on device.

PARALLELISM_LEVEL​

comptime PARALLELISM_LEVEL = DeviceAttribute(Int32(1000))

Number of parallel worker threads for CPU work dispatch.

WARP_SIZE​

comptime WARP_SIZE = DeviceAttribute(Int32(10))

Warp size in threads.