diff options
Diffstat (limited to 'benches')
-rw-r--r-- | benches/zears.rs | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/benches/zears.rs b/benches/zears.rs index ddf5e68..8ea78ba 100644 --- a/benches/zears.rs +++ b/benches/zears.rs @@ -1,4 +1,4 @@ -use criterion::{criterion_group, criterion_main, BenchmarkId, Criterion, Throughput}; +use criterion::{BenchmarkId, Criterion, Throughput, criterion_group, criterion_main}; use zears::Aez; @@ -6,6 +6,7 @@ fn bench(c: &mut Criterion) { let mut group = c.benchmark_group("zears"); const KB: usize = 1024; + let aez = Aez::new(&[0u8; 48]); for size in [KB, 2 * KB, 4 * KB, 8 * KB, 16 * KB].into_iter() { let buf = vec![0u8; size]; @@ -13,10 +14,20 @@ fn bench(c: &mut Criterion) { 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.bench_function(BenchmarkId::new("encrypt_inplace", size), |b| { + let mut out = vec![0u8; size]; + b.iter(|| aez.encrypt_inplace(&[0], &[], 16, &mut out)) + }); + + let buf = aez.encrypt(&[0], &[], 16, &buf); + + group.bench_function(BenchmarkId::new("decrypt", size), |b| { + b.iter(|| aez.decrypt(&[0], &[], 16, &buf).unwrap()); + }); } group.finish(); |