Skip to content

Integrate AUTO XPU service feature from external branch#1

Draft
peterchen-intel with Copilot wants to merge 5 commits into
masterfrom
copilot/pull-auto-xpu-service-branch
Draft

Integrate AUTO XPU service feature from external branch#1
peterchen-intel with Copilot wants to merge 5 commits into
masterfrom
copilot/pull-auto-xpu-service-branch

Conversation

Copilot AI commented Mar 2, 2026

Copy link
Copy Markdown

Details:

Integrated AUTO XPU service changes from https://github.com/hbhallaneo/openvino/tree/AUTO-xpu-service (commit b417fa2).

Core functionality:

  • Device utilization monitoring via platform-specific APIs (Windows: XPU Info Service pipe, Linux: placeholder stubs)
  • New ov::intel_auto::devices_utilization_threshold property maps device names to utilization thresholds
  • AUTO plugin device selection now factors current load, selecting devices below configured thresholds

Implementation:

  • Device monitors: src/common/util/src/monitors/{win,lin}/ for CPU and XPU utilization queries
  • AUTO plugin: Enhanced select_device() to filter candidates by utilization before priority-based selection
  • Python bindings: Support for threshold property in pyopenvino
  • Tests: New SelectDeviceWithUtilizationTest suite for utilization-based selection logic

Example usage:

ov::Core core;
auto model = core.read_model("model.xml");
std::map<std::string, unsigned> thresholds = {{"CPU", 78}, {"GPU", 55}};
auto compiled = core.compile_model(
    model, "AUTO", 
    {ov::intel_auto::devices_utilization_threshold(thresholds)}
);

Conflict resolution:

  • plugin.hpp: Preserved new import_model(ov::Tensor) overloads alongside get_device_utilization()
  • select_device_test.cpp: Merged new utilization test suite with existing tests
  • utils_tests.cpp: Kept both mul_overflow tests and new device_monitor test

Code cleanup (post-integration):

  • Removed debug std::cout statements from device monitor implementations
  • Removed unreachable returns after throw statements
  • Fixed test assertion logic (incorrect boolean condition)
  • Removed temporary diagnostic LOG_DEBUG statements

Tickets:

  • N/A

AI Assistance:

  • AI assistance used: yes
  • Cherry-picked external commit, resolved 3-way merge conflicts in plugin.hpp/select_device_test.cpp/utils_tests.cpp, applied automated code review feedback to remove debug artifacts and fix test logic. Manual validation: verified git history integrity, reviewed conflict resolution strategy, confirmed all merge markers removed.

🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.

hbhallaneo and others added 4 commits March 2, 2026 07:52
Co-authored-by: peterchen-intel <19401820+peterchen-intel@users.noreply.github.com>
Co-authored-by: peterchen-intel <19401820+peterchen-intel@users.noreply.github.com>
Co-authored-by: peterchen-intel <19401820+peterchen-intel@users.noreply.github.com>
Copilot AI changed the title [WIP] Pull AUTO-xpu-service branch into main repository Integrate AUTO XPU service feature from external branch Mar 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants