Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: pytorch/executorch
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: pytorch/executorch
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: release/1.5
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 8 commits
  • 54 files changed
  • 5 contributors

Commits on Sep 11, 2026

  1. Arm backend: Add static public API manifest for 1.5 (#22735)

    cc @digantdesai @freddan80 @per @zingo @oscarandersson8218 @mansnils
    @Sebastian-Larsson @robell @rascani
    
    Signed-off-by: Sebastian Larsson <sebastian.larsson@arm.com>
    Co-authored-by: Sebastian Larsson <38941629+Sebastian-Larsson@users.noreply.github.com>
    pytorchbot and Sebastian-Larsson authored Sep 11, 2026
    Configuration menu
    Copy the full SHA
    8a98594 View commit details
    Browse the repository at this point in the history

Commits on Sep 14, 2026

  1. [RELEASE ONLY CHANGES] Finalize ExecuTorch 1.5 dependencies (#22724)

    ## Summary
    
    - pin the tokenizers submodule to v1.5.0-rc2 while keeping the wheel
    dependency at the latest published version, pytorch-tokenizers 1.4.1
    - pin torchao to v0.18.0 and update the submodule to its release tag
    - move TorchCodec, QNN, and ROCm release installs to stable packages and
    production indexes
    - restore the Qwen CUDA export matmul mode that TorchAO 0.18 no longer
    sets globally
    - update source, SwiftPM, and Raspberry Pi documentation for release/1.5
    - accommodate the current Transformers Qwen3-VL annotations in mypy
    
    ## Validation
    
    - python3 -m py_compile setup.py examples/models/qwen3_5_moe/export.py
    backends/arm/test/models/Qwen3_VL/test_qwen3_vl_model.py
    - Black 24.4.2 check for the changed Python files
    - git diff --check
    - verified pytorch-tokenizers 1.4.1 publishes wheels for Python
    3.10-3.14 on Windows, Linux x86-64/aarch64, and macOS arm64
    - verified the tokenizers and torchao gitlinks resolve exactly to
    v1.5.0-rc2 and v0.18.0
    - verified torch 2.14.0, torchao 0.18.0, and TorchCodec 0.16.0 resolve
    from their configured indexes
    
    ## Release status
    
    This stays draft while pytorch/test-infra#8780 blocks persistence of the
    tokenizers RC2 wheel artifacts. Raise the package dependency to
    pytorch-tokenizers>=1.5.0 after the final tokenizer wheels are promoted,
    then verify that the final tag points to the RC2 commit or update the
    submodule gitlink.
    
    This PR was authored with Codex assistance.
    JacobSzwejbka authored Sep 14, 2026
    Configuration menu
    Copy the full SHA
    f7140a4 View commit details
    Browse the repository at this point in the history

Commits on Sep 17, 2026

  1. [RELEASE ONLY CHANGES] Expose thread count through the parallel inter…

    …face (#22911)
    
    Cherry-pick of #22908 onto `release/1.5`.
    
    This exposes the thread count through the installed public parallel
    interface, allowing downstream TorchAO code to avoid depending on the
    private `extension/threadpool/threadpool.h` header.
    
    Test plan:
    - Original PR #22908 CI
    - `python3 -m py_compile .ci/scripts/wheel/test_cpp_sdk.py`
    - `git diff --check`
    JacobSzwejbka authored Sep 17, 2026
    Configuration menu
    Copy the full SHA
    08a5956 View commit details
    Browse the repository at this point in the history
  2. [Cortex-M] Update CMSIS-NN to v8.0.0 (#22910)

    ### Summary
    Update CMSIS-NN to v8.0.0 and align the CMSIS pack dependency and
    smoke-test versions. Stop Arm runner scripts from automatically
    substituting the Ethos-U SDK checkout, so fresh runner builds use the
    backend CMake pin. Remove the transpose-convolution ReLU and Hardtanh
    expected failures resolved by the release's padding-row alignment fix.
    
    ### Test plan
    The original update was validated with an explicitly selected v8.0.0 M55
    runner: 51 passed, 7 xfailed in the focused Cortex-M suite. For the
    runner-script correction, shell syntax, ShellCheck error checks, and git
    diff checks pass. The CMake-selected v8 library cross-compiles for M55,
    M7, and M0+ with the expected MVE, DSP, and scalar paths. Complete
    runner builds and FVP tests have not been rerun for this correction.
    
    Authored with OpenAI Codex.
    
    cc @digantdesai @freddan80 @per @zingo @oscarandersson8218 @mansnils
    @Sebastian-Larsson @robell @rascani
    
    Co-authored-by: RJ Ascani <rja@meta.com>
    pytorchbot and rascani authored Sep 17, 2026
    Configuration menu
    Copy the full SHA
    f8ce3d8 View commit details
    Browse the repository at this point in the history
  3. Arm backend: Relax SymbolicShapeSupport-checks (#22834)

    Allow TOSA support checks to distinguish between symbolic tensor
    metadata and symbolic shape materialization.
    
    Without the TOSA shape extension, symbolic tensor input/output shapes
    can still be accepted for ops whose lowering does not need materialized
    shape values. Reject symbolic SymInt arguments and the known shape-
    dependent edge cases instead.
    
    For targets that require fully resolved tensor shapes, add a separate
    partitioner-level check that rejects nodes with unresolved tensor input
    or output shapes.
    
    
    cc @digantdesai @freddan80 @per @zingo @oscarandersson8218 @mansnils
    @Sebastian-Larsson @robell @rascani
    
    Signed-off-by: Oscar Andersson <oscar.andersson@arm.com>
    Co-authored-by: Oscar Andersson <87121123+oscarandersson8218@users.noreply.github.com>
    pytorchbot and oscarandersson8218 authored Sep 17, 2026
    Configuration menu
    Copy the full SHA
    65bfc94 View commit details
    Browse the repository at this point in the history

Commits on Sep 18, 2026

  1. Promote NXP redundant Q/DQ cleanup to to_edge (#22913)

    Eval-mode dropout can disappear before shared no-op cleanup runs,
    leaving adjacent dequantize/quantize conversions. Promote NXP's
    `FoldRedundantDequantizeQuantizePass` from #21016 into the shared
    lowering sequence used by `to_edge` and `to_edge_transform_and_lower`.
    Cortex-M MLPerf Tiny DS-CNN then finishes with one quantize and one
    dequantize operation in both layouts, down from three of each.
    MobileNetV2 similarly drops from two to one of each.
    
    The shared `eliminate_dq_q` matcher remains unchanged, keeping this
    release patch focused on promoting the existing cleanup. Remove the
    stale dropout target from `RemoveNoopPass`. NXP retains a later
    invocation of the shared pass because its auxiliary-operator splitting
    can introduce new adjacent pairs. Update the Cortex-M model counts and
    correct the clone regression's obsolete Q/DQ signatures so the test also
    checks numerical equivalence.
    
    Validation on PyTorch 2.14 CPU: 77 EXIR and clone-transform tests
    passed, with 28 passing subtests and one expected failure. The dropout
    regression covers both edge APIs, per-tensor and per-channel
    quantization, and int8/uint8/int16/int32. All 25 selected Cortex-M
    DS-CNN, MobileNetV2, and explicit-layout tests passed, including
    Corstone-300 FVP implementation tests. Additional explicit-layout DS-CNN
    and legacy `ExirExportedProgram.to_edge` numerical checks passed.
    Formatting, flake8, and `git diff --check` passed.
    
    Authored with AI assistance from OpenAI Codex.
    
    Co-authored-by: RJ Ascani <rja@meta.com>
    pytorchbot and rascani authored Sep 18, 2026
    Configuration menu
    Copy the full SHA
    8e9da43 View commit details
    Browse the repository at this point in the history
  2. [RELEASE ONLY CHANGES] Bump ExecuTorch version to 1.5.1 (#22922)

    ## Summary
    
    Bump the ExecuTorch release version from 1.5.0 to 1.5.1 and update the
    stable SwiftPM documentation examples. This mirrors the version and
    documentation changes made for the 1.4.1 patch release. The dated
    nightly SwiftPM example remains unchanged.
    
    ## Validation
    
    `git diff --check`
    
    Authored with AI assistance from OpenAI Codex.
    JacobSzwejbka authored Sep 18, 2026
    Configuration menu
    Copy the full SHA
    b80d7ac View commit details
    Browse the repository at this point in the history
  3. Arm backend: Partially support dynamic spatial ops (#22931)

    Support dynamic convolutions and pooling operations without the TOSA
    shape extension when partitioning proves lowering needs neither input-
    size adjustment nor dynamic padding.
    
    Recognize value-only max pooling in its exported with-indices form
    before backend preprocessing canonicalizes it.
    
    cc @digantdesai @freddan80 @per @zingo @oscarandersson8218 @mansnils
    @Sebastian-Larsson @robell @rascani
    
    Signed-off-by: Oscar Andersson <oscar.andersson@arm.com>
    Co-authored-by: Oscar Andersson <87121123+oscarandersson8218@users.noreply.github.com>
    pytorchbot and oscarandersson8218 authored Sep 18, 2026
    Configuration menu
    Copy the full SHA
    3b60683 View commit details
    Browse the repository at this point in the history
Loading