para-graph 0.1.2

"Para-Graph" delivers swift, parallel graph algorithms in Rust, optimized for CPU and GPU. Ideal for HPC workflows.
Documentation
use para_graph::model::{Device, Task};

#[derive(Debug, Default, Copy, Clone)]
pub struct Matching {
    pub finish_time: f64,
    pub node: usize,
}

impl std::fmt::Display for Matching {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        f.write_fmt(format_args!(
            "Node {:2} Finish Time {:8.5}",
            self.node, self.finish_time
        ))
    }
}

pub(crate) fn computing_time(d: &Device, t: &Task) -> f64 {
    t.processing_density
        * t.data_size as f64
        * (1. - t.parallel_fraction + t.parallel_fraction / d.number_of_cores as f64)
        / (d.cpu_frequency * 100_000_000.)
}