pub struct BenchmarkOutcome {
pub samples: Vec<GpuSample>,
pub duration_secs: u64,
pub is_complete: bool,
pub aggregated_metrics: Option<GpuMetrics>,
pub benchmark_result: BenchmarkResult,
}Expand description
Result of a benchmark run, including whether it meets minimum requirements.
Fields§
§samples: Vec<GpuSample>All collected samples.
duration_secs: u64Actual duration of the benchmark in seconds.
is_complete: boolWhether the benchmark meets the minimum duration requirement.
aggregated_metrics: Option<GpuMetrics>Aggregated GPU metrics (average of all samples).
benchmark_result: BenchmarkResultBenchmark result for telemetry payload.
Implementations§
Source§impl BenchmarkOutcome
impl BenchmarkOutcome
Sourcepub fn from_samples(samples: Vec<GpuSample>, duration_secs: u64) -> Self
pub fn from_samples(samples: Vec<GpuSample>, duration_secs: u64) -> Self
Create a new benchmark outcome from collected samples.
Validates that:
- Duration ≥ 180 seconds
- Sample count ≥ 18
- All metrics are within valid ranges
Trait Implementations§
Source§impl Clone for BenchmarkOutcome
impl Clone for BenchmarkOutcome
Auto Trait Implementations§
impl Freeze for BenchmarkOutcome
impl RefUnwindSafe for BenchmarkOutcome
impl Send for BenchmarkOutcome
impl Sync for BenchmarkOutcome
impl Unpin for BenchmarkOutcome
impl UnsafeUnpin for BenchmarkOutcome
impl UnwindSafe for BenchmarkOutcome
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> 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