[RELEASE ONLY CHANGES] Finalize 1.4 release dependencies and version - #21563
Merged
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/21563
Note: Links to docs will display an error until the docs builds have been completed. ⏳ No Failures, 247 PendingAs of commit 83c0d3f with merge base cd380e7 ( This comment was automatically generated by Dr. CI and updates every 15 minutes. |
JacobSzwejbka
force-pushed
the
release-only/1.4-torchao-0.18.0
branch
from
August 4, 2026 02:34
3474ee4 to
fd9c0b2
Compare
JacobSzwejbka
force-pushed
the
release-only/1.4-torchao-0.18.0
branch
from
August 4, 2026 02:49
fd9c0b2 to
8e663c7
Compare
JacobSzwejbka
requested review from
larryliu0820 and
mergennachin
as code owners
August 4, 2026 02:49
…V-cache The torchao bump pulls in pytorch/ao#4466, which preserves mutable buffer inputs during pt2e prepare. The static KV cache is now a genuine fp32 mutable buffer feeding index_put instead of a folded quantized constant. An INT-only TOSA delegate boundary must be quantized, so the Arm backend cannot delegate index_put on the fp32 buffer; the node is dropped from the partition and the cache read-modify-write forms a dependency cycle. This is the same underlying gap as the already-xfailed static-cache tests (MLETORCH-1971), and a proper Arm-side fix is being investigated separately. Mark the test xfail so the torchao pin bump can land. This change was authored with Claude Code.
pytorch/ao#4466 preserves mutable buffer inputs during pt2e prepare, so the llama KV cache stays an fp32 mutable buffer instead of being folded into a quantized constant. The Arm INT backend has no handling for that yet, and it breaks on both sides of the cache: test_llama_tosa_INT hits the same partition dependency cycle as the already-xfailed static-cache tests when writing the cache via index_put, and test_llama_vgf_quant fails in attention because the cache is read as float32 while the query is int8, which MATMUL rejects. Both tests only run in the trunk stories110M jobs, which pass --llama_inputs and --use_kv_cache. Mark them xfail so the torchao pin bump can land for the 1.4 release; the Arm-side fix is being investigated separately under MLETORCH-1971. This change was authored with Claude Code.
test_model.sh exports yolo26 via examples.portable.scripts.export, but yolo26's model imports ultralytics, which was never installed -- the CI job failed with ModuleNotFoundError: No module named 'ultralytics'. Install examples/models/yolo26/requirements.txt before the export, matching the per-model dep handling already used for llava/edsr/mb. torch/torchvision are already installed and satisfy ultralytics, so --upgrade-strategy only-if-needed leaves them untouched and no pytorch extra-index-url is needed. Authored with Claude assistance.
Keep the shared DS-CNN example input contiguous for portable execution, while forcing 4D Cortex-M inputs to channels-last and returning the converted tuple for BundleIO. This handles singleton-channel tensors whose contiguity predicate is ambiguous.\n\nAuthored with Codex assistance.
Gasoonjia
approved these changes
Aug 4, 2026
Skip the MaxViT case that crashes the QNN pytest worker and limit QNN model-suite concurrency to two workers to avoid exhausting linux.2xlarge runners.\n\nAuthored with Codex assistance.
Remove the QNN-specific MaxViT skip. The test also crashes consistently on main, while the release check's exit 137 was a separate flaky resource failure.\n\nAuthored with Codex assistance.
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.
Release-only changes. Do not merge to main.
Finalizes the ExecuTorch 1.4 release metadata and released dependency pins:
Sets the package version to
1.4.0.Updates the torchao submodule and wheel constraints to
v0.18.0.Updates the tokenizer submodule and wheel constraint to
v1.4.0.Updates torchcodec consumers to stable
0.15.0CPU wheels.Uses stable PyTorch CPU wheels for QNN wheel validation.
Updates SwiftPM and Raspberry Pi examples for the 1.4 release and 1.5 nightlies.
Carries the three Arm Llama xfails from main PR Bump torchao to 03ca489dc and nightly wheel to dev20260729 #21476 for torchao preserved mutable KV-cache behavior.
Installs YOLO26 requirements before its portable periodic test, carrying the approved fix from Install yolo26 requirements before portable export in CI #20526.
Keeps the shared DS-CNN input portable-safe while forcing and propagating channels-last input at the Cortex-M compiler boundary.
Limits QNN model export concurrency on linux.2xlarge runners to reduce flaky exit 137 failures while keeping MaxViT enabled.
Test plan:
git diff --checkpy_compilebash -non all modified shell scriptssetup.py --namemetadata smoke testsv0.18.0andv1.4.0(490, 490, 10, 1)to channels-last strides(490, 1, 10, 1)Authored with Codex.
cc @digantdesai @freddan80 @per @zingo @oscarandersson8218 @mansnils @Sebastian-Larsson @robell @rascani