aboutsummaryrefslogtreecommitdiff
path: root/benches/zears.rs
diff options
context:
space:
mode:
Diffstat (limited to 'benches/zears.rs')
-rw-r--r--benches/zears.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/benches/zears.rs b/benches/zears.rs
new file mode 100644
index 0000000..ddf5e68
--- /dev/null
+++ b/benches/zears.rs
@@ -0,0 +1,26 @@
+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);