Devtimer
The compact yet complete benchmarking suite for Rust. Period.
Rationale
I've seen many, many benchmarking tools. However, no one realizes that we need simplicity to simplify development and increase productivity.
devtimer
provides a very compact yet complete benchmarking suite for code written in Rust.
It makes use of the standard library only to provide benchmark operations.
You can either use it for benchmarking a single operation or you can use it for
running an operation multiple times and finding the min, max and average
execution times. Since this crate has no external dependencies, it is small,
fast and does exactly what it claims to. Happy benchmarking!
Need help migrating from an older version? See the changelog.
Usage
Add this to your cargo.toml
:
= "*"
Then add this line to your source file (i.e main.rs
or lib.rs
or where you need to use it):
use DevTime;
Example usage
Simple usage
Let's say there are two functions called very_long_operation()
and another_op()
that take a very long time to execute. Then we can time it's execution as shown below:
Example: Benchmarking
use run_benchmark;
Advanced Benchmarking
The run_benchmark()
function also provides a usize
that can be used, say if you want to get something from an array to do the test. For example:
run_benchmark;
Example: Tagged timers
use DevTime;
Timing functions available (names are self explanatory):
time_in_secs()
-> Returns the number of seconds the operation tooktime_in_millis()
-> Returns the number of milliseconds the operation tooktime_in_micros()
-> Returns the number of microseconds the operation tooktime_in_nanos()
-> Return the number of nanoseconds the operation took
See the full docs here.
License
This project is licensed under the Apache-2.0 License. Keep coding and benchmarking!