pub struct SpecReport {Show 20 fields
pub tokens: Vec<u32>,
pub rounds: usize,
pub drafted: u64,
pub accepted: u64,
pub accept_hist: Vec<u64>,
pub draft_ms: f64,
pub verify_ms: f64,
pub prefill_ms: f64,
pub total_ms: f64,
pub chain_ms: f64,
pub replay_ms: f64,
pub draft_prefill_ms: f64,
pub cross_ms: f64,
pub cross_bytes: u64,
pub k_decays: Vec<(usize, usize)>,
pub spec_off_at: Option<usize>,
pub plain_steps: usize,
pub round_wall: Vec<(usize, f64)>,
pub zero_draft_rounds: usize,
pub guard_stops: usize,
}Expand description
One spec run’s counters (the accept-length table’s source).
Fields§
§tokens: Vec<u32>§rounds: usize§drafted: u64§accepted: u64§accept_hist: Vec<u64>hist[a] = rounds that accepted exactly a drafts (a in 0..=k).
draft_ms: f64§verify_ms: f64§prefill_ms: f64§total_ms: f64§chain_ms: f64draft_ms split (the round-cost identity table): the K-step chain, the accepted- token catch-up replay, and the one-time draft prefill. draft_ms is their sum.
replay_ms: f64§draft_prefill_ms: f64§cross_ms: f64Card-1 crossing cost (mtp10 dev1 placement): wall time and bytes of the P2P wide-row copies (prefill seed + per-round replay seeds). 0 on one card.
cross_bytes: u64§k_decays: Vec<(usize, usize)>Dynamic-K admission (mtp10): every decay as (round, new_k). Empty = K never moved.
spec_off_at: Option<usize>Token count at which the policy turned spec fully OFF (k reached 0); the rest of
the generation ran plain decode steps (counted in plain_steps, not rounds).
plain_steps: usize§round_wall: Vec<(usize, f64)>Per-round wall samples: (tokens committed so far, ms since generation start), appended after every round/plain step — lets a caller derive N timing sub-rounds from ONE generation (the x3-rounds protocol where a fresh prefill per timing round is prohibitive, e.g. the 1M ladder).
zero_draft_rounds: usizep-min guard accounting: rounds that drafted NOTHING (verify = plain t==1 step) and chain steps cut short (the sub-threshold token discarded uncounted).
guard_stops: usizeImplementations§
Source§impl SpecReport
impl SpecReport
pub fn accept_rate(&self) -> f64
Sourcepub fn mean_accept_len(&self) -> f64
pub fn mean_accept_len(&self) -> f64
Mean committed tokens per round (accepted + bonus).
Trait Implementations§
Source§impl Clone for SpecReport
impl Clone for SpecReport
Source§fn clone(&self) -> SpecReport
fn clone(&self) -> SpecReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more