More improvements

This commit is contained in:
David Peter committed 2026-10-06 15:19:54 +02:00
1 parent a947ba1d06
commit 75d16c2239
3 files changed
+18 -18

No files matched your search

+1 -1
View File
@@ -244,7 +244,7 @@ You can use the `--export-markdown <file>` option to create tables like the foll
| Command | Mean Wall Time [s] | Change | Factor |
|:---|---:|---:|:---|
| `find . -iregex '.*[0-9]\.jpg$'` | 2.275 ± 0.046 | | |
| `find . -iname '*[0-9].jpg'` | 1.427 ± 0.026 | -37.3% | |
| `find . -iname '*[0-9].jpg'` | 1.427 ± 0.026 | -37.3% | (1.6x faster) |
| `fd -HI '.*[0-9]\.jpg$'` | 0.232 ± 0.002 | -89.8% | (9.8x faster) |
#### JSON
+12 -12
View File
@@ -349,7 +349,7 @@ impl Stats {
pub fn format_factor_from(&self, reference: &Self, metric: Metric) -> String {
if reference.mean > 0.0
&& (self.mean >= 2.0 * reference.mean || self.mean <= reference.mean / 2.0)
&& (self.mean >= 1.3 * reference.mean || self.mean <= 0.7 * reference.mean)
{
let decrease = self.mean < reference.mean;
let factor = if decrease {
@@ -384,20 +384,20 @@ mod tests {
fn large_changes_include_factors() {
let reference = Stats {
count: 1,
mean: 12.0,
mean: 100.0,
stddev: None,
median: 12.0,
min: 12.0,
max: 12.0,
median: 100.0,
min: 100.0,
max: 100.0,
};
for (mean, metric, expected) in [
(24.0, Metric::TimeWallClock, "+100.0% (2.0x slower)"),
(6.0, Metric::TimeCpu, "-50.0% (2.0x faster)"),
(1.2, Metric::Instructions, "-90.0% (10.0x less)"),
(120.0, Metric::MemoryPeakResident, "+900.0% (10.0x more)"),
(23.9, Metric::TimeWallClock, "+99.2%"),
(6.1, Metric::Instructions, "-49.2%"),
(12.0, Metric::Instructions, "0.0%"),
(130.0, Metric::TimeWallClock, "+30.0% (1.3x slower)"),
(70.0, Metric::TimeCpu, "-30.0% (1.4x faster)"),
(10.0, Metric::Instructions, "-90.0% (10.0x less)"),
(1000.0, Metric::MemoryPeakResident, "+900.0% (10.0x more)"),
(129.99, Metric::TimeWallClock, "+30.0%"),
(70.01, Metric::Instructions, "-30.0%"),
(100.0, Metric::Instructions, "0.0%"),
(0.0, Metric::Instructions, "-100.0% (∞x less)"),
] {
let stats = Stats { mean, ..reference };
+5 -5
View File
@@ -783,7 +783,7 @@ fn shows_benchmark_comparison_relative_to_reference() {
Benchmark 3: sleep 3.0 (10 runs)
mean ± σ min … max
Wall Time 3.000 s ± 0.000 s 3.000 s … 3.000 s +50.0%
Wall Time 3.000 s ± 0.000 s 3.000 s … 3.000 s +50.0% (1.5x slower)
Memory 0.0 B ± 0.0 B 0.0 B … 0.0 B N/A
@@ -824,7 +824,7 @@ fn comparison_and_markup_identify_first_command_as_reference() {
| `baseline` | 2.000 | | |
| `sleep 1` | 1.000 | -50.0% | (2.0x faster) |
| `sleep 2` | 2.000 | 0.0% | |
| `sleep 3` | 3.000 | +50.0% | |
| `sleep 3` | 3.000 | +50.0% | (1.5x slower) |
");
// Equal zero times have no meaningful relative factor.
@@ -873,7 +873,7 @@ fn shows_name_of_first_command() {
Benchmark 3: sleep 3.0 (10 runs)
mean ± σ min … max
Wall Time 3.000 s ± 0.000 s 3.000 s … 3.000 s +50.0%
Wall Time 3.000 s ± 0.000 s 3.000 s … 3.000 s +50.0% (1.5x slower)
Memory 0.0 B ± 0.0 B 0.0 B … 0.0 B N/A
@@ -909,12 +909,12 @@ fn performs_all_benchmarks_in_parameter_scan() {
Benchmark 3: sleep 40 (10 runs)
mean ± σ min … max
Wall Time 40.000 s ± 0.000 s 40.000 s … 40.000 s +33.3%
Wall Time 40.000 s ± 0.000 s 40.000 s … 40.000 s +33.3% (1.3x slower)
Memory 0.0 B ± 0.0 B 0.0 B … 0.0 B N/A
Benchmark 4: sleep 45 (10 runs)
mean ± σ min … max
Wall Time 45.000 s ± 0.000 s 45.000 s … 45.000 s +50.0%
Wall Time 45.000 s ± 0.000 s 45.000 s … 45.000 s +50.0% (1.5x slower)
Memory 0.0 B ± 0.0 B 0.0 B … 0.0 B N/A