pub struct NvmlFns {
pub init: FnVoid,
pub shutdown: FnVoid,
pub device_by_index: FnHandleByIndex,
pub power_usage: Option<FnDevU32>,
pub total_energy: Option<FnDevU64>,
pub clock_info: Option<FnDevArgU32>,
pub temperature: Option<FnDevArgU32>,
pub clocks_event_reasons: Option<FnDevU64>,
pub memory_info: Option<FnDevMemory>,
pub pcie_throughput: Option<FnDevArgU32>,
pub nvlink_state: Option<FnDevArgU32>,
}Expand description
2026-09-26: The entry points this crate binds. The first three are required;
each query is None when the library does not export it.
Fields§
§init: FnVoid§shutdown: FnVoid§device_by_index: FnHandleByIndex§power_usage: Option<FnDevU32>2026-09-26: nvmlDeviceGetPowerUsage, milliwatts.
total_energy: Option<FnDevU64>2026-09-26: nvmlDeviceGetTotalEnergyConsumption, millijoules since the
driver was last reloaded.
clock_info: Option<FnDevArgU32>2026-09-26: nvmlDeviceGetClockInfo(type), MHz.
temperature: Option<FnDevArgU32>2026-09-26: nvmlDeviceGetTemperature(sensor), degrees C.
clocks_event_reasons: Option<FnDevU64>2026-09-26: nvmlDeviceGetCurrentClocksEventReasons, or
nvmlDeviceGetCurrentClocksThrottleReasons when the library lacks it.
memory_info: Option<FnDevMemory>2026-09-26: nvmlDeviceGetMemoryInfo.
pcie_throughput: Option<FnDevArgU32>2026-09-26: nvmlDeviceGetPcieThroughput(counter), KB/s.
nvlink_state: Option<FnDevArgU32>2026-09-26: nvmlDeviceGetNvLinkState(link), 1 = active.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for NvmlFns
impl RefUnwindSafe for NvmlFns
impl Send for NvmlFns
impl Sync for NvmlFns
impl Unpin for NvmlFns
impl UnwindSafe for NvmlFns
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more