Struct criterion::BenchmarkId [−][src]
pub struct BenchmarkId { /* fields omitted */ }Expand description
Simple structure representing an ID for a benchmark. The ID must be unique within a benchmark group.
Implementations
Construct a new benchmark ID from a string function name and a parameter value.
Note that the parameter value need not be the same as the parameter passed to your actual benchmark. For instance, you might have a benchmark that takes a 1MB string as input. It would be impractical to embed the whole string in the benchmark ID, so instead your parameter value might be a descriptive string like “1MB Alphanumeric”.
Examples
// A basic benchmark ID is typically constructed from a constant string and a simple // parameter let basic_id = BenchmarkId::new("my_id", 5); // The function name can be a string let function_name = "test_string".to_string(); let string_id = BenchmarkId::new(function_name, 12); // Benchmark IDs are passed to benchmark groups: let mut criterion = Criterion::default(); let mut group = criterion.benchmark_group("My Group"); // Generate a very large input let input : String = ::std::iter::repeat("X").take(1024 * 1024).collect(); // Note that we don't have to use the input as the parameter in the ID group.bench_with_input(BenchmarkId::new("Test long string", "1MB X's"), &input, |b, i| { b.iter(|| i.len()) });
Construct a new benchmark ID from just a parameter value. Use this when benchmarking a single function with a variety of different inputs.
Trait Implementations
This method tests for self and other values to be equal, and is used
by ==. Read more
This method tests for !=.
Auto Trait Implementations
impl RefUnwindSafe for BenchmarkIdimpl Send for BenchmarkIdimpl Sync for BenchmarkIdimpl Unpin for BenchmarkIdimpl UnwindSafe for BenchmarkIdBlanket Implementations
Mutably borrows from an owned value. Read more