pow_benchmark/
pow_benchmark.rs1use std::time::Instant;
2
3use sampi::{SampiData, SampiKeyPair};
4
5fn main() -> anyhow::Result<()> {
6 let kp = SampiKeyPair::new();
7
8 let data = SampiData::String("Hello World! 你好!".to_string());
9 for i in 0..=200 {
10 let mut milliseconds = Vec::new();
11 for _ in 1..=100 {
12 let now = Instant::now();
13 let _s = kp.new_sampi().with_pow(i).build(vec![data.clone()])?;
14 let elapsed = now.elapsed();
15 milliseconds.push((elapsed.as_secs() * 1000) + elapsed.subsec_millis() as u64);
16 }
17 let sum: u64 = milliseconds.iter().sum();
18 println!("{},{}", i, sum / milliseconds.len() as u64);
19 }
20
21 Ok(())
22}