pub struct TopoAnalysis {
pub order: Vec<NodeId>,
pub critical_path_cost: u64,
pub critical_path_edges: usize,
/* private fields */
}Expand description
Result of running topological-level analysis on a ComputeGraph.
Fields§
§order: Vec<NodeId>Topological order of all node IDs.
critical_path_cost: u64Length of the critical path in cost units.
critical_path_edges: usizeLength of the critical path in edges (number of edges).
Implementations§
Source§impl TopoAnalysis
impl TopoAnalysis
Sourcepub fn node_info(&self, id: NodeId) -> Option<&NodeInfo>
pub fn node_info(&self, id: NodeId) -> Option<&NodeInfo>
Returns the scheduling info for a specific node.
Returns None if the NodeId is out of range.
Sourcepub fn critical_path_nodes(&self) -> Vec<NodeId>
pub fn critical_path_nodes(&self) -> Vec<NodeId>
Returns all nodes on the critical path, in topological order.
Sourcepub fn priority_order(&self) -> Vec<NodeId>
pub fn priority_order(&self) -> Vec<NodeId>
Returns nodes sorted by ascending slack (most-critical first).
Sourcepub fn max_level(&self) -> usize
pub fn max_level(&self) -> usize
Returns the maximum topological level (depth of the graph in edges).
Sourcepub fn level_widths(&self) -> Vec<usize>
pub fn level_widths(&self) -> Vec<usize>
Returns the number of nodes at each level (the “width profile”).
Trait Implementations§
Source§impl Clone for TopoAnalysis
impl Clone for TopoAnalysis
Source§fn clone(&self) -> TopoAnalysis
fn clone(&self) -> TopoAnalysis
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for TopoAnalysis
impl RefUnwindSafe for TopoAnalysis
impl Send for TopoAnalysis
impl Sync for TopoAnalysis
impl Unpin for TopoAnalysis
impl UnsafeUnpin for TopoAnalysis
impl UnwindSafe for TopoAnalysis
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