From dcaaf713e8d14a94a5fa3edfd710f262cd232397 Mon Sep 17 00:00:00 2001 From: Nikolay Volf Date: Tue, 21 Jul 2020 12:50:31 +0300 Subject: [PATCH] add ecdsa benches (#6697) --- substrate/primitives/core/benches/bench.rs | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/substrate/primitives/core/benches/bench.rs b/substrate/primitives/core/benches/bench.rs index 335920c4d2..dc57af459d 100644 --- a/substrate/primitives/core/benches/bench.rs +++ b/substrate/primitives/core/benches/bench.rs @@ -107,9 +107,29 @@ fn bench_sr25519(c: &mut Criterion) { }, vec![32, 1024, 1024 * 1024]); } +fn bench_ecdsa(c: &mut Criterion) { + c.bench_function_over_inputs("signing - ecdsa", |b, &msg_size| { + let msg = (0..msg_size) + .map(|_| rand::random::()) + .collect::>(); + let key = sp_core::ecdsa::Pair::generate().0; + b.iter(|| key.sign(&msg)) + }, vec![32, 1024, 1024 * 1024]); + + c.bench_function_over_inputs("verifying - ecdsa", |b, &msg_size| { + let msg = (0..msg_size) + .map(|_| rand::random::()) + .collect::>(); + let key = sp_core::ecdsa::Pair::generate().0; + let sig = key.sign(&msg); + let public = key.public(); + b.iter(|| sp_core::ecdsa::Pair::verify(&sig, &msg, &public)) + }, vec![32, 1024, 1024 * 1024]); +} + criterion_group!{ name = benches; config = Criterion::default().warm_up_time(Duration::from_millis(500)).without_plots(); - targets = bench_hash_128_fix_size, bench_hash_128_dyn_size, bench_ed25519, bench_sr25519 + targets = bench_hash_128_fix_size, bench_hash_128_dyn_size, bench_ed25519, bench_sr25519, bench_ecdsa } criterion_main!(benches);