Skip to content

Refactor AutoRound tests and CI scripts for CPU, HPU, and XPU#2417

Merged
chensuyue merged 21 commits intomasterfrom
suyue/ext-ci
Mar 10, 2026
Merged

Refactor AutoRound tests and CI scripts for CPU, HPU, and XPU#2417
chensuyue merged 21 commits intomasterfrom
suyue/ext-ci

Conversation

@chensuyue
Copy link
Contributor

Type of Change

Validation

Description

This pull request introduces significant updates to the CI pipeline, especially for PyTorch unit testing across different hardware backends (CPU, HPU, and XPU). The changes add support for XPU-based testing, refactor HPU test scripts and configurations, and simplify coverage collection. There are also updates to Dockerfiles and requirements to better support new environments.

Key changes include:

1. XPU (Intel GPU) Unit Test Support

  • Added a new pipeline file .azure-pipelines/ut-3x-pt-xpu.yml to enable unit testing for PyTorch with XPU backend, including all necessary triggers, variables, and job definitions.
  • Introduced .azure-pipelines/scripts/ut/run_3x_pt_xpu.sh for running XPU-specific tests and collecting coverage.
  • Added .azure-pipelines/docker/Dockerfile_xpu.devel to provide a development Docker image with all required XPU and Intel GPU libraries.

2. HPU (Habana) Test Pipeline Refactor

  • Renamed all "fp8" references to "hpu" in pipeline, script, and coverage files for clarity and future extensibility:
    • .azure-pipelines/ut-3x-pt-fp8.yml.azure-pipelines/ut-3x-pt-hpu.yml, with all internal references updated. [1] [2] [3] [4] [5]
    • .azure-pipelines/scripts/ut/run_3x_pt_fp8.sh.azure-pipelines/scripts/ut/run_3x_pt_hpu.sh, with appropriate changes to coverage files and test case names.

3. Pipeline and Coverage Collection Simplification

  • Removed the legacy .azure-pipelines/scripts/ut/collect_log.sh and .azure-pipelines/scripts/ut/coverage.file to streamline and modernize coverage collection. [1] [2]
  • Updated the UT container name default in the template for clarity.
  • Removed the Docker workspace cleanup step from the docker template to avoid unnecessary file operations.

4. Test Script and Requirement Updates

  • Refactored test/torch/quantization/test_autoround.py to test/torch/quantization/test_autoround_cpu.py, removing HPU/XPU-specific logic for CPU-only testing. [1] [2]
  • Updated the installation logic in .azure-pipelines/scripts/install_nc.sh to handle XPU and HPU backends distinctly, including proper installation of PyTorch for XPU and related dependencies.

These changes collectively modernize the CI pipeline, enable robust hardware-specific testing, and simplify maintenance for future backend support.

Expected Behavior & Potential Risk

the expected behavior that triggered by this PR

How has this PR been tested?

how to reproduce the test (including hardware information)

Dependency Change?

any library dependency introduced or removed

chensuyue and others added 5 commits March 6, 2026 14:36
Signed-off-by: chensuyue <suyue.chen@intel.com>
…cated coverage scripts

Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
…sed imports and redundant code

Signed-off-by: chensuyue <suyue.chen@intel.com>
chensuyue and others added 15 commits March 6, 2026 16:47
Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
Signed-off-by: chensuyue <suyue.chen@intel.com>
@chensuyue chensuyue merged commit 6ebe01a into master Mar 10, 2026
22 of 24 checks passed
@chensuyue chensuyue deleted the suyue/ext-ci branch March 10, 2026 02:46
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.

2 participants