diff --git a/concrete-optimizer/src/config.rs b/concrete-optimizer/src/config.rs index 0889494c2..20ed05b9c 100644 --- a/concrete-optimizer/src/config.rs +++ b/concrete-optimizer/src/config.rs @@ -3,7 +3,6 @@ use std::sync::Arc; use crate::computing_cost::complexity_model::ComplexityModel; use crate::computing_cost::cpu::CpuComplexity; use crate::computing_cost::gpu::GpuComplexity; -use crate::optimization::config::{MAX_LOG2_BASE_CPU, MAX_LOG2_BASE_GPU}; #[derive(Clone, Copy)] pub enum ProcessingUnit { @@ -21,13 +20,6 @@ pub enum GpuPbsType { } impl ProcessingUnit { - pub fn max_br_base_log(self) -> u64 { - match self { - Self::Cpu => MAX_LOG2_BASE_CPU, - Self::Gpu { .. } => MAX_LOG2_BASE_GPU, - } - } - pub fn ks_to_string(self) -> &'static str { match self { Self::Cpu => "cpu", diff --git a/concrete-optimizer/src/optimization/config.rs b/concrete-optimizer/src/optimization/config.rs index 8e82b308f..4b2485215 100644 --- a/concrete-optimizer/src/optimization/config.rs +++ b/concrete-optimizer/src/optimization/config.rs @@ -86,9 +86,3 @@ impl SearchSpace { } } } - -// https://github.com/zama-ai/concrete-core/blob/6b52182ab44c4b39ddebca1c457e1096fb687801/concrete-cuda/cuda/src/bootstrap_amortized.cu#L77 -// https://github.com/zama-ai/concrete-core/blob/6b52182ab44c4b39ddebca1c457e1096fb687801/concrete-cuda/cuda/src/bootstrap_low_latency.cu#L153 -pub const MAX_LOG2_BASE_GPU: u64 = 64; - -pub const MAX_LOG2_BASE_CPU: u64 = 64; diff --git a/concrete-optimizer/src/optimization/decomposition/blind_rotate.rs b/concrete-optimizer/src/optimization/decomposition/blind_rotate.rs index fefec8f1d..0c0ea3513 100644 --- a/concrete-optimizer/src/optimization/decomposition/blind_rotate.rs +++ b/concrete-optimizer/src/optimization/decomposition/blind_rotate.rs @@ -23,18 +23,17 @@ pub fn pareto_quantities( security_level: u64, internal_dim: u64, glwe_params: GlweParameters, - max_log2_base: u64, ) -> Vec { assert!(ciphertext_modulus_log == 64); let variance_bsk = glwe_params.minimal_variance(ciphertext_modulus_log, security_level); - let mut quantities = Vec::with_capacity(max_log2_base as usize); + let mut quantities = Vec::with_capacity(ciphertext_modulus_log as usize); let mut increasing_complexity = 0.0; let mut decreasing_variance = f64::INFINITY; let mut counting_no_progress = 0; - let mut prev_best_log2_base = max_log2_base; + let mut prev_best_log2_base = ciphertext_modulus_log as u64; for level in 1..=ciphertext_modulus_log as u64 { // detect increasing noise @@ -121,7 +120,6 @@ pub fn cache( let hardware = processing_unit.br_to_string(); let path = format!("{cache_dir}/br-decomp-{hardware}-64-{security_level}"); - let max_log2_base = processing_unit.max_br_base_log(); let function = move |(glwe_params, internal_dim): MacroParam| { pareto_quantities( complexity_model.as_ref(), @@ -129,7 +127,6 @@ pub fn cache( security_level, internal_dim, glwe_params, - max_log2_base, ) }; PersistentCacheHashMap::new_no_read(&path, VERSION, function) diff --git a/concrete-optimizer/src/optimization/decomposition/pp_switch.rs b/concrete-optimizer/src/optimization/decomposition/pp_switch.rs index 96376a0fe..8015fd9b9 100644 --- a/concrete-optimizer/src/optimization/decomposition/pp_switch.rs +++ b/concrete-optimizer/src/optimization/decomposition/pp_switch.rs @@ -88,7 +88,6 @@ pub fn cache( let hardware = processing_unit.br_to_string(); let path = format!("{cache_dir}/bc-decomp-{hardware}-64-{security_level}"); - let max_log2_base = processing_unit.max_br_base_log(); let function = move |(glwe_params, internal_dim): MacroParam| { let br = blind_rotate::pareto_quantities( complexity_model.as_ref(), @@ -96,7 +95,6 @@ pub fn cache( security_level, internal_dim, glwe_params, - max_log2_base, ); pareto_quantities( complexity_model.as_ref(),