3 stable releases
1.0.2 | Aug 29, 2022 |
---|---|
1.0.0 | Jul 23, 2022 |
#383 in Profiling
24KB
220 lines
criterion-decimal-throughput
– KB/s, MB/s, GB/s in Criterion.rs outputs
Custom measurement format for Criterion.rs that displays throughput in decimal byte-multiples (KB/s, MB/s, GB/s) instead of binary (KiB/s, MiB/s, GiB/s).
Features
Under default Criterion.rs measurements, the output of a benchmark with throughput configured will look like this:
meaning '1.5050 * 2^(30)' which is fine, I guess, but I'm not good enough at on-the-fly calculations to see at a glance that this is, in fact, a mean of around 1.6 billion bytes. With this crate we get:
which is a much nicer '1.5787e9'. It is quite subjective to prefer one over the other, but Criterion.rs forces you into binary. If you share my preference, this crate allows you to get nicer numbers.
Usage
Simply use the provided decimal_byte_measurement
function for default configuration,
or set the DecimalByteMeasurement
type as measurement manually. See the example on docs.rs.
Installation
Add criterion-decimal-throughput
as your dev-dependency, either with cargo
:
cargo add --dev criterion-decimal-throughput
Alternatively, add it directly to the dev-dependencies
section of your Cargo.toml
:
[dev-dependencies]
criterion-decimal-throughput = "1.0.0"
Build & test
Simply use cargo
:
cargo build
cargo test
Contributing
See Contribution Guide.
Dependencies
~9–19MB
~261K SLoC