feat(qrm): introduce resource package core foundation#1152
Open
luomingmeng wants to merge 10 commits into
Open
feat(qrm): introduce resource package core foundation#1152luomingmeng wants to merge 10 commits into
luomingmeng wants to merge 10 commits into
Conversation
fe9d2c4 to
b635f7a
Compare
xu282934741
approved these changes
May 25, 2026
xu282934741
approved these changes
May 25, 2026
…pool to boolean Update the resource package conversion logic to represent pinned cpuset as a boolean flag instead of a pool name Modify test cases to reflect the new pinned cpuset representation
- Fix race condition in Start() by properly handling started flag and stop channel - Replace sleep-based test synchronization with channel signaling - Ensure cpuPressureEviction only runs when policy is started
…e PinnedCPUSetInfo - Remove PinnedCPUSetInfo and related fields from QoSRegion interfaces - Add GetResourcePackageName method to QoSRegion interface - Introduce ResourcePackageConfig type for storing pinned cpuset info - Update CPU server to handle resource package config from advisor requests - Refactor region assembly to use resource package config from metacache - Simplify region creation by removing pinnedCPUSetInfo parameter - Add comprehensive tests for resource package config handling
Move zone attribute names used in topology adapter to a centralized consts package to maintain consistency between CNR producers and consumers. Update all references to use the new constants from pkg/consts.
…n pools split the pool allocation logic into separate functions for pinned and common pools add comprehensive tests for various allocation scenarios remove redundant pinned CPU set parameter from generatePoolsAndIsolation
…UMA-aware allocation - Add resource-package-name handling in region creation and metrics. - Modify CPU allocation in policy_advisor_handler to consider both the resource-package pinned CPUs and any already-pinned cpusets, ensuring proper isolation in NUMA-aware mode. - Simplify GetResourcePackageName to use annotations directly (drop the redundant unwrap step).
… package Consider resource package when setting origin owner pool name for numa binding containers. This ensures proper pool name wrapping when a resource package is specified and valid.
…utes add attribute selector to filter resource packages for IRQ forbidden CPUs add helper function to convert CNR attributes to string map add utility function to aggregate pinned CPU sets from matching resource packages update IRQ forbidden core logic to include resource package pinned CPUs add tests for new functionality
…ckageState - Add `attributes` map to ResourcePackageItemConfig proto message and regenerate cpu.pb.go. - Replace direct CPUSet storage with ResourcePackageState struct on every consumer (state, util, irq tuner, sysadvisor metacache, advisor, assembler, cpu_server, types) so attribute metadata is preserved end-to-end. - Add nil-checks where state may be absent and update IRQ-forbidden cores calculation accordingly. - Update unit tests to the new structure.
b635f7a to
5d48a06
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What type of PR is this?
Features
What this PR does / why we need it:
Which issue(s) this PR fixes:
Special notes for your reviewer: