Struct criterion_cycles_per_byte::CyclesPerByte
source · pub struct CyclesPerByte;
Expand description
CyclesPerByte
measures clock cycles using the x86 or x86_64 rdtsc
instruction. cpb
is
the preferred measurement for cryptographic algorithms.
Trait Implementations§
source§impl Measurement for CyclesPerByte
impl Measurement for CyclesPerByte
§type Intermediate = u64
type Intermediate = u64
This type represents an intermediate value for the measurements. It will be produced by the
start function and passed to the end function. An example might be the wall-clock time as
of the
start
call. Read more§type Value = u64
type Value = u64
This type is the measured value. An example might be the elapsed wall-clock time between the
start
and end
calls. Read moresource§fn start(&self) -> Self::Intermediate
fn start(&self) -> Self::Intermediate
Criterion.rs will call this before iterating the benchmark.
source§fn end(&self, i: Self::Intermediate) -> Self::Value
fn end(&self, i: Self::Intermediate) -> Self::Value
Criterion.rs will call this after iterating the benchmark to get the measured value.
source§fn add(&self, v1: &Self::Value, v2: &Self::Value) -> Self::Value
fn add(&self, v1: &Self::Value, v2: &Self::Value) -> Self::Value
Combine two values. Criterion.rs sometimes needs to perform measurements in multiple batches
of iterations, so the value from one batch must be added to the sum of the previous batches. Read more
source§fn zero(&self) -> Self::Value
fn zero(&self) -> Self::Value
Return a “zero” value for the Value type which can be added to another value.
source§fn to_f64(&self, value: &Self::Value) -> f64
fn to_f64(&self, value: &Self::Value) -> f64
Converts the measured value to f64 so that it can be used in statistical analysis.
source§fn formatter(&self) -> &dyn ValueFormatter
fn formatter(&self) -> &dyn ValueFormatter
Return a trait-object reference to the value formatter for this measurement.