pub struct FusionPlan {
pub ops: Vec<FusedOp>,
pub original_op_count: usize,
pub fused_op_count: usize,
}Expand description
The result of a fusion pass: the optimised op sequence plus accounting info.
Fields§
§ops: Vec<FusedOp>Optimised operation sequence.
original_op_count: usizeNumber of ops in the original (unoptimised) sequence.
fused_op_count: usizeNumber of ops in the optimised sequence (== ops.len()).
Implementations§
Source§impl FusionPlan
impl FusionPlan
Sourcepub fn reduction_ratio(&self) -> f64
pub fn reduction_ratio(&self) -> f64
Fraction of operations eliminated: (original − fused) / original.
Returns 0.0 when original_op_count is zero.
Trait Implementations§
Source§impl Clone for FusionPlan
impl Clone for FusionPlan
Source§fn clone(&self) -> FusionPlan
fn clone(&self) -> FusionPlan
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 FusionPlan
impl RefUnwindSafe for FusionPlan
impl Send for FusionPlan
impl Sync for FusionPlan
impl Unpin for FusionPlan
impl UnsafeUnpin for FusionPlan
impl UnwindSafe for FusionPlan
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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