dependabot[bot]
3277c27e0d
build: bump serde_derive from 1.0.136 to 1.0.137
...
Bumps [serde_derive](https://github.com/serde-rs/serde ) from 1.0.136 to 1.0.137.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.136...v1.0.137 )
---
updated-dependencies:
- dependency-name: serde_derive
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 17:27:47 +00:00
dependabot[bot]
691d9b16db
build: bump serde from 1.0.136 to 1.0.137
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.136 to 1.0.137.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.136...v1.0.137 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 15:52:41 +00:00
dependabot[bot]
938b0bfcec
build: bump serde_json from 1.0.79 to 1.0.80
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.79 to 1.0.80.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.79...v1.0.80 )
---
updated-dependencies:
- dependency-name: serde_json
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 13:13:26 +00:00
dependabot[bot]
657660e5c2
build: bump clap from 3.1.13 to 3.1.14
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.13 to 3.1.14.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.13...v3.1.14 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 10:44:46 +00:00
dependabot[bot]
b60e6f7cb1
build: bump thiserror from 1.0.30 to 1.0.31
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.30 to 1.0.31.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.30...1.0.31 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-05-02 09:53:42 +00:00
dependabot[bot]
85a72efed7
build: bump clap from 3.1.12 to 3.1.13
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.12 to 3.1.13.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.12...v3.1.13 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-30 21:59:36 +00:00
dependabot[bot]
ec1679406e
build: bump clap from 3.1.10 to 3.1.12
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.10 to 3.1.12.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.10...v3.1.12 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-23 20:13:14 +01:00
dependabot[bot]
3952cc6629
build: bump clap from 3.1.9 to 3.1.10
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.9 to 3.1.10.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.9...v3.1.10 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-20 08:45:42 +00:00
dependabot[bot]
45d3db48cf
build: bump clap from 3.1.8 to 3.1.9
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.8 to 3.1.9.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.8...v3.1.9 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-15 23:33:32 +00:00
Wei Liu
65716f1376
build: fix performance-metrics build
...
It suffered from the same issue like the main program after switching to
Rust 2021 edition, but the issue was not caught by the CI.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-04-11 16:33:08 +01:00
Wei Liu
7d7bfb2034
build: migrate to Rust 2021 edition
...
Rust 2021 edition has a few improvements over the 2018 edition. Migrate
the project to 2021 edition by following recommended migration steps.
Luckily, the code itself doesn't require fixing.
Bump MSRV to 1.56 as it is required by the 2021 edition. Also fix the
clap build dependency to make Cloud Hypervisor build again.
Signed-off-by: Wei Liu <liuwe@microsoft.com>
2022-04-11 09:51:12 +01:00
dependabot[bot]
16c525b2c0
build: bump clap from 3.1.7 to 3.1.8
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.7 to 3.1.8.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.7...v3.1.8 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-02 00:04:16 +00:00
dependabot[bot]
a575fd70ec
build: bump clap from 3.1.6 to 3.1.7
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.6 to 3.1.7.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.6...v3.1.7 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-04-01 13:52:38 +00:00
Henry Wang
8dda052c7d
performance-metrics: disable net latency test on AArch64
...
As ethr is not stable on AArch64, disable it until we find other tool.
Signed-off-by: Jianyong Wu <jianyong.wu@arm.com>
Signed-off-by: Henry Wang <Henry.Wang@arm.com>
2022-03-23 18:25:48 +08:00
Jianyong Wu
1b494fb061
performance-metrics: enable fio test on AArch64
...
fio test depends on hot-add disk which needs uefi on AArch64, that
will lead to lots of performance issues. So, it's better to use
cold-plug disk.
Signed-off-by: Jianyong Wu <jianyong.wu@arm.com>
Signed-off-by: Henry Wang <Henry.Wang@arm.com>
2022-03-23 18:25:48 +08:00
Rob Bradford
c922bf23f6
performance-metrics: Use non-zero exit code on report file issues
...
This removes the need to wrap an error that is never used.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-14 16:53:49 +01:00
Rob Bradford
f99c09fab7
performance-metrics: Successful output should be on stdout not stderr
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-14 16:53:49 +01:00
Rob Bradford
a6d86b9496
performance-metrics: Use Write::write_all() for report
...
Write::write() is not guaranteed to write all the contents.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-14 16:53:49 +01:00
Rob Bradford
1004f870e1
performance-metrics: Refactor report file opening code
...
It should be closer to the use of the opened file.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-14 16:53:49 +01:00
Rob Bradford
d3be855b4b
performance-metrics: Exit binary with non-zero exit code on test failure
...
This ensures that partial reports are not generated.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-14 16:53:49 +01:00
Rob Bradford
0cbdbc8122
performance-metrics: Remove unnecessary prelude on --list-tests
...
The user knows they have requested the list of tests.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-14 16:53:49 +01:00
Rob Bradford
959be92189
performance-metrics: Fix typo in function name
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-14 16:53:49 +01:00
Rob Bradford
5934319953
performance-metrics: Remove obsolete TODO
...
We upload from the file written to disk.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-14 16:53:49 +01:00
dependabot[bot]
08f4375177
build: bump clap from 3.1.5 to 3.1.6
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.5 to 3.1.6.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.5...v3.1.6 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-03-08 01:52:09 +00:00
Rob Bradford
638c4a5781
performance-metrics: Use friendlier metric units
...
* Boot time in ms
* Network throughput in Gbps
* Block throughput in MiBps
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-03 11:39:55 -08:00
dependabot[bot]
40faac3d85
build: bump clap from 3.1.3 to 3.1.5
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.3 to 3.1.5.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.3...v3.1.5 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-03-02 23:50:35 +00:00
Rob Bradford
9592accb46
performance-metrics: Rename virtio_net_latency_ns->virtio_net_latency_us
...
The unit from ethr is microseconds.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-03-01 08:44:57 -08:00
dependabot[bot]
a25b49e80c
build: bump clap from 3.1.2 to 3.1.3
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.2...v3.1.3 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-03-01 09:10:36 +01:00
Rob Bradford
8458696094
performance-metrics: Rename git_committer_date to git_commit_date
...
The former implies a person rather than a thing.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 12:52:27 -08:00
Rob Bradford
4cc44f8cc7
performance-metrics: Trim whitespace from git command output
...
This removes trailing "\n"s from the strings saved in the JSON file.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 12:52:27 -08:00
Rob Bradford
846bd3a504
performance-metrics: Always derive core count from number of queues
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 12:52:27 -08:00
Rob Bradford
c11d430651
performance-metrics: Don't use multipler for vCPU count on block test
...
This looks like it was copy and pasted from the network test which
required 2 vCPUs per queue pair but has since been resolved.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 12:52:27 -08:00
Rob Bradford
9978aac402
performance-metrics: Consistently rename queue_num to num_queues
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 12:52:27 -08:00
Rob Bradford
082872423f
performance-metrics: Fix test label to remove duplicated "bps"
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 12:52:27 -08:00
Rob Bradford
acafda6739
performance-metrics: Consistently use "test_timeout" over "test_time"
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 16:28:27 +00:00
Rob Bradford
6db3d89837
performance-metrics: Remove "performance_" prefix from report results
...
We know that these are all performance results.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 16:28:27 +00:00
Rob Bradford
7c965538a6
performance-metrics: Use default queue sizes
...
Using the default queue sizes provides more realistic data about what
our users are testing. Extra metrics can be added later that also
modify the queue size but overloading the existing metrics is confusing.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 16:28:27 +00:00
Rob Bradford
f254f11b48
performance-metrics: Specify queue details for latency test
...
The latency is the most sensitive to queue size changes.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 16:28:27 +00:00
Rob Bradford
18d51d3bd1
performance-metrics: Be consistent with num_queues
...
Don't treat it as the number of pairs. Instead calculate the number of
pairs later when necessary.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 16:28:27 +00:00
Rob Bradford
70a3564a5e
performance-metrics: Suffix tests with unit
...
Also be clear that the block tests are in bytes per second (Bps) vs
network that is in bits per second (bps).
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 16:28:27 +00:00
Rob Bradford
128d0984a2
performance-metrics: Add missing copyright & SPDX header
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 16:28:27 +00:00
Rob Bradford
5e3d72671b
performance-metrics: Rename queue_num to num_queues
...
The former is ambiguous as it could be considered the ordinal (and is
used elsewhere in the codebase for that).
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 16:28:27 +00:00
Rob Bradford
60d805771b
performance-metrics: Rename test_time to test_timeout
...
This clarifies its usage vs the more ambiguous name.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 16:28:27 +00:00
Rob Bradford
3f4cbce900
performance-metrics: Set default number of iterations to 5
...
Many of the tests already amortize their results over a longer time
period/sample so it is not necessary to run 30 iterations.
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-02-25 16:28:27 +00:00
Bo Chen
ec7d4e727a
performance-metrics: Store the test list in a const array
...
Fixes : #3740
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-24 16:34:32 +01:00
dependabot[bot]
f2dfb44d5c
build: bump clap from 3.1.1 to 3.1.2
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.1...v3.1.2 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-24 01:10:05 +00:00
dependabot[bot]
a6cd2e10c1
build: bump clap from 3.1.0 to 3.1.1
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v3.1.0...v3.1.1 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-02-22 08:44:41 +00:00
Bo Chen
5bd305fa4f
performance-metrics: Log the git information from the working folder
...
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
d650c684f1
performance-metrics: Add option "--report-file"
...
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
458ae2c5be
performance-metrics: Add git committer date to the report
...
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
411b8b3a96
performance-metrics: Add command-line interface
...
It provides a CLI optoin to list and filter tests, e.g.:
`$ performance-metrics --test-filter boot_time --test-filter net_latency`
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
0862064fd2
performance-metrics: Generate a summary report in Json
...
The report contains the test results with commit hash and date.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
e41fe0acae
performance-metrics: Include 'max' and 'min' in the result
...
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
a7024074c0
performance-metrics: Add unit to the name/description of each test
...
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
a50c10bdf9
performance-metrics: Start VMs with the same IP in a unique IP range
...
Performance tests are expected to be executed sequentially, so we can
start VM guests with the same IP while putting them on a different
private network. The default constructor "Guest::new()" does not work
well, as we can easily create more than 256 VMs from repeating various
performance tests dozens times in a single run.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
b806935941
performance-metrics: Create test image for block I/O tests from main
...
In this way, we can avoid create/delete large temporary files during
every iteration of block I/O performance tests. Also, we can reuse the
'init/clean_tests()' interface in the future for other setup/cleanup.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
dc91866b56
performance-metrics: Add unit tests
...
This commit adds unit tests for parsing iperf3/ethr/boot_time/fio, e.g.:
`$ cargo test --package performance_metrics `
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
6b915de2e0
performance-metrics: Support test filter and json output
...
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00
Bo Chen
1a17564ee9
performance-metrics: Add a binary target for performance metrics
...
This commit creates a new binary target for generating performance metrics,
and also adds a set of performance tests for network throughput/latency,
block I/O performance, and boot time.
Signed-off-by: Bo Chen <chen.bo@intel.com>
2022-02-17 14:14:38 +00:00