mltop 0.6.2

Resource monitor for ML engineers written in Rust
Documentation
use sysinfo::System;

/// Memory usage
///
/// All values in bytes.
#[derive(Clone)]
pub struct MemorySnapshot {
    pub used: u64,
    pub total: u64,
    pub used_swap: u64,
    pub total_swap: u64,
}

impl MemorySnapshot {
    pub fn from_sysinfo(sys: &System) -> MemorySnapshot {
        MemorySnapshot {
            used: sys.used_memory(),
            total: sys.total_memory(),
            used_swap: sys.used_swap(),
            total_swap: sys.total_swap(),
        }
    }

    pub fn total_percent(&self) -> f64 {
        ((self.used + self.used_swap) as f64) / ((self.total + self.total_swap) as f64)
    }
}