Skip to content

Commit

Permalink
Include rand only in GPU mode
Browse files Browse the repository at this point in the history
  • Loading branch information
jimouris committed Nov 16, 2023
1 parent c3e92af commit e708bed
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 24 deletions.
24 changes: 10 additions & 14 deletions src/bin/helm.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,16 @@
use concrete_core::prelude::*;
use debug_print::debug_println;
use helm::{ascii, circuit, circuit::EvalCircuit, verilog_parser};
#[cfg(feature = "gpu")]
use rand::rngs::OsRng;
#[cfg(feature = "gpu")]
use rand::RngCore;
use std::time::Instant;
use termion::color;
use tfhe::{
boolean::gen_keys, generate_keys, shortint::parameters::PARAM_MESSAGE_1_CARRY_1_KS_PBS,
ConfigBuilder,
};
use rand::RngCore;
use rand::rngs::OsRng;

fn main() {
ascii::print_art();
Expand Down Expand Up @@ -136,11 +138,8 @@ fn main() {
{
// Gate mode (GPU)
let mut start = Instant::now();
let (lwe_dim, glwe_dim, poly_size) = (
LweDimension(512),
GlweDimension(1),
PolynomialSize(1024),
);
let (lwe_dim, glwe_dim, poly_size) =
(LweDimension(512), GlweDimension(1), PolynomialSize(1024));
let stddev_glwe = 0.00000002980232238769531_f64;
let noise = Variance(stddev_glwe.powf(2.0));
let (dec_lc, dec_bl) = (DecompositionLevelCount(3), DecompositionBaseLog(7));
Expand All @@ -149,19 +148,17 @@ fn main() {
// Create random seed
let mut random_bytes = [0; 16];
OsRng.fill_bytes(&mut random_bytes);
let random_u128 = u128::from_be_bytes(random_bytes);
let random_u128 = u128::from_be_bytes(random_bytes);

// Create the necessary engines
let mut default_engine =
DefaultEngine::new(Box::new(UnixSeeder::new(random_u128))).unwrap();
let mut parallel_engine =
DefaultParallelEngine::new(Box::new(UnixSeeder::new(random_u128)))
.unwrap();
DefaultParallelEngine::new(Box::new(UnixSeeder::new(random_u128))).unwrap();
let cuda_engine = CudaEngine::new(()).unwrap();

// Generate the keys
let h_input_key =
default_engine.generate_new_lwe_secret_key(lwe_dim).unwrap();
let h_input_key = default_engine.generate_new_lwe_secret_key(lwe_dim).unwrap();
let h_lut_key: GlweSecretKey32 = default_engine
.generate_new_glwe_secret_key(glwe_dim, poly_size)
.unwrap();
Expand Down Expand Up @@ -288,8 +285,7 @@ fn main() {
);
// LUT mode
let mut start = Instant::now();
let (client_key, server_key) =
tfhe::shortint::gen_keys(PARAM_MESSAGE_1_CARRY_1_KS_PBS); // single bit ctxt
let (client_key, server_key) = tfhe::shortint::gen_keys(PARAM_MESSAGE_1_CARRY_1_KS_PBS); // single bit ctxt
let mut circuit = circuit::LutCircuit::new(client_key, server_key, circuit_ptxt);
println!("KeyGen done in {} seconds.", start.elapsed().as_secs_f64());

Expand Down
14 changes: 4 additions & 10 deletions tests/circuit_test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -122,11 +122,8 @@ fn encrypted_16_bit_multiplier_gpu() {
circuit.compute_levels();

// Encrypted
let (lwe_dim, glwe_dim, poly_size) = (
LweDimension(512),
GlweDimension(1),
PolynomialSize(1024),
);
let (lwe_dim, glwe_dim, poly_size) =
(LweDimension(512), GlweDimension(1), PolynomialSize(1024));
let stddev_glwe = 0.00000002980232238769531_f64;
let noise = Variance(stddev_glwe.powf(2.0));
let (dec_lc, dec_bl) = (DecompositionLevelCount(3), DecompositionBaseLog(7));
Expand Down Expand Up @@ -210,11 +207,8 @@ fn encrypted_32_bit_multiplier_gpu() {
circuit.compute_levels();

// Encrypted
let (lwe_dim, glwe_dim, poly_size) = (
LweDimension(512),
GlweDimension(1),
PolynomialSize(1024),
);
let (lwe_dim, glwe_dim, poly_size) =
(LweDimension(512), GlweDimension(1), PolynomialSize(1024));
let stddev_glwe = 0.00000002980232238769531_f64;
let noise = Variance(stddev_glwe.powf(2.0));
let (dec_lc, dec_bl) = (DecompositionLevelCount(3), DecompositionBaseLog(7));
Expand Down

0 comments on commit e708bed

Please sign in to comment.