pypi executorch 1.4.0
v1.4

3 hours ago

Highlights


  • Expanded Cortex-M support across additional CPU variants, model tests,
    scratch-buffer planning, CMSIS-NN integration, and CMSIS Pack builds.
  • Added broad Arm backend coverage for TOSA dialect lowering, dynamic shapes,
    FP8/MXFP/BFloat16 paths, VGF profiling, and LLM export workflows.
  • Added Vulkan support for Linux and Windows desktop GPUs, opt-in wheel builds,
    automatic build enablement, and a functional backend availability check.
  • Expanded Qualcomm QNN support with 2-bit 16a2w quantization, faster VLM/LLM
    PTQ flows, multi-batch quantization and evaluation, LPAI tooling, profiling,
    and additional operators.
  • NXP Backend finished MLIR based Neutron Converter flow rollout - all operators using the MLIR flow, Neutron backend now support 48 ATen operators.
  • Continued Android API migration to Kotlin and added Android model E2E
    coverage and Kotlin examples.

Runtime and Core


  • Removed the legacy _use_edge_ops toggles from the runtime/export path.
  • Added explicit dim-order legalization for channels-last portable fallbacks.
  • Hardened tensor-layout validation and segment loading against null metadata.
  • Improved symbolic input metadata preservation during exported-program pass
    replay.
  • Added direct bundled-program serialization improvements for embedded flows.

Backends


Arm and Cortex-M

  • Added builds for more Cortex-M variants on Corstone-300, including M0+.
  • Added AoT scratch-buffer planning and broader MLPerf Tiny model coverage.
  • Expanded TOSA dialect lowering for activation, binary, conversion, data
    layout, FFT, reduction, shape, and unary operators.
  • Added or improved VGF support for profiling, shader segments, BFloat16,
    MXFP, grid sampling, and persistent IO mappings.
  • Ethos-U and VGF dependencies can now be installed with ExecuTorch using optional packages “pip install executorch[ethos_u,vgf]”
  • Added SmolLM2 and Qwen3-VL export and evaluation coverage.
  • Added CMSIS Pack infrastructure and an ExecuTorch 1.4 public API manifest.

Qualcomm

  • Added additional QNN operators, including addmm, select_scatter, variance,
    diagonal, fill, cdist, LayerNorm variants, and hyperbolic functions.
  • Added 2-bit weight quantization support and multi-batch LLM quantization.
  • Decoupled calibration, quantization, compilation, and evaluation stages for
    faster LLM and VLM workflows.
  • Added LPAI partitioning, tensor dumping, and runtime heap profiling.

NXP

  • Updated the Neutron software stack to 3.1.3.
  • Added backend profiling and MLPerf Tiny profiling tests.
  • Expanded Neutron operator coverage and removed several broadcasting
    restrictions.
  • Fixed partition-output handling, format inference, BatchNorm fusion, and
    multiprocessing conversion issues.

CoreML and MLX

  • Added a Core ML compute-plan reporting tool for ANE, GPU, and CPU dispatch.
  • Added MLX handlers for hardtanh, bitwise_or, and leaky_relu.
  • Improved MLX submodule build isolation.

Vulkan

  • Added Vulkan desktop support for Linux and Windows and opt-in wheel builds.

XNNPack

  • Added quantized same-padding convolution support in XNNPACK, including fixes
    for even Conv1d kernels and ViT concatenation quantization parameters.
  • Expanded RISC-V XNNPACK coverage across multiple RVV QEMU configurations.

Operators and Kernels


  • Added BFloat16 and FP16 activation support to CPU SDPA.
  • Added BFloat16-output quantized embeddings on CPU.
  • Improved numerical accuracy by accumulating Half and BFloat16 softmax,
    log-softmax, mean, and sum operations in FP32.
  • Fixed portable anti-aliased bilinear upsampling correctness.

LLM, Mobile, and Examples


  • Added grammar and grammar_type fields to GenerationConfig.
  • Added an unoptimized ExecuTorch runner example for Espressif ESP32.
  • Migrated Android Module, TrainingModule, SGD, and LLM extension APIs from
    Java to Kotlin.
  • Added Kotlin examples and Android model end-to-end testing.

Notable Fixes


  • Fixed channels-last handling for portable fallbacks and Cortex-M DS-CNN.
  • Fixed a QNN runtime null dereference when op-package options are absent.
  • Fixed quantized Conv1d same padding for even kernels in XNNPACK.
  • Fixed several Arm partitioning, dynamic-shape, quantization, and runner
    integration issues.
  • Fixed multiple NXP Neutron partition, format, and conversion issues.

Contributors

We welcome 29 first-time human contributors to ExecuTorch in this release:
@beomwookang, @karan1508, @atharvjairath, @devin-lai, @derekdixu, @jpiat, @doggeral, @arnavnagzirkar, @wirthual, @youxie, @nanookclaw, @blood-orange, @uddeshsingh, @johnny90, @KushalAdhvaryu, @MatthiasHertelArm, @mohankumarkumar, @yctwo, @jansel, @nlutsenko, @Reubend, @goutamadwant, @JaynouOliver, @RanjithRagavan, @arkadip-maitra, @durvesh1992, @corey-cole, @SakshamKapoor2911, @iamorlando

Full Changelog

v1.3.1...v1.4.0

Don't miss a new executorch release

NewReleases is sending notifications on new releases.