Skip to content

Commit ce0f723

Browse files
committed
Fix consecutive proofs bug
1 parent 8cc91b7 commit ce0f723

File tree

3 files changed

+18
-18
lines changed

3 files changed

+18
-18
lines changed

crates/prover/src/constraint_framework/component.rs

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -597,8 +597,6 @@ impl<E: FrameworkEval + Sync> ComponentProver<IcicleBackend> for FrameworkCompon
597597

598598
let mut col = DeviceVec::cuda_malloc(accum.col.len() as _).unwrap();
599599

600-
let d_exec_trace = EXEC_TRACE.get().unwrap();
601-
602600
let mut d_denom = DeviceVec::cuda_malloc(denom_inv.len() as _).unwrap();
603601
d_denom.copy_from_host(HostSlice::from_slice(unsafe {
604602
transmute(&denom_inv[..])})).unwrap();
@@ -608,18 +606,20 @@ impl<E: FrameworkEval + Sync> ComponentProver<IcicleBackend> for FrameworkCompon
608606
transmute(&accum.random_coeff_powers[..])
609607
})).unwrap();
610608

611-
icicle_m31::fri::compute_polynomial(
612-
total_constraints as _,
613-
eval_log_size,
614-
domain_log_size,
615-
trace_rows_dimension as _,
616-
trace_cols_dimension as _,
617-
&d_denom[..],
618-
&d_rand_coeff_powers[..],
619-
&d_exec_trace[..],
620-
&mut col[..],
621-
)
622-
.unwrap();
609+
unsafe {
610+
icicle_m31::fri::compute_polynomial(
611+
total_constraints as _,
612+
eval_log_size,
613+
domain_log_size,
614+
trace_rows_dimension as _,
615+
trace_cols_dimension as _,
616+
&d_denom[..],
617+
&d_rand_coeff_powers[..],
618+
&(*EXEC_TRACE)[..],
619+
&mut col[..],
620+
)
621+
.unwrap();
622+
}
623623

624624
let mut icicle_col = vec![QuarticExtensionField::zero(); accum.col.len()];
625625

crates/prover/src/constraint_framework/mod.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,7 @@ use icicle_cuda_runtime::memory::DeviceVec;
1717
#[cfg(feature = "icicle")]
1818
use icicle_m31::field::ScalarField;
1919
#[cfg(feature = "icicle")]
20-
use std::sync::OnceLock;
21-
#[cfg(feature = "icicle")]
22-
pub static EXEC_TRACE: OnceLock<DeviceVec<ScalarField>> = OnceLock::new();
20+
pub static mut EXEC_TRACE: *mut DeviceVec<ScalarField> = std::ptr::null_mut();
2321

2422
use std::array;
2523
use std::fmt::Debug;

crates/prover/src/examples/wide_fibonacci/mod.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -349,7 +349,9 @@ mod tests {
349349
h.copy_from_host(HostSlice::from_slice(unsafe { transmute(b_transposed.as_slice()) }))
350350
.unwrap();
351351

352-
EXEC_TRACE.get_or_init(|| h);
352+
unsafe {
353+
EXEC_TRACE = &mut h;
354+
}
353355

354356
icicle_m31::fri::precompute_fri_twiddles(log_n_instances).unwrap();
355357

0 commit comments

Comments
 (0)