pub struct CompilerPipelineStats {
pub pass_stats: Vec<CompilerPassStats>,
pub total_wall_time: Duration,
pub outer_iterations: u32,
pub total_node_reduction: i64,
pub initial_node_count: u64,
pub final_node_count: u64,
}Expand description
Aggregate statistics for an entire pipeline run.
Fields§
§pass_stats: Vec<CompilerPassStats>Per-pass statistics, in execution order.
total_wall_time: DurationTotal wall-clock time for the full pipeline run.
outer_iterations: u32Number of outer fixed-point iterations executed.
total_node_reduction: i64Total node reduction across all passes: initial − final (may be negative
if a pass somehow increases node count, which should not happen in practice).
initial_node_count: u64Node count before the very first pass.
final_node_count: u64Node count after the very last pass.
Implementations§
Source§impl CompilerPipelineStats
impl CompilerPipelineStats
Sourcepub fn overall_reduction_pct(&self) -> f64
pub fn overall_reduction_pct(&self) -> f64
Fraction of nodes eliminated across the entire pipeline run.
Returns 0.0 when initial_node_count == 0.
Sourcepub fn slowest_pass(&self) -> Option<&CompilerPassStats>
pub fn slowest_pass(&self) -> Option<&CompilerPassStats>
Returns the pass that consumed the most wall-clock time, or None if no
passes were executed.
Sourcepub fn format_table(&self) -> String
pub fn format_table(&self) -> String
Render a formatted table of per-pass timing and reduction statistics.
Trait Implementations§
Source§impl Clone for CompilerPipelineStats
impl Clone for CompilerPipelineStats
Source§fn clone(&self) -> CompilerPipelineStats
fn clone(&self) -> CompilerPipelineStats
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 CompilerPipelineStats
impl RefUnwindSafe for CompilerPipelineStats
impl Send for CompilerPipelineStats
impl Sync for CompilerPipelineStats
impl Unpin for CompilerPipelineStats
impl UnsafeUnpin for CompilerPipelineStats
impl UnwindSafe for CompilerPipelineStats
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