pub struct NodeCostEstimate {
pub node_id: usize,
pub op_name: String,
pub output_shape: Vec<usize>,
pub flops: FlopEstimate,
pub memory: MemoryCostEstimate,
pub is_bottleneck: bool,
}Expand description
Cost estimate for a single node in the graph.
Named NodeCostEstimate to avoid collision with
crate::scheduling::NodeCost.
Fields§
§node_id: usizeIndex of the node in the graph’s nodes slice.
op_name: StringHuman-readable operation name (e.g. "Einsum(ij,jk->ik)").
output_shape: Vec<usize>Estimated output shape (best-effort; may be a placeholder).
flops: FlopEstimateFLOP estimate for this node.
memory: MemoryCostEstimateMemory estimate for this node.
is_bottleneck: booltrue if this node’s total_flops > graph_avg_flops * 3.
Trait Implementations§
Source§impl Clone for NodeCostEstimate
impl Clone for NodeCostEstimate
Source§fn clone(&self) -> NodeCostEstimate
fn clone(&self) -> NodeCostEstimate
Returns a duplicate of the value. Read more
1.0.0 · 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 NodeCostEstimate
impl RefUnwindSafe for NodeCostEstimate
impl Send for NodeCostEstimate
impl Sync for NodeCostEstimate
impl Unpin for NodeCostEstimate
impl UnsafeUnpin for NodeCostEstimate
impl UnwindSafe for NodeCostEstimate
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more