Commit Graph

541 Commits

Author SHA1 Message Date
Benjamin Rosemann
b04a9ec6c4 Add parameters to plotting scripts
Add `imgname` parameter to be able to save a plot to a file instead of
showing it. Use-case: platforms without GUI like docker containers.

Add `labels` parameter to histogram plot. Use-case: replacing long
commands with human friendly labels.
2021-02-16 08:21:45 +01:00
dependabot-preview[bot]
1f7284dae3 Bump libc from 0.2.84 to 0.2.85
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.84 to 0.2.85.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.84...0.2.85)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-14 10:33:15 +01:00
dependabot-preview[bot]
d18bdd98d7 Bump libc from 0.2.81 to 0.2.84
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.81 to 0.2.84.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.81...0.2.84)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07 22:28:46 +01:00
dependabot-preview[bot]
89700a244c Bump rand from 0.8.0 to 0.8.3
Bumps [rand](https://github.com/rust-random/rand) from 0.8.0 to 0.8.3.
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/rand/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07 22:28:38 +01:00
dependabot-preview[bot]
5f949b17ad Bump serde from 1.0.118 to 1.0.123
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.118 to 1.0.123.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.118...v1.0.123)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07 22:28:21 +01:00
dependabot-preview[bot]
77fcb6a6b3 Bump rust_decimal from 1.9.0 to 1.10.1
Bumps [rust_decimal](https://github.com/paupino/rust-decimal) from 1.9.0 to 1.10.1.
- [Release notes](https://github.com/paupino/rust-decimal/releases)
- [Commits](https://github.com/paupino/rust-decimal/compare/1.9.0...1.10.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-07 22:28:14 +01:00
dependabot-preview[bot]
80b6bdb90b Bump rand from 0.7.3 to 0.8.0
Bumps [rand](https://github.com/rust-random/rand) from 0.7.3 to 0.8.0.
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/rand/compare/0.7.3...0.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 19:40:37 +01:00
dependabot-preview[bot]
0ab24d49b3 Bump serde_json from 1.0.59 to 1.0.61
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.59 to 1.0.61.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.59...v1.0.61)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:06:55 +01:00
dependabot-preview[bot]
cf0ce696a7 Bump rust_decimal from 1.8.1 to 1.9.0
Bumps [rust_decimal](https://github.com/paupino/rust-decimal) from 1.8.1 to 1.9.0.
- [Release notes](https://github.com/paupino/rust-decimal/releases)
- [Commits](https://github.com/paupino/rust-decimal/compare/1.8.1...1.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:06:38 +01:00
dependabot-preview[bot]
2e4bce63d3 Bump libc from 0.2.80 to 0.2.81
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.80 to 0.2.81.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.80...0.2.81)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:06:30 +01:00
dependabot-preview[bot]
53bc46f6b6 Bump serde from 1.0.117 to 1.0.118
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.117 to 1.0.118.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.117...v1.0.118)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-01-01 08:05:34 +01:00
dependabot-preview[bot]
a4d9c5eff7 Bump csv from 1.1.3 to 1.1.5
Bumps [csv](https://github.com/BurntSushi/rust-csv) from 1.1.3 to 1.1.5.
- [Release notes](https://github.com/BurntSushi/rust-csv/releases)
- [Commits](https://github.com/BurntSushi/rust-csv/compare/1.1.3...1.1.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-01 16:04:34 +01:00
David Peter
907d38aa18
Only show title if it is set 2020-11-03 13:46:16 +01:00
dependabot-preview[bot]
3553812436 Bump approx from 0.3.2 to 0.4.0
Bumps [approx](https://github.com/brendanzab/approx) from 0.3.2 to 0.4.0.
- [Release notes](https://github.com/brendanzab/approx/releases)
- [Commits](https://github.com/brendanzab/approx/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 09:53:01 +01:00
dependabot-preview[bot]
591cce786a Bump cfg-if from 0.1.10 to 1.0.0
Bumps [cfg-if](https://github.com/alexcrichton/cfg-if) from 0.1.10 to 1.0.0.
- [Release notes](https://github.com/alexcrichton/cfg-if/releases)
- [Commits](https://github.com/alexcrichton/cfg-if/compare/0.1.10...1.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 07:24:36 +01:00
dependabot-preview[bot]
1d5626207a Bump libc from 0.2.79 to 0.2.80
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.79 to 0.2.80.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.79...0.2.80)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-11-01 07:22:51 +01:00
Thiago Arrais
8704e76d36 Incorporate suggestions from review 2020-10-26 20:38:45 +01:00
Thiago Arrais
e1fea57182 Adds tip for benchmarking aliases and functions 2020-10-26 20:38:45 +01:00
Julian Kaindl
c05d7f9480
Add command exit code to output if it fails 2020-10-25 19:04:17 +01:00
Martin Junghanns
990ed45c3a
Create export file before first benchmark (#340) 2020-10-18 09:15:44 +02:00
Martin Junghanns
2547342644 Update changelog 2020-10-18 09:13:56 +02:00
Martin Junghanns
d7e6fa6dfb Export intermediate results after each benchmark command 2020-10-18 09:13:56 +02:00
sharkdp
4fa16852cf Update help text 2020-10-17 00:07:06 +02:00
sharkdp
e947a62ce2 Update dependencies 2020-10-16 23:58:52 +02:00
sharkdp
118baa90c9 Bump version to 1.11.0 2020-10-16 23:57:59 +02:00
sharkdp
46ad9bf39a Show error if numeric arguments can not be parsed
Shows an error message if the argument to options like '--warmup <N>'
can not be parsed:

    > hyperfine --warmup xxx "sleep 1"
    Error: Could not read numeric argument to '--warmup': invalid digit found in string

closes #337
2020-10-16 23:55:14 +02:00
sharkdp
f67763fd34 Use skip_cleanup to prevent cleaning 2020-10-16 23:13:54 +02:00
David Peter
699d8ca329
Add ARM binaries
closes #331
2020-10-16 13:17:30 +02:00
sharkdp
b2a246c195 Fix nan/inf output for very fast commands
closes #319
2020-10-16 11:00:49 +02:00
sharkdp
314e4e3387 Bump min. required Rust version to 1.43 2020-10-15 23:05:04 +02:00
sharkdp
1477c68658 Add MAD=0 unit tests for outlier detection, see #329 2020-10-15 22:45:36 +02:00
Stéphane Campinas
25f8129212 return an error if there are more name options than commands 2020-10-15 22:42:44 +02:00
Stéphane Campinas
71a47c0566 use --command-name for the long option 2020-10-15 22:42:44 +02:00
Stéphane Campinas
746e5fe687 update man page with the name CLI option 2020-10-15 22:42:44 +02:00
Stéphane Campinas
83e5d3c7fb updated changelog 2020-10-15 22:42:44 +02:00
Stéphane Campinas
d548643561 add comment to HyperfineOptions#names field 2020-10-15 22:42:44 +02:00
Stéphane Campinas
0f0a109ca0 add CLI option to identify a command with a custom name
CLI option `--name` can be used to define the name to identify a
command. If not passed, then the command itself is used. Commands
and names are paired in the same order: The first command executed gets
the first name passed as option.

Close #326
2020-10-15 22:42:44 +02:00
sharkdp
674b5422ab Fix outlier detection for "fast outliers"
closes #329
2020-10-15 22:37:54 +02:00
sharkdp
daf5ced498 Keep output colorized for 'full' and 'color' style
fixes #332
2020-10-15 21:54:57 +02:00
William Chargin
89737785f8 [update patch]
wchargin-branch: param-list-matrix
wchargin-source: f866f0df2eae5f4bac2022c0db48edb0e8e6361e
2020-10-13 14:00:46 +02:00
William Chargin
a8a75a3b76 [update patch]
wchargin-branch: param-list-matrix
wchargin-source: 188f18839ad4bfce20c2c031cd6b00bcd94b67ad
2020-10-13 14:00:46 +02:00
William Chargin
e75747a0da [update patch]
wchargin-branch: param-list-matrix
wchargin-source: 15d5c2076ea44768e8c857dd467c327e5bfe7189
2020-10-13 14:00:46 +02:00
William Chargin
f6464a2943 Support matrices of independent parameter lists
This patch permits the `-L`/`--parameter-list` argument to appear
multiple times. Each additional parameter increases the dimensionality
of the parameter matrix. One benchmark will be run for each combination
of parameters (i.e., the benchmark space is the Cartesian product of the
parameter spaces).

For now, `--parameter-list` and `--parameter-scan` are still mutually
exclusive. If desired, a follow-up change could similarly permit
multiple occurrences of `--parameter-scan` and also permit use of both
listed and scanned parameters together. (After all, `--parameter-scan`
can be thought of as syntactic sugar for a parameter list.)

This implementation is a little profligate with memory usage for
`BenchmarkResult`s: each result contains a separate copy of all
parameter names (as `String`s). This could be done away with by
threading lifetimes through the `BenchmarkResult`s, or by ref-counting
the names.

Because `BenchmarkResult`s now have maps with arbitrary key sets, we can
no longer use `serde` to serialize them to CSV. But a CSV writer is easy
to write by hand, so we just do that.

Fixes #253.

Test Plan:
Some unit tests included. As an integration test, try:

```
cargo run --release -- --runs 10 \
    -L foo foo1,foo2 -L bar bar9,bar8 \
    'echo {foo} {bar}' \
    'printf "%s\n" {foo} {bar}' \
    --export-csv /tmp/out
```

with all the export formats.

wchargin-branch: param-list-matrix
wchargin-source: 11051ab222c9de0fbc6ac6a080fbca48e05996c2
2020-10-13 14:00:46 +02:00
muxator
5a80a23bdc scripts: modify shebang to use "/usr/bin/env python"
Before this patch, executing directly one of these scripts, for example
`./plot_hystogram.py` in a unix-like environment meant that the default
system-level python would be used, regardless of an eventual activated
virtualenv.

This was due to the "#!/usr/bin/python" shebang.
Changing it to "/usr/bin/env python" is a fairly standard practice, keeps intact
the compatiblity with the system level python, and allows a user to run in a
virtualenv if he wants.
2020-10-13 12:49:36 +02:00
dependabot-preview[bot]
7cdd1f259f Bump rust_decimal from 1.7.0 to 1.8.1
Bumps [rust_decimal](https://github.com/paupino/rust-decimal) from 1.7.0 to 1.8.1.
- [Release notes](https://github.com/paupino/rust-decimal/releases)
- [Commits](https://github.com/paupino/rust-decimal/commits/1.8.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 23:03:29 +02:00
dependabot-preview[bot]
585c69af44 Bump libc from 0.2.76 to 0.2.77
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.76 to 0.2.77.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.76...0.2.77)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 23:03:19 +02:00
dependabot-preview[bot]
9d25c0e286 Bump serde_json from 1.0.57 to 1.0.58
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.57 to 1.0.58.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.57...v1.0.58)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 23:03:12 +02:00
dependabot-preview[bot]
c95933194b Bump serde from 1.0.115 to 1.0.116
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.115 to 1.0.116.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.115...v1.0.116)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-10-01 23:03:00 +02:00
dependabot-preview[bot]
e6c1a64d69 Bump clap from 2.33.1 to 2.33.3
Bumps [clap](https://github.com/clap-rs/clap) from 2.33.1 to 2.33.3.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/v2.33.3/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v2.33.1...v2.33.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-01 23:45:55 +02:00
dependabot-preview[bot]
0e198365fa Bump libc from 0.2.74 to 0.2.76
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.74 to 0.2.76.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.74...0.2.76)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-09-01 23:45:36 +02:00