Skip to main content

//clika-runtime/io.clika.runtime/DeviceProperties

DeviceProperties

[common]
data class DeviceProperties(val name: String, val kind: DeviceKind, val driverVersion: String, val backendRuntimeVersion: String, val smCount: Int, val computeCapabilityMajor: Int, val computeCapabilityMinor: Int, val warpSize: Int, val maxThreadsPerBlock: Int, val sharedMemoryPerBlockBytes: Long, val totalMemoryBytes: Long, val isIntegrated: Boolean, val hasTensorCores: Boolean, val supportsFp16: Boolean, val supportsBf16: Boolean, val supportsFp8E4m3: Boolean, val prefixContinuationBitExact: Boolean, val unavailableReason: String)

A device's static capabilities (see Device.properties). Field meanings are normalized across backends: smCount is SMs on CUDA, compute units elsewhere; warpSize is the warp/wave/subgroup width; the compute capability is the CUDA SM version or the nearest generation tag elsewhere. A field the backend does not report is 0 / false / "". unavailableReason is empty when the device serves.

Constructors​

DeviceProperties[common]
constructor(name: String, kind: DeviceKind, driverVersion: String, backendRuntimeVersion: String, smCount: Int, computeCapabilityMajor: Int, computeCapabilityMinor: Int, warpSize: Int, maxThreadsPerBlock: Int, sharedMemoryPerBlockBytes: Long, totalMemoryBytes: Long, isIntegrated: Boolean, hasTensorCores: Boolean, supportsFp16: Boolean, supportsBf16: Boolean, supportsFp8E4m3: Boolean, prefixContinuationBitExact: Boolean, unavailableReason: String)

Properties​

NameSummary
backendRuntimeVersion[common]
val backendRuntimeVersion: String
computeCapabilityMajor[common]
val computeCapabilityMajor: Int
computeCapabilityMinor[common]
val computeCapabilityMinor: Int
driverVersion[common]
val driverVersion: String
hasTensorCores[common]
val hasTensorCores: Boolean
isIntegrated[common]
val isIntegrated: Boolean
The device's memory IS the host's RAM (a Jetson-class part): no separate heap.
kind[common]
val kind: DeviceKind
kindName[common]
val kindName: String
kind as a word.
maxThreadsPerBlock[common]
val maxThreadsPerBlock: Int
name[common]
val name: String
prefixContinuationBitExact[common]
val prefixContinuationBitExact: Boolean
A prompt's last token yields the same logits whether it is computed inside a multi-row prefill or as a one-token step over a cache that holds the rows before it (true on the CPU; false where the kernel route keys on the row count).
sharedMemoryPerBlockBytes[common]
val sharedMemoryPerBlockBytes: Long
smCount[common]
val smCount: Int
supportsBf16[common]
val supportsBf16: Boolean
supportsFp16[common]
val supportsFp16: Boolean
supportsFp8E4m3[common]
val supportsFp8E4m3: Boolean
totalMemoryBytes[common]
val totalMemoryBytes: Long
unavailableReason[common]
val unavailableReason: String
warpSize[common]
val warpSize: Int