pub struct HardwareInfo {Show 14 fields
pub timestamp: u64,
pub cpu: CPUInfo,
pub gpus: Vec<GPUInfo>,
pub npus: Vec<NPUInfo>,
pub tpus: Vec<TPUInfo>,
pub arm_hardware: Option<ARMHardwareInfo>,
pub fpgas: Vec<FPGAInfo>,
pub memory: MemoryInfo,
pub storage_devices: Vec<StorageInfo>,
pub network_interfaces: Vec<NetworkInfo>,
pub battery: Option<BatteryInfo>,
pub thermal: ThermalInfo,
pub pci_devices: Vec<PCIDevice>,
pub usb_devices: Vec<USBDevice>,
}
Expand description
Complete system hardware information
Fields§
§timestamp: u64
Timestamp when the hardware information was collected
cpu: CPUInfo
CPU information
gpus: Vec<GPUInfo>
GPU information (multiple GPUs supported)
npus: Vec<NPUInfo>
NPU information (Neural Processing Units)
tpus: Vec<TPUInfo>
TPU information (Tensor Processing Units)
arm_hardware: Option<ARMHardwareInfo>
ARM-specific hardware information (if running on ARM)
fpgas: Vec<FPGAInfo>
FPGA accelerators
memory: MemoryInfo
Memory information
storage_devices: Vec<StorageInfo>
Storage devices
network_interfaces: Vec<NetworkInfo>
Network interfaces
battery: Option<BatteryInfo>
Battery information (if available)
thermal: ThermalInfo
Thermal sensors and fans
pci_devices: Vec<PCIDevice>
PCI devices
usb_devices: Vec<USBDevice>
USB devices
Implementations§
Source§impl HardwareInfo
impl HardwareInfo
Sourcepub fn arm_hardware(&self) -> Option<&ARMHardwareInfo>
pub fn arm_hardware(&self) -> Option<&ARMHardwareInfo>
Get ARM hardware information (if available)
Sourcepub fn memory(&self) -> &MemoryInfo
pub fn memory(&self) -> &MemoryInfo
Get memory information
Sourcepub fn storage_devices(&self) -> &[StorageInfo]
pub fn storage_devices(&self) -> &[StorageInfo]
Get storage devices
Sourcepub fn network_interfaces(&self) -> &[NetworkInfo]
pub fn network_interfaces(&self) -> &[NetworkInfo]
Get network interfaces
Sourcepub fn battery(&self) -> Option<&BatteryInfo>
pub fn battery(&self) -> Option<&BatteryInfo>
Get battery information (if available)
Sourcepub fn thermal(&self) -> &ThermalInfo
pub fn thermal(&self) -> &ThermalInfo
Get thermal information
Sourcepub fn pci_devices(&self) -> &[PCIDevice]
pub fn pci_devices(&self) -> &[PCIDevice]
Get PCI devices
Sourcepub fn usb_devices(&self) -> &[USBDevice]
pub fn usb_devices(&self) -> &[USBDevice]
Get USB devices
Sourcepub fn is_arm_system(&self) -> bool
pub fn is_arm_system(&self) -> bool
Check if system is ARM-based
Sourcepub fn accelerator_count(&self) -> usize
pub fn accelerator_count(&self) -> usize
Get count of specialized accelerators (NPUs + TPUs + FPGAs)
Sourcepub fn accelerator_summary(&self) -> HashMap<String, usize>
pub fn accelerator_summary(&self) -> HashMap<String, usize>
Get comprehensive accelerator information
Trait Implementations§
Source§impl Clone for HardwareInfo
impl Clone for HardwareInfo
Source§fn clone(&self) -> HardwareInfo
fn clone(&self) -> HardwareInfo
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more