From 1c9b5ab53c0ac07dcf2fbdb3db038aaf5a1b5692 Mon Sep 17 00:00:00 2001 From: Greg Fitzgerald Date: Sat, 3 Mar 2018 11:59:34 -0700 Subject: [PATCH] Report performance of signature verification too --- src/bin/client-demo.rs | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/src/bin/client-demo.rs b/src/bin/client-demo.rs index f18ae89d97..e40d837677 100644 --- a/src/bin/client-demo.rs +++ b/src/bin/client-demo.rs @@ -31,7 +31,6 @@ fn main() { }) .collect(); let duration = now.elapsed(); - let ns = duration.as_secs() * 1_000_000_000 + duration.subsec_nanos() as u64; let bsps = txs as f64 / ns as f64; let nsps = ns as f64 / txs as f64; @@ -41,6 +40,28 @@ fn main() { nsps / 1_000_f64 ); + println!("Verify signatures..."); + use silk::event::{verify_event, Event}; + let now = Instant::now(); + for &(k, s) in &sigs { + let e = Event::Transaction { + from: Some(alice_pubkey), + to: k, + data: one, + sig: s, + }; + assert!(verify_event(&e)); + } + let duration = now.elapsed(); + let ns = duration.as_secs() * 1_000_000_000 + duration.subsec_nanos() as u64; + let bsvps = txs as f64 / ns as f64; + let nspsv = ns as f64 / txs as f64; + println!( + "Done. {} thousand signature verifications per second, {}us per signature verification", + bsvps * 1_000_000_f64, + nspsv / 1_000_f64 + ); + println!("Transferring 1 unit {} times...", txs); let now = Instant::now(); let mut sig = sig;