use criterion::{criterion_group, criterion_main, BenchmarkId, Criterion, Throughput}; use zears::Aez; fn bench(c: &mut Criterion) { let mut group = c.benchmark_group("zears"); const KB: usize = 1024; for size in [KB, 2 * KB, 4 * KB, 8 * KB, 16 * KB].into_iter() { let buf = vec![0u8; size]; group.throughput(Throughput::Bytes(size as u64)); group.bench_function(BenchmarkId::new("encrypt_buffer", size), |b| { let aez = Aez::new(&[0u8; 48]); let mut out = vec![0u8; size + 16]; b.iter(|| aez.encrypt_buffer(&[0], &[], &buf, &mut out)) }); } group.finish(); } criterion_group!(benches, bench); criterion_main!(benches);