From b2c2862ba89eeef728c77e441af1d0f6c008adb9 Mon Sep 17 00:00:00 2001 From: Nora Widdecke Date: Wed, 31 Mar 2021 13:28:06 +0200 Subject: bench: Add benchmark generate_certs. --- openpgp/benches/generate_cert.rs | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 openpgp/benches/generate_cert.rs (limited to 'openpgp/benches') diff --git a/openpgp/benches/generate_cert.rs b/openpgp/benches/generate_cert.rs new file mode 100644 index 00000000..45b707ce --- /dev/null +++ b/openpgp/benches/generate_cert.rs @@ -0,0 +1,38 @@ +use criterion::{criterion_group, criterion_main, Criterion}; + +use sequoia_openpgp as openpgp; +use openpgp::cert::{CertBuilder, CipherSuite}; + +fn generate_cert(cipher: CipherSuite) { + // Parse the cert, ignore any errors + let _ = CertBuilder::general_purpose( + cipher, + Some("Alice Lovelace "), + ) + .generate() + .unwrap(); +} + +fn bench_generate_certs(c: &mut Criterion) { + let mut group = c.benchmark_group("generate cert"); + let cipher = CipherSuite::Cv25519; + group.bench_function(format!("{:?}", cipher), |b| { + b.iter(|| generate_cert(cipher)) + }); + let cipher = CipherSuite::P256; + group.bench_function(format!("{:?}", cipher), |b| { + b.iter(|| generate_cert(cipher)) + }); + let cipher = CipherSuite::P384; + group.bench_function(format!("{:?}", cipher), |b| { + b.iter(|| generate_cert(cipher)) + }); + let cipher = CipherSuite::P521; + group.bench_function(format!("{:?}", cipher), |b| { + b.iter(|| generate_cert(cipher)) + }); + group.finish(); +} + +criterion_group!(benches, bench_generate_certs); +criterion_main!(benches); -- cgit v1.2.3