fn print_time(title: &str, interval: Duration, num_signers: usize) {
    let interval_ms = interval.as_nanos() as f64 / 1_000_000f64;
    println!(
        "{:30}: {} ms/{} = {} ms per signer",
        title,
        interval_ms,
        num_signers,
        interval_ms / (num_signers as f64)
    );
}
/// Print the time spent on an operation.
///
/// Note: Benchmark results always need to be treated with caution in many ways.
/// The division by the number of nodes in the printout reflects the
/// fact that most of the operations we are timing have fixed runtime but are
/// performed once per signatory, e.g. signature verification, or are performed
/// once but have a linear component in the number of nodes.  Where this is not
/// the case, as with combined signature verification, num_signers should be set
/// to 1.  The division yields a more useful number than the raw time, however
/// there are often other nonlinear terms that influence the runtime.  We
/// explicitly do not claim that the relationship is always precisely linear.
Print the time spent on an operation.
Note: Benchmark results always need to be treated with caution in many ways.
The division by the number of nodes in the printout reflects the
fact that most of the operations we are timing have fixed runtime but are
performed once per signatory, e.g. signature verification, or are performed
once but have a linear component in the number of nodes.  Where this is not
the case, as with combined signature verification, num_signers should be set
to 1.  The division yields a more useful number than the raw time, however
there are often other nonlinear terms that influence the runtime.  We
explicitly do not claim that the relationship is always precisely linear.
Print the time spent on an operation . Note : Benchmark results always need to be treated with caution in many ways . The division by the number of nodes in the printout reflects the fact that most of the operations we are timing have fixed runtime but are performed once per signatory e . g . signature verification or are performed once but have a linear component in the number of nodes . Where this is not the case as with combined signature verification num_signers should be set to 1 . The division yields a more useful number than the raw time however there are often other nonlinear terms that influence the runtime . We explicitly do not claim that the relationship is always precisely linear .
fn print_time(title: &str, interval: Duration, num_signers: usize) {
    let interval_ms = interval.as_nanos() as f64 / 1_000_000f64;
    println!(
        "{:30}: {} ms/{} = {} ms per signer",
        title,
        interval_ms,
        num_signers,
        interval_ms / (num_signers as f64)
    );
}
fn print_time ( title : & str , interval : Duration , num_signers : usize ) { let interval_ms = interval . as_nanos ( ) as f64 / 1_000_000f64 ; println ! ( " " title interval_ms num_signers interval_ms ( num_signers as f64 ) ) ; }
Print the time spent on an operation.
Print the time spent on an operation .
title
&str
interval
Duration
num_signers
usize
title
&str
interval
Duration
num_signers
usize