Rob Bradford
3c0817a1b7
performance-metrics: Add boot time metrics using multiple vCPUs
...
Signed-off-by: Rob Bradford <robert.bradford@intel.com>
2022-05-10 13:10:11 +01: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
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
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
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
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
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
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
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
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