diff --git a/processor/src/trace/utils.rs b/processor/src/trace/utils.rs index 258eaaced0..6bd018f00f 100644 --- a/processor/src/trace/utils.rs +++ b/processor/src/trace/utils.rs @@ -101,12 +101,12 @@ impl TraceLenSummary { } } - /// Returns length of the main trace + /// Returns length of the main trace. pub fn main_trace_len(&self) -> usize { self.main_trace_len } - /// Returns length of the range table + /// Returns length of the range checker trace. pub fn range_trace_len(&self) -> usize { self.range_trace_len } @@ -127,6 +127,12 @@ impl TraceLenSummary { pub fn padded_trace_len(&self) -> usize { (self.trace_len() + NUM_RAND_ROWS).next_power_of_two() } + + /// Returns the percent (0 - 100) of the steps that were added to the trace to pad it to the + /// next power of tow. + pub fn padding_percentage(&self) -> usize { + (self.padded_trace_len() - self.trace_len()) * 100 / self.padded_trace_len() + } } /// Contains trace lengths of all chilplets: hash, bitwise, memory and kernel ROM trace diff --git a/prover/src/gpu.rs b/prover/src/gpu.rs index 51a0a16abb..af04c4cee3 100644 --- a/prover/src/gpu.rs +++ b/prover/src/gpu.rs @@ -8,7 +8,6 @@ use super::{ ExecutionProver, ExecutionTrace, Felt, FieldElement, Level, ProcessorAir, PublicInputs, WinterProofOptions, }; -use air::trace::main_trace::MainTrace; use elsa::FrozenVec; use ministark_gpu::{ plan::{gen_rpo_merkle_tree, GpuRpo256RowMajor}, @@ -63,7 +62,7 @@ where fn new_trace_lde>( &self, trace_info: &TraceInfo, - main_trace: &MainTrace, + main_trace: &ColMatrix, domain: &StarkDomain, ) -> (Self::TraceLde, TracePolyTable) { MetalRpoTraceLde::new(trace_info, main_trace, domain) @@ -201,7 +200,7 @@ impl> MetalRpoTraceLde { /// segment and the new [DefaultTraceLde]. pub fn new( trace_info: &TraceInfo, - main_trace: &MainTrace, + main_trace: &ColMatrix, domain: &StarkDomain, ) -> (Self, TracePolyTable) { // extend the main execution trace and build a Merkle tree from the extended trace diff --git a/prover/src/lib.rs b/prover/src/lib.rs index 7b748484f9..dbb5e5dcea 100644 --- a/prover/src/lib.rs +++ b/prover/src/lib.rs @@ -63,17 +63,12 @@ where let trace = processor::execute(program, stack_inputs.clone(), host, *options.execution_options())?; #[cfg(feature = "std")] - let padding_percentage = (trace.trace_len_summary().padded_trace_len() - - trace.trace_len_summary().trace_len()) - * 100 - / trace.trace_len_summary().padded_trace_len(); - #[cfg(feature = "std")] event!( Level::INFO, "Generated execution trace of {} columns and {} steps ({}% padded) in {} ms", trace.layout().main_trace_width(), trace.trace_len_summary().padded_trace_len(), - padding_percentage, + trace.trace_len_summary().padding_percentage(), now.elapsed().as_millis() );