mirror of
https://github.com/zama-ai/tfhe-rs.git
synced 2026-01-07 22:04:10 -05:00
chore(bench): insert params name in bench id for hlapi
To ease parsing and filtering by third parties.
This commit is contained in:
@@ -252,12 +252,13 @@ mod pbs_stats {
|
||||
println!("ERC20 swap request update dex balance/::{type_name}: {count} PBS");
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
let test_name = if cfg!(feature = "gpu") {
|
||||
format!("hlapi::cuda::dex::pbs_count::swap_request_update_dex_balance::{fn_name}::{type_name}")
|
||||
format!("hlapi::cuda::dex::pbs_count::swap_request_update_dex_balance::{fn_name}::{params_name}::{type_name}")
|
||||
} else {
|
||||
format!(
|
||||
"hlapi::dex::pbs_count::swap_request_update_dex_balance::{fn_name}::{type_name}"
|
||||
"hlapi::dex::pbs_count::swap_request_update_dex_balance::{fn_name}::{params_name}::{type_name}"
|
||||
)
|
||||
};
|
||||
|
||||
@@ -275,7 +276,7 @@ mod pbs_stats {
|
||||
write_to_json::<u64, _>(
|
||||
&test_name,
|
||||
params,
|
||||
params.name(),
|
||||
params_name,
|
||||
"pbs-count",
|
||||
&OperatorType::Atomic,
|
||||
0,
|
||||
@@ -306,11 +307,14 @@ mod pbs_stats {
|
||||
println!("ERC20 swap request finalize/::{type_name}: {count} PBS");
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
let test_name = if cfg!(feature = "gpu") {
|
||||
format!("hlapi::cuda::dex::pbs_count::swap_request_finalize::{type_name}")
|
||||
format!(
|
||||
"hlapi::cuda::dex::pbs_count::swap_request_finalize::{params_name}::{type_name}"
|
||||
)
|
||||
} else {
|
||||
format!("hlapi::dex::pbs_count::swap_request_finalize::{type_name}")
|
||||
format!("hlapi::dex::pbs_count::swap_request_finalize::{params_name}::{type_name}")
|
||||
};
|
||||
|
||||
let results_file = Path::new("dex_swap_request_finalize_pbs_count.csv");
|
||||
@@ -327,7 +331,7 @@ mod pbs_stats {
|
||||
write_to_json::<u64, _>(
|
||||
&test_name,
|
||||
params,
|
||||
params.name(),
|
||||
params_name,
|
||||
"pbs-count",
|
||||
&OperatorType::Atomic,
|
||||
0,
|
||||
@@ -368,11 +372,12 @@ mod pbs_stats {
|
||||
println!("ERC20 swap claim prepare/::{type_name}: {count} PBS");
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
let test_name = if cfg!(feature = "gpu") {
|
||||
format!("hlapi::cuda::pbs_count::dex::swap_claim_prepare::{type_name}")
|
||||
format!("hlapi::cuda::pbs_count::dex::swap_claim_prepare::{params_name}::{type_name}")
|
||||
} else {
|
||||
format!("hlapi::dex::pbs_count::swap_claim_prepare::{type_name}")
|
||||
format!("hlapi::dex::pbs_count::swap_claim_prepare::{params_name}::{type_name}")
|
||||
};
|
||||
|
||||
let results_file = Path::new("dex_swap_claim_prepare_pbs_count.csv");
|
||||
@@ -389,7 +394,7 @@ mod pbs_stats {
|
||||
write_to_json::<u64, _>(
|
||||
&test_name,
|
||||
params,
|
||||
params.name(),
|
||||
params_name,
|
||||
"pbs-count",
|
||||
&OperatorType::Atomic,
|
||||
0,
|
||||
@@ -427,11 +432,12 @@ mod pbs_stats {
|
||||
println!("ERC20 swap claim update dex balance/::{type_name}: {count} PBS");
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
let test_name = if cfg!(feature = "gpu") {
|
||||
format!("hlapi::cuda::pbs_count::dex::swap_claim_update_dex_balance::{fn_name}::{type_name}")
|
||||
format!("hlapi::cuda::pbs_count::dex::swap_claim_update_dex_balance::{fn_name}::{params_name}::{type_name}")
|
||||
} else {
|
||||
format!("hlapi::dex::pbs_count::swap_claim_update_dex_balance:::{fn_name}:{type_name}")
|
||||
format!("hlapi::dex::pbs_count::swap_claim_update_dex_balance::{fn_name}::{params_name}::{type_name}")
|
||||
};
|
||||
|
||||
let results_file = Path::new("dex_swap_claim_update_dex_balance_pbs_count.csv");
|
||||
@@ -448,7 +454,7 @@ mod pbs_stats {
|
||||
write_to_json::<u64, _>(
|
||||
&test_name,
|
||||
params,
|
||||
params.name(),
|
||||
params_name,
|
||||
"pbs-count",
|
||||
&OperatorType::Atomic,
|
||||
0,
|
||||
@@ -473,6 +479,9 @@ fn bench_swap_request_latency<FheType, F1, F2>(
|
||||
#[cfg(feature = "gpu")]
|
||||
configure_gpu(client_key);
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
let bench_id = format!("{bench_name}::{fn_name}::{type_name}");
|
||||
c.bench_function(&bench_id, |b| {
|
||||
let mut rng = thread_rng();
|
||||
@@ -512,12 +521,10 @@ fn bench_swap_request_latency<FheType, F1, F2>(
|
||||
})
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
params_name,
|
||||
"dex-swap-request",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
@@ -541,10 +548,14 @@ fn bench_swap_request_throughput<FheType, F1, F2>(
|
||||
{
|
||||
let mut rng = thread_rng();
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
for num_elems in [10, 50, 100] {
|
||||
group.throughput(Throughput::Elements(num_elems));
|
||||
let bench_id =
|
||||
format!("{bench_name}::throughput::{fn_name}::{type_name}::{num_elems}_elems");
|
||||
let bench_id = format!(
|
||||
"{bench_name}::throughput::{fn_name}::{params_name}::{type_name}::{num_elems}_elems"
|
||||
);
|
||||
group.bench_with_input(&bench_id, &num_elems, |b, &num_elems| {
|
||||
let from_balances_0 = (0..num_elems)
|
||||
.map(|_| FheType::encrypt(rng.gen::<u64>(), client_key))
|
||||
@@ -626,12 +637,10 @@ fn bench_swap_request_throughput<FheType, F1, F2>(
|
||||
})
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
¶ms_name,
|
||||
"dex-swap-request",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
@@ -662,10 +671,14 @@ fn cuda_bench_swap_request_throughput<FheType, F1, F2>(
|
||||
.collect::<Vec<_>>();
|
||||
let dex_balance_update_sks = compressed_server_key.decompress_to_gpu();
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
for num_elems in [5 * num_gpus, 10 * num_gpus, 20 * num_gpus] {
|
||||
group.throughput(Throughput::Elements(num_elems));
|
||||
let bench_id =
|
||||
format!("{bench_name}::throughput::{fn_name}::{type_name}::{num_elems}_elems");
|
||||
let bench_id = format!(
|
||||
"{bench_name}::throughput::{fn_name}::{params_name}::{type_name}::{num_elems}_elems"
|
||||
);
|
||||
group.bench_with_input(&bench_id, &num_elems, |b, &num_elems| {
|
||||
let from_balances_0 = (0..num_elems)
|
||||
.map(|_| FheType::encrypt(rng.gen::<u64>(), client_key))
|
||||
@@ -836,12 +849,10 @@ fn cuda_bench_swap_request_throughput<FheType, F1, F2>(
|
||||
})
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
¶ms_name,
|
||||
"dex-swap-request",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
@@ -866,7 +877,10 @@ fn bench_swap_claim_latency<FheType, F1, F2>(
|
||||
#[cfg(feature = "gpu")]
|
||||
configure_gpu(client_key);
|
||||
|
||||
let bench_id = format!("{bench_name}::{fn_name}::{type_name}");
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
let bench_id = format!("{bench_name}::{fn_name}::{params_name}::{type_name}");
|
||||
c.bench_function(&bench_id, |b| {
|
||||
let mut rng = thread_rng();
|
||||
|
||||
@@ -911,12 +925,10 @@ fn bench_swap_claim_latency<FheType, F1, F2>(
|
||||
});
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
¶ms_name,
|
||||
"dex-swap-claim",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
@@ -940,10 +952,14 @@ fn bench_swap_claim_throughput<FheType, F1, F2>(
|
||||
{
|
||||
let mut rng = thread_rng();
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
for num_elems in [2, 6, 10] {
|
||||
group.throughput(Throughput::Elements(num_elems));
|
||||
let bench_id =
|
||||
format!("{bench_name}::throughput::{fn_name}::{type_name}::{num_elems}_elems");
|
||||
let bench_id = format!(
|
||||
"{bench_name}::throughput::{fn_name}::{params_name}::{type_name}::{num_elems}_elems"
|
||||
);
|
||||
group.bench_with_input(&bench_id, &num_elems, |b, &num_elems| {
|
||||
let pending_0_in = (0..num_elems)
|
||||
.map(|_| FheType::encrypt(rng.gen::<u64>(), client_key))
|
||||
@@ -1043,12 +1059,10 @@ fn bench_swap_claim_throughput<FheType, F1, F2>(
|
||||
});
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
¶ms_name,
|
||||
"dex-swap-claim",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
@@ -1079,10 +1093,14 @@ fn cuda_bench_swap_claim_throughput<FheType, F1, F2>(
|
||||
.collect::<Vec<_>>();
|
||||
let dex_balance_update_sks = compressed_server_key.decompress_to_gpu();
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
for num_elems in [num_gpus, 2 * num_gpus] {
|
||||
group.throughput(Throughput::Elements(num_elems));
|
||||
let bench_id =
|
||||
format!("{bench_name}::throughput::{fn_name}::{type_name}::{num_elems}_elems");
|
||||
let bench_id = format!(
|
||||
"{bench_name}::throughput::{fn_name}::{params_name}::{type_name}::{num_elems}_elems"
|
||||
);
|
||||
group.bench_with_input(&bench_id, &num_elems, |b, &num_elems| {
|
||||
let pending_0_in = (0..num_elems)
|
||||
.map(|_| FheType::encrypt(rng.gen::<u64>(), client_key))
|
||||
@@ -1248,12 +1266,10 @@ fn cuda_bench_swap_claim_throughput<FheType, F1, F2>(
|
||||
});
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
¶ms_name,
|
||||
"dex-swap-claim",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
|
||||
@@ -306,11 +306,12 @@ mod pbs_stats {
|
||||
println!("ERC20 transfer/{fn_name}::{type_name}: {count} PBS");
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
let test_name = if cfg!(feature = "gpu") {
|
||||
format!("hlapi::cuda::erc20::pbs_count::{fn_name}::{type_name}")
|
||||
format!("hlapi::cuda::erc20::pbs_count::{fn_name}::{params_name}::{type_name}")
|
||||
} else {
|
||||
format!("hlapi::erc20::pbs_count::{fn_name}::{type_name}")
|
||||
format!("hlapi::erc20::pbs_count::{fn_name}::{params_name}::{type_name}")
|
||||
};
|
||||
|
||||
let results_file = Path::new("erc20_pbs_count.csv");
|
||||
@@ -327,7 +328,7 @@ mod pbs_stats {
|
||||
write_to_json::<u64, _>(
|
||||
&test_name,
|
||||
params,
|
||||
params.name(),
|
||||
params_name,
|
||||
"pbs-count",
|
||||
&OperatorType::Atomic,
|
||||
0,
|
||||
@@ -351,7 +352,10 @@ fn bench_transfer_latency<FheType, F>(
|
||||
#[cfg(feature = "gpu")]
|
||||
configure_gpu(client_key);
|
||||
|
||||
let bench_id = format!("{bench_name}::{fn_name}::{type_name}");
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
let bench_id = format!("{bench_name}::{fn_name}::{params_name}::{type_name}");
|
||||
c.bench_function(&bench_id, |b| {
|
||||
let mut rng = thread_rng();
|
||||
|
||||
@@ -368,12 +372,10 @@ fn bench_transfer_latency<FheType, F>(
|
||||
})
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
params_name,
|
||||
"erc20-transfer",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
@@ -402,7 +404,11 @@ fn bench_transfer_latency_simd<FheType, F>(
|
||||
.src
|
||||
.len()
|
||||
/ 3;
|
||||
let bench_id = format!("{bench_name}::{fn_name}::{type_name}");
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
let bench_id = format!("{bench_name}::{fn_name}::{params_name}::{type_name}");
|
||||
c.bench_function(&bench_id, |b| {
|
||||
let mut rng = thread_rng();
|
||||
|
||||
@@ -427,12 +433,10 @@ fn bench_transfer_latency_simd<FheType, F>(
|
||||
})
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
params_name,
|
||||
"erc20-simd-transfer",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
@@ -454,10 +458,14 @@ fn bench_transfer_throughput<FheType, F>(
|
||||
{
|
||||
let mut rng = thread_rng();
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
for num_elems in [10, 100, 500] {
|
||||
group.throughput(Throughput::Elements(num_elems));
|
||||
let bench_id =
|
||||
format!("{bench_name}::throughput::{fn_name}::{type_name}::{num_elems}_elems");
|
||||
let bench_id = format!(
|
||||
"{bench_name}::throughput::{fn_name}::{params_name}::{type_name}::{num_elems}_elems"
|
||||
);
|
||||
group.bench_with_input(&bench_id, &num_elems, |b, &num_elems| {
|
||||
let from_amounts = (0..num_elems)
|
||||
.map(|_| FheType::encrypt(rng.gen::<u64>(), client_key))
|
||||
@@ -479,12 +487,10 @@ fn bench_transfer_throughput<FheType, F>(
|
||||
})
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
¶ms_name,
|
||||
"erc20-transfer",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
@@ -513,11 +519,16 @@ fn cuda_bench_transfer_throughput<FheType, F>(
|
||||
.map(|i| compressed_server_key.decompress_to_specific_gpu(GpuIndex::new(i as u32)))
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
// 200 * num_gpus seems to be enough for maximum throughput on 8xH100 SXM5
|
||||
let num_elems = 200 * num_gpus;
|
||||
|
||||
group.throughput(Throughput::Elements(num_elems));
|
||||
let bench_id = format!("{bench_name}::throughput::{fn_name}::{type_name}::{num_elems}_elems");
|
||||
let bench_id = format!(
|
||||
"{bench_name}::throughput::{fn_name}::{params_name}::{type_name}::{num_elems}_elems"
|
||||
);
|
||||
group.bench_with_input(&bench_id, &num_elems, |b, &num_elems| {
|
||||
let from_amounts = (0..num_elems)
|
||||
.map(|_| FheType::encrypt(rng.gen::<u64>(), client_key))
|
||||
@@ -565,12 +576,10 @@ fn cuda_bench_transfer_throughput<FheType, F>(
|
||||
});
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
¶ms_name,
|
||||
"erc20-transfer",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
@@ -593,10 +602,14 @@ fn hpu_bench_transfer_throughput<FheType, F>(
|
||||
{
|
||||
let mut rng = thread_rng();
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
for num_elems in [10, 100] {
|
||||
group.throughput(Throughput::Elements(num_elems));
|
||||
let bench_id =
|
||||
format!("{bench_name}::throughput::{fn_name}::{type_name}::{num_elems}_elems");
|
||||
let bench_id = format!(
|
||||
"{bench_name}::throughput::{fn_name}::{params_name}::{type_name}::{num_elems}_elems"
|
||||
);
|
||||
group.bench_with_input(&bench_id, &num_elems, |b, &num_elems| {
|
||||
let from_amounts = (0..num_elems)
|
||||
.map(|_| FheType::encrypt(rng.gen::<u64>(), client_key))
|
||||
@@ -627,12 +640,10 @@ fn hpu_bench_transfer_throughput<FheType, F>(
|
||||
});
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
¶ms_name,
|
||||
"erc20-transfer",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
@@ -663,11 +674,15 @@ fn hpu_bench_transfer_throughput_simd<FheType, F>(
|
||||
.len()
|
||||
/ 3;
|
||||
let mut rng = thread_rng();
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
let params_name = params.name();
|
||||
|
||||
for num_elems in [2, 8] {
|
||||
let real_num_elems = num_elems * (hpu_simd_n as u64);
|
||||
group.throughput(Throughput::Elements(real_num_elems));
|
||||
let bench_id =
|
||||
format!("{bench_name}::throughput::{fn_name}::{type_name}::{real_num_elems}_elems");
|
||||
format!("{bench_name}::throughput::{fn_name}::{params_name}::{type_name}::{real_num_elems}_elems");
|
||||
group.bench_with_input(&bench_id, &num_elems, |b, &num_elems| {
|
||||
let from_amounts = (0..num_elems)
|
||||
.map(|_| {
|
||||
@@ -710,12 +725,10 @@ fn hpu_bench_transfer_throughput_simd<FheType, F>(
|
||||
});
|
||||
});
|
||||
|
||||
let params = client_key.computation_parameters();
|
||||
|
||||
write_to_json::<u64, _>(
|
||||
&bench_id,
|
||||
params,
|
||||
params.name(),
|
||||
¶ms_name,
|
||||
"erc20-simd-ransfer",
|
||||
&OperatorType::Atomic,
|
||||
64,
|
||||
|
||||
@@ -77,11 +77,12 @@ fn bench_sns_only_fhe_type<FheType>(
|
||||
|
||||
let mut bench_group = c.benchmark_group(type_name);
|
||||
let bench_id_prefix = if cfg!(feature = "gpu") {
|
||||
format!("hlapi::cuda::{}", noise_param.name())
|
||||
"hlapi::cuda".to_string()
|
||||
} else {
|
||||
"hlapi".to_string()
|
||||
};
|
||||
let bench_id_suffix = format!("noise_squash::{type_name}");
|
||||
let noise_param_name = noise_param.name();
|
||||
let bench_id_suffix = format!("noise_squash::{noise_param_name}::{type_name}");
|
||||
|
||||
let mut rng = thread_rng();
|
||||
|
||||
@@ -218,11 +219,12 @@ fn bench_decomp_sns_comp_fhe_type<FheType>(
|
||||
|
||||
let mut bench_group = c.benchmark_group(type_name);
|
||||
let bench_id_prefix = if cfg!(feature = "gpu") {
|
||||
format!("hlapi::cuda::{}", noise_param.name())
|
||||
"hlapi::cuda".to_string()
|
||||
} else {
|
||||
"hlapi".to_string()
|
||||
};
|
||||
let bench_id_suffix = format!("decomp_noise_squash_comp::{type_name}");
|
||||
let noise_param_name = noise_param.name();
|
||||
let bench_id_suffix = format!("decomp_noise_squash_comp::{noise_param_name}::{type_name}");
|
||||
|
||||
let mut rng = thread_rng();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user