criterion-decimal-throughput

Crates.iocriterion-decimal-throughput
lib.rscriterion-decimal-throughput
version1.0.2
sourcesrc
created_at2022-07-23 22:23:25.291753
updated_at2022-08-29 13:09:20.665649
descriptionCriterion.rs measurement for decimal throughput (MB/s, GB/s, etc.)
homepage
repositoryhttps://github.com/V0ldek/criterion-decimal-throughput
max_upload_size
id631737
size44,225
V0ldek (V0ldek)

documentation

README

criterion-decimal-throughput – KB/s, MB/s, GB/s in Criterion.rs outputs

Rust docs.rs

Crates.io GitHub Release Date GitHub last commit

Crates.io

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:

Throughput in binary (GiB/s)

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:

Throughput in decimal (GB/s)

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.

Commit count: 16

cargo fmt