pub trait Device {
    fn name(&self) -> String;
    fn device_type(&self) -> DeviceType;
    fn memory_info(&self) -> String;
}

#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum DeviceType {
    Cpu,
    Gpu,
    Tpu,
}
