David Peter
4f893b505e
Simplifications
2026-10-06 13:34:03 +02:00
David Peter
55dfe6722c
Better defaults
2026-10-06 12:53:42 +02:00
David Peter
908b33cc1d
Add support for showing other metrics in the terminal
2026-10-06 12:53:42 +02:00
David Peter
bc3a3f0524
Support hardware counters (instructions, cache misses, ...) ( #983 )
...
* Add hardware counters to JSON exports
* Clarify Linux hardware counter setup
2026-10-06 08:59:40 +02:00
David Peter
579b762790
Consistent display name
2026-10-05 21:02:52 +02:00
David Peter
eedec07812
Cover JSON exports with integration snapshots
2026-10-05 20:42:13 +02:00
David Peter
cb021e64b9
Mark reference commands in JSON exports
2026-10-05 20:27:13 +02:00
David Peter
95118147af
Rename peak memory metric to memory_peak_resident
2026-10-05 20:23:55 +02:00
David Peter
0d86e78ede
Refine JSON schema and command metadata
2026-10-05 18:11:10 +02:00
David Peter
c5d3a81fc5
Include raw commands in JSON exports when names differ
2026-10-05 17:02:34 +02:00
David Peter
1b3ec922fa
Export metric summaries and adapt analysis scripts
2026-10-05 16:59:35 +02:00
David Peter
6d0ae4f87c
Add benchmark session metadata to JSON exports
2026-10-05 16:27:35 +02:00
David Peter
d60eba407d
Version the JSON export schema
2026-10-05 16:10:08 +02:00
David Peter
02b0db5c96
Adapt tests to rebased reference handling
2026-10-05 16:03:23 +02:00
David Peter
4cd0e24586
Document JSON measurements and omit unavailable memory metrics
2026-10-05 16:01:30 +02:00
David Peter
cf381994d1
Resolve overlap with merged measurement refactors and current master
2026-10-05 16:01:30 +02:00
David Peter
9c2ee56cba
Cleanup
2026-10-05 16:00:48 +02:00
David Peter
f342e1f5de
Make memory units available
2026-10-05 16:00:35 +02:00
David Peter
534d5683ab
Yet another API iteration
2026-10-05 16:00:21 +02:00
David Peter
6b4e9eb5c2
Represent memory usage as f64 as well
2026-10-05 16:00:08 +02:00
David Peter
27ad0fb65e
Do not use value_in for CSV export
2026-10-05 16:00:08 +02:00
David Peter
ebf127338c
Further simplification of the API
2026-10-05 16:00:08 +02:00
David Peter
4badeb6312
Quantity API cleanup
2026-10-05 15:59:56 +02:00
David Peter
3494c8abe6
Remove alternative constructors
2026-10-05 15:59:43 +02:00
David Peter
f57c4e6d78
Support minutes and hours
2026-10-05 15:59:43 +02:00
David Peter
418e43a652
Implement TimeUnit functions via uom
2026-10-05 15:59:28 +02:00
David Peter
be66a6668f
Move quantity module
2026-10-05 15:59:11 +02:00
David Peter
641451aea6
Use uom
2026-10-05 15:59:10 +02:00
David Peter
42e75c1737
Unify TimingResult/TimerResult/Measurement
2026-10-05 15:58:56 +02:00
David Peter
f9aa299c0f
Switch to unit-safe quantities
2026-10-05 15:58:56 +02:00
David Peter
d4c6b53e40
Runs => Measurements
2026-10-05 15:57:26 +02:00
David Peter
8ba632c954
More simplifications
2026-10-05 15:57:12 +02:00
David Peter
f7e6d7286f
Simplify run creation
2026-10-05 15:56:53 +02:00
David Peter
c20fcc0bda
Real => wall clock
2026-10-05 15:56:53 +02:00
David Peter
af4422d212
Remove command_with_unused_parameters field
2026-10-05 15:56:52 +02:00
David Peter
ae0035ad56
Use wait4 instead of getrusage
2026-10-05 15:56:37 +02:00
David Peter
50232feb22
Move user and system time
2026-10-05 15:56:36 +02:00
David Peter
14d773998a
Introduce new BenchmarkRun struct
2026-10-05 15:56:36 +02:00
David Peter
463a889638
Simplify parameterized reference handling
2026-10-05 15:07:46 +02:00
David Peter
f7429e2fb2
Use parameterized benchmarks as references
2026-10-05 14:59:18 +02:00
David Peter
16f53eb8d6
Format CSV measurements through FormatQuantity
2026-10-05 13:41:43 +02:00
David Peter
4aa36c8051
Merge pull request #970 from sharkdp/codex/truncate-export-rewrites
...
Truncate export files before rewriting results
2026-10-05 12:57:52 +02:00
David Peter
8cf4e010e9
Truncate export files before rewriting results
2026-10-05 12:48:52 +02:00
David Peter
b23372c5e2
Store typed Measurements in BenchmarkResult
2026-10-05 12:46:10 +02:00
David Peter
8c40de45f8
Store parameter usage metadata in benchmark results
2026-10-05 12:35:24 +02:00
Eric Soler
a760e75f2f
Preserve backticks in Markdown command names
2026-10-05 12:01:42 +02:00
David Peter
6f557e0494
Extract typed quantity formatting
2026-10-05 11:46:49 +02:00
David Peter
b4fb20f85b
Format CSV times with six decimal places
2026-10-05 11:16:20 +02:00
David Peter
aa14b8c0d9
Group units, formatting, and statistics under quantity
2026-10-05 10:46:51 +02:00
c0b3834277
Handle broken pipe errors on stdout gracefully ( #932 )
...
Replace `println!` calls on the results paths with `writeln!` on
`io::stdout()` and propagate the `io::Error` to `main`, where
`ErrorKind::BrokenPipe` is turned into a quiet `exit(0)`. This matches
the conventional behavior of command-line tools when their output pipe
is closed early (e.g. `hyperfine ... | head -n 0`), and fixes panics in
all run-output paths: the per-benchmark header and results, the speed
comparison summary, and `-`-style exports to stdout. The warnings and
"Note" outputs to stderr are converted the same way.
---------
Co-authored-by: Mathjk <Mathjk@users.noreply.github.com >
Co-authored-by: David Peter <mail@david-peter.de >
2026-10-02 11:18:56 +02:00