-
Couldn't load subscription status.
- Fork 157
vmm_tests: memory validation with release baseline #2198
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
vmm_tests: memory validation with release baseline #2198
Conversation
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.
Pull Request Overview
This PR separates memory validation tests by build type (debug vs release) to enable more accurate baseline comparisons. The changes allow memory usage validation tests to compare against build-specific baseline values rather than using a single set of baseline values for both debug and release builds.
- Added build version parameter to memory validation baseline comparison logic
- Split existing memory validation tests into separate debug and release variants using conditional compilation
- Added release-specific baseline memory usage values to the test data configuration
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| vmm_tests/vmm_tests/tests/tests/multiarch/memstat.rs | Added build_version parameter to compare_to_baseline method and updated all baseline JSON lookups |
| vmm_tests/vmm_tests/tests/tests/multiarch.rs | Split memory validation tests into debug/release variants with conditional compilation and renamed existing functions |
| vmm_tests/vmm_tests/test_data/memstat_baseline.json | Added release baseline values alongside existing debug values in nested JSON structure |
|
Thanks for this, and I see where you're going here. Adding memory usage tests with release config is important and valuable! I think it would make more sense to have your test explicitly depend upon the release-built variant of openhcl. I suspect there are a few things we'd need to think through to make that work, and maybe this is why you chose to implement the tests this way :)
Interested in what you, and also what other reviewers, think. |
|
I initially suggested he do things this way for exactly those reasons Matt haha. Since we only produce a release build in the CI and optional release gates, this test can only really run there. This is somewhat of an ongoing experiment to gather data and refine what we're looking for here. If we see it failing a lot in CI we'll adjust. |
I must be on the right track if you and I are sharing thoughts :) I only have a few nits then, @dpaliulis-msft :
|
|
For your point 2, i commonly see "flavor" as well. |
|
For 1 I'm not sure a macro is really that needed yet, but maybe it's worth moving the tests themselves into memstat.rs just to keep things contained. |
… are only in debug tests
Description:
This PR adjusts the memory validation tests to compare test results on the release build against their own set of baseline memory usage values.
Changes: