#[non_exhaustive]pub enum ProofEvent {
Show 16 variants
CircuitCompiled {
total_layers: usize,
input_shape: (usize, usize),
output_shape: (usize, usize),
nodes: Vec<CircuitNodeMeta>,
has_simd: bool,
simd_num_blocks: usize,
},
LayerActivation {
layer_idx: usize,
node_id: usize,
kind: LayerKind,
output_shape: (usize, usize),
output_sample: Vec<u32>,
stats: ActivationStats,
},
AttentionHeatmap {
layer_idx: usize,
head_idx: usize,
num_heads: usize,
seq_len: usize,
scores: Vec<f32>,
},
ProofStart {
model_name: Option<String>,
backend: String,
num_layers: usize,
input_shape: (usize, usize),
output_shape: (usize, usize),
},
LayerStart {
layer_idx: usize,
kind: LayerKind,
input_shape: (usize, usize),
output_shape: (usize, usize),
trace_cost: usize,
claim_value_approx: f32,
gpu_device: Option<usize>,
},
SumcheckRound {
layer_idx: usize,
round: usize,
total_rounds: usize,
poly_deg2: Option<RoundPolyViz>,
poly_deg3: Option<RoundPolyDeg3Viz>,
claim_value_approx: f32,
},
LayerEnd {
layer_idx: usize,
kind: LayerProofKind,
final_claim_value_approx: f32,
duration_ms: u64,
rounds_completed: usize,
},
ProofComplete {
duration_ms: u64,
num_layer_proofs: usize,
num_weight_openings: usize,
weight_binding_mode: String,
},
WeightOpeningStart {
weight_node_id: usize,
eval_point_len: usize,
},
WeightOpeningEnd {
weight_node_id: usize,
duration_ms: u64,
commitment_hex: String,
},
AggregatedBindingStart {
num_claims: usize,
num_matrices: usize,
},
AggregatedBindingEnd {
duration_ms: u64,
estimated_calldata_felts: usize,
},
GpuStatus {
devices: Vec<GpuSnapshot>,
matmul_done: usize,
matmul_total: usize,
layers_done: usize,
layers_total: usize,
},
StarkProofStart {
num_activation_layers: usize,
num_add_layers: usize,
num_layernorm_layers: usize,
},
StarkProofEnd {
duration_ms: u64,
},
Log {
level: LogLevel,
message: String,
},
}Expand description
All events that can be emitted during a stwo-ml proof session.
Consumers (e.g. RerunSink) pattern-match this enum to route events to
the appropriate Rerun entity paths.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
CircuitCompiled
Emitted once after the LayeredCircuit is compiled from the ComputationGraph.
Fields
§
nodes: Vec<CircuitNodeMeta>LayerActivation
Raw layer activation output sampled for visualization.
Fields
§
stats: ActivationStatsAttentionHeatmap
Attention score matrix for one head (sampled to ≤64×64).
Fields
ProofStart
Start of the entire proof session.
Fields
LayerStart
Beginning of a single layer’s reduction.
Fields
SumcheckRound
One round of sumcheck within a layer.
Fields
§
poly_deg2: Option<RoundPolyViz>Degree-2 polynomial (MatMul / LogUp rounds).
§
poly_deg3: Option<RoundPolyDeg3Viz>Degree-3 polynomial (Mul layer rounds).
LayerEnd
End of a single layer’s reduction.
Fields
§
kind: LayerProofKindProofComplete
The entire proof session completed.
Fields
WeightOpeningStart
WeightOpeningEnd
Fields
AggregatedBindingStart
AggregatedBindingEnd
GpuStatus
Fields
§
devices: Vec<GpuSnapshot>StarkProofStart
StarkProofEnd
Log
Free-form log entry.
Trait Implementations§
Source§impl Clone for ProofEvent
impl Clone for ProofEvent
Source§fn clone(&self) -> ProofEvent
fn clone(&self) -> ProofEvent
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 moreSource§impl Debug for ProofEvent
impl Debug for ProofEvent
Source§impl<'de> Deserialize<'de> for ProofEvent
impl<'de> Deserialize<'de> for ProofEvent
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ProofEvent
impl RefUnwindSafe for ProofEvent
impl Send for ProofEvent
impl Sync for ProofEvent
impl Unpin for ProofEvent
impl UnsafeUnpin for ProofEvent
impl UnwindSafe for ProofEvent
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