-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Aggregate latency metrics for vm exits handling IO #4346
Conversation
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #4346 +/- ##
==========================================
+ Coverage 81.55% 81.57% +0.02%
==========================================
Files 240 240
Lines 29370 29409 +39
==========================================
+ Hits 23952 23990 +38
- Misses 5418 5419 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
49d22ef
to
6aeb5f9
Compare
96a2ae1
to
c57e5a9
Compare
1509b2c
to
74d2f98
Compare
Firecracker till now had a "group_metrics:key_metrics:value" pair and with new metrics for kvm exits this relation changes to "group_metrics: key_metrics:sub_key_metrics:value". Update the flush_fc_metrics_to_cw() to be able to parse this and make it future proof to support further sub_key_metrics levels. Signed-off-by: Sudan Landge <sudanl@amazon.com>
2efa813
to
2ef448a
Compare
0535e6a
to
a53bd1c
Compare
Add a new struct to record aggregate (min/max/sum) of time difference as a metric. Use the Aggregate metrics structure to record aggregate of IO and MMIO vm exits. With this change Firecracker now emits new metrics corresponding to min/max/sum for kvm exits handling IO. Signed-off-by: Sudan Landge <sudanl@amazon.com>
While running AB perf tests with new kvm_metrics enabled a new sock intermittent ci issues was found and ping_latency showed a regression. vsock iperf test fails intermittently with error: `/tmp/iperf3-vsock: Text file busy` ping_latency regression was not consistent and fixed on retry. Since the only variable here is collecting metrics adjusting the point of collection for final metrics for performance tests fixes both the issues. Signed-off-by: Sudan Landge <sudanl@amazon.com>
Update CHANGELOG to publish that Firecracker now emits new metrics. Also, document using a pseudo code how to extract metrics units from Firecracker metrics names. Signed-off-by: Sudan Landge <sudanl@amazon.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, Main question is why we do this only for x86?
Changes
difference as a metric.
Use the Aggregate metrics structure to record aggregate of
IO and MMIO vm exits.
with new metrics for kvm exits this relation changes to "group_metrics:
key_metrics:sub_key_metrics:value".
Update the flush_fc_metrics_to_cw() to be able to parse this and make
it future proof to support further sub_key_metrics levels.
Reason
License Acceptance
By submitting this pull request, I confirm that my contribution is made under
the terms of the Apache 2.0 license. For more information on following
Developer Certificate of Origin and signing off your commits, please check
CONTRIBUTING.md
.PR Checklist
- [ ] If a specific issue led to this PR, this PR closes the issue.- [ ] Any required documentation changes (code and docs) are included in this PR.- [ ] API changes follow the Runbook for Firecracker API changes.- [ ] User-facing changes are mentioned inCHANGELOG.md
.- [ ] NewTODO
s link to an issue.rust-vmm
.