ci(winml): standalone MSIX packaging workflow, ROCm runtime 7.2.2609.47 (do not merge) - #579
Draft
zz002 wants to merge 11 commits into
Draft
ci(winml): standalone MSIX packaging workflow, ROCm runtime 7.2.2609.47 (do not merge)#579zz002 wants to merge 11 commits into
zz002 wants to merge 11 commits into
Conversation
|
Thanks for opening a PR! This project follows LLVM's incremental-development and AI-tool-use Before requesting review, please check that:
Reviewers are assigned through |
zz002
force-pushed
the
ci/winml-msix-build-v2
branch
from
July 28, 2026 10:09
a54b208 to
9e932bd
Compare
Standalone workflow that packages the AMD GPU EP into a signed Windows ML MSIX. It pulls the gpu-test-package artifact from the latest successful windows-build.yml run on main/release, merges a vendored ROCm 7.11 runtime, and runs the MSIX packaging tool (build-only; uploads the .msix). The ROCm runtime is vendored as a 74MB zip under .github/winml-msix/ (committed with --no-verify to bypass check-added-large-files); this branch is for CI validation and is not intended to merge. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
…actory download The CI runner cannot resolve mkmartifactory.amd.com, so the packaging tool (27.5MB, ships its own makeappx/signtool) is vendored under .github/winml-msix/ and extracted locally as the first build step (fail fast). Removes the TOOL_URL Artifactory dependency. Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Convert the vendored ROCm runtime and MSIX packaging tool zips to Git LFS (pointers) so they no longer trip check-added-large-files and don't bloat the repo blob store.
Without lfs:true the checkout leaves the LFS-tracked zips as pointer text, so Expand-Archive fails with 'End of Central Directory record could not be found'.
…lidate release zips Extend the MSIX workflow to emit three dated release zips from CI-downloadable artifacts + the built MSIX + vendored assets (no NAS, no 25GB models): winml-ep-validate (msix+cert+vendored oga_winml_app), gpu-test-package (artifact + vendored ROCm bin overlay), and hipep-wheels (hip-python-package wheels + ROCm deps resolved from onnxruntime_ep_hip wheel + example scripts).
pip download emits a cache-deserialization WARNING to stderr which, under ErrorActionPreference=Stop, terminated the step. Switch the step to Continue + PSNativeCommandUseErrorActionPreference=false and gate on \0.
Replace amdhip64_7.dll, amd_comgr0702.dll, hiprtc0702.dll and hiprtc-builtins0702.dll inside the vendored rocm_7.11_bin.zip with the 7.2.2609.47 build. The remaining 253 zip entries (hipblaslt / rocblas / MIOpen libraries and kernel caches) are byte-identical.
L2 Accuracy Results (EP vs CPU)
Threshold: 0.01 | Run: 3325 - Commit: |
MorphiZen EP Performance Results
EPContext Export Performance
EPContext Import Performance
OGA Benchmark Results
OGA Wheel Smoke (Python benchmark_e2e.py)
Run: 3325 - Commit: |
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.
Summary
Standalone CI workflow that packages the AMD GPU EP into a signed Windows ML MSIX, pulling the pre-built
gpu-test-packageartifact from the latest successfulwindows-build.ymlrun on main/release. Build-only: uploads the.msix(plusgpu-test-package/hipep-wheels/winml-ep-validaterelease zips) as artifacts. Compared to #541, the vendored ROCm runtime DLLs are updated to 7.2.2609.47.Not for merge — this branch exists to validate the MSIX packaging on CI. It vendors the ROCm runtime and packaging tool zips under
.github/winml-msix/via Git LFS, which is not something we want on main.Why
Recreated instead of pushing onto #541 so the ROCm runtime bump lands as a reviewable delta on top of a known-green packaging run, and so the older runtime remains reachable if the new DLLs regress the MSIX validation.
What
.github/workflows/winml-msix-build.yml(job on[windows, gfx1151]): downloadgpu-test-packageviadawidd6/action-download-artifactinto a dedicated dir, extract the vendored ROCm runtime + MSIX packaging tool, stage EP chain + ROCm DLLs, write the AMD GPU EP manifest, then pack + self-sign. Also producesgpu-test-package/hipep-wheels/winml-ep-validaterelease zips as artifacts..gitattributes+.github/winml-msix/rocm_7.11_bin.zip,oga_winml_app.zip,msix_packaging_script.zip); checkout useslfs: true. A license header is added to satisfy thelicenseheaderspre-commit hook..github/winml-msix/rocm_7.11_bin.zip:amdhip64_7.dll,amd_comgr0702.dll,hiprtc0702.dllandhiprtc-builtins0702.dllreplaced with the 7.2.2609.47 build.hipdnn_backend.dllstill comes from the CIgpu-test-packageartifact rather than the vendored zip.Test plan
rocm_7.11_bin.zipdecompress cleanly; the 4 replaced DLLs match their source files by SHA-256.pre-commit run --all-filespasses (includingcheck-added-large-files, i.e. the zips stay LFS pointers).[windows, gfx1151];.msix+ release-zip artifacts produced.Notes for reviewers
Supersedes #541 (itself a recreation of #425 after the repo history cleanup). Not intended to merge.
Checklist
good first issueautomation.