Skip to content

Publish CUDA 13.4 nightly wheels - #22653

Open
shoumikhin wants to merge 9 commits into
pytorch:mainfrom
shoumikhin:et-cuda-add-cu134
Open

Publish CUDA 13.4 nightly wheels#22653
shoumikhin wants to merge 9 commits into
pytorch:mainfrom
shoumikhin:et-cuda-add-cu134

Conversation

@shoumikhin

@shoumikhin shoumikhin commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Problem

CUDA 13.4 consumers need a matching ExecuTorch wheel. The publication filter, build detection, dependencies, and compatibility environment must all support it.

Fix

Publish cu134 when the shared generator offers it. Distinguish a missing CUDA train from an offered train with incomplete Python coverage. Add CUDA 13.4 build detection and architecture mappings.

Select matching CUDA 13.4 nightly dependencies and retain them through example installation. Keep package metadata consistent with source-pinned torch and explicit torchao source builds. Preserve existing dependency selection for other CUDA versions and the CPU torchao variant on ARM.

Run CUDA 13.4 compatibility with a newer driver and C++ runtime. The image's older Conda runtime aborts during thread-local cleanup after matrix multiplication. Update that runtime normally and verify the GPU result against CPU output, including normal process termination. Preserve CUDA 12.6 and 13.0 coverage.

Pin the reusable workflow and its checked-out actions to the same prerequisite revision from pytorch/test-infra#8771. That prerequisite still needs approval.

Update the stale missing-weights regression to decode current metadata and exercise the legacy payload with and without constants.

Testing

The CI-script suite passed 327 tests with 15 skipped. Regressions exercise dependency selection, incorrect GPU results, and runtime-update failure. Scoped Python, shell, and workflow checks passed.

The final revision passed CUDA 12.6, 13.0, and 13.4 compatibility. CUDA 13.4 completed installation, dependency checks, a GPU result comparison against CPU, and normal process termination. Both CUDA unit suites passed, including the missing-weights regressions.

All ten final CUDA 13.4 wheel builds and uploads passed for Python 3.10 through 3.14 on x86_64 and ARM64. The x86_64 Python 3.12 smoke test ran delegated models with and without external weights and matched eager output. ARM64 smoke tests check packaging without GPU execution. All remaining CI checks finished without failures.

The prerequisite's CI passed. Its approval is the only remaining merge-readiness gate.

Assisted by Devmate.

Copilot AI lite review requested due to automatic review settings September 9, 2026 17:51
@shoumikhin shoumikhin added the release notes: build Changes related to build, including dependency upgrades, build flags, optimizations, etc. label Sep 9, 2026
@pytorch-bot

pytorch-bot Bot commented Sep 9, 2026

Copy link
Copy Markdown

🔗 Helpful Links

🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/22653

Note: Links to docs will display an error until the docs builds have been completed.

✅ No Failures

As of commit c602baa with merge base d1d5f40 (image):
💚 Looks good so far! There are no failures yet. 💚

This comment was automatically generated by Dr. CI and updates every 15 minutes.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Sep 9, 2026

@Gasoonjia Gasoonjia left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you add a 13.4 ci?

Copilot AI review requested due to automatic review settings September 9, 2026 18:03

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI review requested due to automatic review settings September 9, 2026 21:54

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@shoumikhin shoumikhin added the ciflow/binaries/all Release PRs with this label will build wheels for all python versions label Sep 10, 2026
Copilot AI review requested due to automatic review settings September 10, 2026 02:20

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI review requested due to automatic review settings September 10, 2026 02:42

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Copilot AI review requested due to automatic review settings September 10, 2026 03:07

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

shoumikhin and others added 9 commits September 9, 2026 22:04
PyTorch now publishes CUDA 13.4 nightlies for every Python version ExecuTorch builds
(3.10 through 3.14), and Torch-TensorRT already targets cu134 in its own build matrix.
A consumer building a cu134 delegate needs a matching ExecuTorch wheel to depend on, and
today there is none.

Add cu134 to the list of CUDA trains the release publishes. This is a small policy change
on top of the resilient filter: cu134 is published when the shared matrix generator offers
it, which it does today, and is skipped automatically if it ever stops, exactly like the
other trains. No build wiring changes are needed, because the CUDA wheel workflow builds
whatever the generator produces and the filter keeps.

Also add a 13.4 build-compatibility job to the CUDA test workflow, so the newly published
train is actually built and smoke-tested in CI rather than published unverified. The same
change drops 12.6 from that matrix, since PyTorch stopped publishing CUDA 12.6 and the job
can no longer install it. The build script already takes the CUDA version as an argument,
so no script change is needed.

Example, with the generator offering cu130, cu132 and cu134:
  before: publishes cu130 and cu132
  after:  publishes cu130, cu132 and cu134

Test plan: updated the pinned published-set test to include cu134. Ran the filter against a
matrix offering all three CUDA 13 trains and confirmed it exits 0 and publishes cu130, cu132
and cu134. Full suite: 21 passed, 2 subtests. The CUDA test workflow parses and its build
job now runs for 13.0 and 13.4.
Recognize CUDA 13.4 in installer and wheel architecture selection. Check the publication policy against both build guards and preserve the distinction between absent and incomplete CUDA trains.

Tested the CI-script suite (314 passed, 15 skipped), focused CUDA filter tests, pinned lint, and Bash syntax. Assisted by Devmate.
CUDA 13.4 needs packages that are not available in the existing release and torchao series. Select the published matching nightly set only for CUDA 13.4, retain it through example installation, and keep the wheel torchao bound aligned.

Seven focused installer and metadata tests pass, and three assertions fail against the previous code. Core dependency resolution passed for Python 3.10 through 3.14 on both Linux architectures. Full Linux installation and GPU validation remain for CI. Assisted by Devmate.
The test imported a metadata decoder that no longer exists. Decode the current structured payload before rewriting it to the legacy two-key shape, including the no-constants control, so both paths reach the intended loader checks.

Syntax and scoped lint pass. GPU execution against the current runtime remains for CI. Assisted by Devmate.
Use the matching driver setup and keep the reusable workflow and action checkout on the same revision. Retain CUDA 12.6 and 13.0 coverage, and reject installations whose torch CUDA version differs from the requested build.

The CI-script suite passed 324 tests with 15 skipped. New regressions fail on the previous matrix, workflow reference, and CUDA-version probe. Scoped lint, workflow lint, and Bash syntax pass. Actual builds and GPU execution remain for CI. Assisted by Devmate.
Select the same torchao series for both installer modes while leaving source-built torch unpinned. Exercise the full installer through its package-install step and check that the installed torchao satisfies the generated dependency bound. The new check fails for both architectures before the fix; eight dependency tests now pass.
Pin both the reusable workflow and its action checkout to the same upstream-reachable revision, including the test dependency lint fix.
The pinned torchao source cannot satisfy the CUDA 13.4 wheel pin. Keep explicit source builds free of that competing wheel requirement and use package metadata that accepts the source version.

Test Plan: The full installer regression failed for both source-build flags before the fix. The CI-script suite now passes 326 tests and 54 subtests, with 15 skipped.
The compatibility image's older Conda C++ runtime aborts at process shutdown after a correct CUDA matrix multiplication. Update the CUDA 13.4 job to the runtime versions that passed the same-wheel comparison, and check the GPU result against CPU output before normal process termination.

Test Plan: 327 CI-script tests and 59 subtests passed, with 15 skips. New workflow cases fail without the runtime setup and verify that a failed update prevents the build. The isolated GPU comparison reproduced the baseline abort and exited cleanly after a normal Conda runtime update. Full compatibility CI follows publication.
Copilot AI review requested due to automatic review settings September 10, 2026 05:06

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ciflow/binaries/all Release PRs with this label will build wheels for all python versions CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. release notes: build Changes related to build, including dependency upgrades, build flags, optimizations, etc.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants