File tree Expand file tree Collapse file tree 3 files changed +18
-18
lines changed
Expand file tree Collapse file tree 3 files changed +18
-18
lines changed Original file line number Diff line number Diff 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
Original file line number Diff line number Diff line change @@ -17,9 +17,7 @@ use icicle_cuda_runtime::memory::DeviceVec;
1717#[ cfg( feature = "icicle" ) ]
1818use 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
2422use std:: array;
2523use std:: fmt:: Debug ;
Original file line number Diff line number Diff 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
You can’t perform that action at this time.
0 commit comments