summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNora Widdecke <nora@sequoia-pgp.org>2020-03-27 17:31:07 +0100
committerNora Widdecke <nora@sequoia-pgp.org>2021-01-14 15:33:35 +0100
commit53a007d2ae9212ae4bea4bf158fb883becd96524 (patch)
treeb46ec16dd8ee743ae88b23b386be4c031199bde3
parentbd2010d27f3d3b031a9027d0ce2f1fa013679408 (diff)
openpgp: add throughput measurement
-rw-r--r--openpgp/benches/random.rs9
1 files changed, 5 insertions, 4 deletions
diff --git a/openpgp/benches/random.rs b/openpgp/benches/random.rs
index 8cbb5854..d15b27a2 100644
--- a/openpgp/benches/random.rs
+++ b/openpgp/benches/random.rs
@@ -1,7 +1,6 @@
-use criterion::{black_box, criterion_group, criterion_main, AxisScale, Criterion, BenchmarkId, PlotConfiguration};
+use criterion::{black_box, Throughput, criterion_group, criterion_main, Criterion};
use sequoia_openpgp::crypto;
-use sequoia_openpgp::parse::Parse;
use sequoia_openpgp::cert::{CertBuilder, Cert};
use sequoia_openpgp::policy::{Policy, StandardPolicy};
use std::io::Write;
@@ -12,6 +11,7 @@ fn run_random(size: usize) {
crypto::random(&mut buf);
}
+/// Borrowed from the guide, chapter 02
/// Encrypts the given message.
fn encrypt(policy: &dyn Policy,
sink: &mut Write, plaintext: &str, recipient: &Cert)
@@ -55,14 +55,15 @@ fn run_random_use_case() {
let p = StandardPolicy::new();
let mut ciphertext = Vec::new();
- encrypt(&p, &mut ciphertext, "foo", &cert);
+ let _ = encrypt(&p, &mut ciphertext, "message_text", &cert);
}
fn bench_random(c: &mut Criterion) {
let mut group = c.benchmark_group("bench_crypto_random");
- //group.sample_size(10);
+ group.sample_size(50);
for i in (8..33).step_by(8) {
+ group.throughput(Throughput::Bytes(i as u64));
group.bench_function(format!("crypto::random {:02}", i), |b| b.iter(|| run_random(black_box(i)) ));
};
group.finish();