pub struct GraphProfilingReport {
pub node_profiles: Vec<NodeProfile>,
pub port_throughputs: Vec<PortThroughput>,
pub total_duration_us: u64,
pub cpu_efficiency_pct: f32,
}Expand description
A complete profiling report for a graph execution run.
Fields§
§node_profiles: Vec<NodeProfile>Per-node profiles sorted by total execution time (descending).
port_throughputs: Vec<PortThroughput>Per-port throughput records.
total_duration_us: u64Wall-clock duration of the entire execution in microseconds.
cpu_efficiency_pct: f32Estimated CPU efficiency: sum(node_total_us) / total_duration_us * 100.
Implementations§
Source§impl GraphProfilingReport
impl GraphProfilingReport
Sourcepub fn generate(profiler: &GraphProfiler) -> Self
pub fn generate(profiler: &GraphProfiler) -> Self
Generate a profiling report from a GraphProfiler.
port_throughputs and total_duration_us are passed externally as the
profiler itself does not measure wall time or port traffic.
Sourcepub fn generate_full(
profiler: &GraphProfiler,
port_throughputs: Vec<PortThroughput>,
total_duration_us: u64,
) -> Self
pub fn generate_full( profiler: &GraphProfiler, port_throughputs: Vec<PortThroughput>, total_duration_us: u64, ) -> Self
Generate a full report with explicit port throughputs and wall-clock duration.
Trait Implementations§
Source§impl Clone for GraphProfilingReport
impl Clone for GraphProfilingReport
Source§fn clone(&self) -> GraphProfilingReport
fn clone(&self) -> GraphProfilingReport
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 GraphProfilingReport
impl RefUnwindSafe for GraphProfilingReport
impl Send for GraphProfilingReport
impl Sync for GraphProfilingReport
impl Unpin for GraphProfilingReport
impl UnsafeUnpin for GraphProfilingReport
impl UnwindSafe for GraphProfilingReport
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