# ONNX Runtime changelog > Cross-platform accelerated machine learning inference and training engine. - Vendor: Microsoft - Category: AI - Official site: https://onnxruntime.ai - Tracked by: What's New (https://whatsnew.fyi/product/onnx-runtime) - Harvested from: GitHub (microsoft/onnxruntime) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. ## Releases ### plugin-ep-webgpu/v0.2.1 — ONNX Runtime WebGPU Plugin EP v0.2.1 - Date: 2026-07-30 - Version: plugin-ep-webgpu/v0.2.1 - Original notes: https://github.com/microsoft/onnxruntime/releases/tag/plugin-ep-webgpu/v0.2.1 - Permalink: https://whatsnew.fyi/product/onnx-runtime/releases/plugin-ep-webgpu-v0.2.1 ##### Highlights - **Major performance work for attention-heavy LLMs.** - FlashAttention decode kernels were fused and extended for any sequence length ([#28389](https://github.com/microsoft/onnxruntime/pull/28389)). - FlashAttention prefill shared-memory path was generalized ([#28520](https://github.com/microsoft/onnxruntime/pull/28520)). - Dynamic `max_k_step` was enabled for NVIDIA ([#28511](https://github.com/microsoft/onnxruntime/pull/28511)). - QKV bias support was added for FlashAttention in MultiHeadAttention ([#28380](https://github.com/microsoft/onnxruntime/pull/28380)). - M4 Max-specific FlashAttention optimization landed ([#27780](https://github.com/microsoft/onnxruntime/pull/27780)). - **Qwen3 and Gemma 4 model-path improvements.** - QKV and MLP fusions for Qwen3-style models ([#28280](https://github.com/microsoft/onnxruntime/pull/28280)). - Q/K RMSNorm fusion into GroupQueryAttention for Qwen3-style models ([#28484](https://github.com/microsoft/onnxruntime/pull/28484)). - Opset 24 and KV-shared decoder layer support for Gemma 4 ([#28501](https://github.com/microsoft/onnxruntime/pull/28501)). - GroupQueryAttention now supports optional present-key/value outputs ([#28242](https://github.com/microsoft/onnxruntime/pull/28242)). - **LinearAttention and quantized-path optimizations.** - LinearAttention subgroup optimizations and larger `tile_v` with subgroup support ([#28412](https://github.com/microsoft/onnxruntime/pull/28412), [#28519](https://github.com/microsoft/onnxruntime/pull/28519)). - GatherBlockQuantized gained 2-bit support ([#28530](https://github.com/microsoft/onnxruntime/pull/28530)). - **Reliability and hardening fixes.** - Fixes for out-of-bounds read risks in GatherBlockQuantized and Pad ([#28718](https://github.com/microsoft/onnxruntime/pull/28718), [#28721](https://github.com/microsoft/onnxruntime/pull/28721)). - Fix for `past_state == present_state` buffer handling ([#28753](https://github.com/microsoft/onnxruntime/pull/28753)). - Fixes in QMoE numerical stability and SkipSimplifiedLayerNormalization bias behavior ([#28434](https://github.com/microsoft/onnxruntime/pull/28434), [#28427](https://github.com/microsoft/onnxruntime/pull/28427)). - ConvTranspose weight shape validation improvement ([#28524](https://github.com/microsoft/onnxruntime/pull/28524)). - **Graph-capture and buffer-management improvements.** - Per-graph buffer manager and session-level buffer pool updates for graph capture reuse ([#28260](https://github.com/microsoft/onnxruntime/pull/28260), [#28761](https://github.com/microsoft/onnxruntime/pull/28761)). Note: This section was AI-generated. It may have inaccuracies. ##### Contributors Thanks to everyone who contributed to the WebGPU EP (human contributors, alphabetical): [@apsonawane](https://github.com/apsonawane), [@daijh](https://github.com/daijh), [@edgchen1](https://github.com/edgchen1), [@feich-ms](https://github.com/feich-ms), [@GopalakrishnanN](https://github.com/GopalakrishnanN), [@guschmue](https://github.com/guschmue), [@hariharans29](https://github.com/hariharans29), [@HectorSVC](https://github.com/HectorSVC), [@jchen10](https://github.com/jchen10), [@qjia7](https://github.com/qjia7), [@tianleiwu](https://github.com/tianleiwu), [@xiaofeihan1](https://github.com/xiaofeihan1), [@xenova](https://github.com/xenova), [@yuslepukhin](https://github.com/yuslepukhin). Note: This list was compiled on a best-effort basis from PRs that touched WebGPU EP-specific paths and intentionally includes human contributors only, so it may not capture every contribution. If yours was missed, the omission is unintentional. Your work is no less appreciated. ### v1.28.0 — ONNX Runtime v1.28.0 - Date: 2026-07-25 - Version: v1.28.0 - Original notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.28.0 - Permalink: https://whatsnew.fyi/product/onnx-runtime/releases/v1.28.0 ##### Announcements & Breaking Changes - Upgraded to **ONNX 1.22.0** and protobuf 6.33.5 ([#28754](https://github.com/microsoft/onnxruntime/pull/28754), [#29606](https://github.com/microsoft/onnxruntime/pull/29606), [#28967](https://github.com/microsoft/onnxruntime/pull/28967)). Graph optimizer opset version checks were updated accordingly ([#28966](https://github.com/microsoft/onnxruntime/pull/28966)). - **cuDNN and cuFFT are now optional at runtime** for the CUDA EP, and `nvrtc` is no longer linked, which significantly reduces the required CUDA redistributable footprint ([#29252](https://github.com/microsoft/onnxruntime/pull/29252), [#29808](https://github.com/microsoft/onnxruntime/pull/29808), [#29705](https://github.com/microsoft/onnxruntime/pull/29705), [#29620](https://github.com/microsoft/onnxruntime/pull/29620)). - An **experimental C/C++ API surface** was introduced. `OrtModelPackageApi` now lives in the experimental C API and may change in future releases ([#28746](https://github.com/microsoft/onnxruntime/pull/28746), [#29142](https://github.com/microsoft/onnxruntime/pull/29142), [#28990](https://github.com/microsoft/onnxruntime/pull/28990)). - **Deprecated / removed:** - SkipLayerNorm strict mode is deprecated ([#29388](https://github.com/microsoft/onnxruntime/pull/29388)). - The TensorRT fused causal attention kernels were removed from the CUDA EP ([#29143](https://github.com/microsoft/onnxruntime/pull/29143)). - The dynamic WGSL generator (duktape/Node) path was removed in favor of the Python `wgsl-gen` implementation ([#29141](https://github.com/microsoft/onnxruntime/pull/29141), [#28355](https://github.com/microsoft/onnxruntime/pull/28355)). - `CUDA_QUANT_PREPROCESS` is off by default ([#29687](https://github.com/microsoft/onnxruntime/pull/29687)). - NPM packages are now published from the CUDA 13 pipeline ([#28773](https://github.com/microsoft/onnxruntime/pull/28773)). - The CUDA 12.8 package architecture list was refreshed for this release ([#29711](https://github.com/microsoft/onnxruntime/pull/29711)). ##### Security Fixes ###### Memory safety & input validation - Hardened the ORT FlatBuffer model loader against malformed buffers, and removed now-redundant table offset validation ([#28186](https://github.com/microsoft/onnxruntime/pull/28186), [#29068](https://github.com/microsoft/onnxruntime/pull/29068)) - Fixed type confusion in raw-pointer `bind_input` causing an out-of-bounds write ([#28839](https://github.com/microsoft/onnxruntime/pull/28839)) - Fixed out-of-bounds pointer in `TensorAt` for sub-byte packed types ([#28973](https://github.com/microsoft/onnxruntime/pull/28973)) - Fixed arbitrary memory read, out-of-bounds dereference, and other OOB accesses in kernels ([#28991](https://github.com/microsoft/onnxruntime/pull/28991), [#29011](https://github.com/microsoft/onnxruntime/pull/29011), [#29012](https://github.com/microsoft/onnxruntime/pull/29012), [#29014](https://github.com/microsoft/onnxruntime/pull/29014)) - Validated `Col2Im` inputs to prevent heap over-read ([#28706](https://github.com/microsoft/onnxruntime/pull/28706)) - Hardened `CropAndResize` against malformed `crop_size` tensors ([#28766](https://github.com/microsoft/onnxruntime/pull/28766)) - Validated `BeamSearch` `vocab_size` against logits width ([#28774](https://github.com/microsoft/onnxruntime/pull/28774)) - Fixed bounds in `WhisperDecoderSubgraph::CreateInitialFeeds` ([#29239](https://github.com/microsoft/onnxruntime/pull/29239)) - Validated `SparseAttention` CSR indices/key lengths and rejected zero-dimension `block_row_indices` ([#29015](https://github.com/microsoft/onnxruntime/pull/29015), [#29242](https://github.com/microsoft/onnxruntime/pull/29242)) - Clamped derived sequence lengths and KV-cache index in CUDA GroupQueryAttention, and fixed a CPU GQA out-of-bounds read in the past-KV buffer ([#29240](https://github.com/microsoft/onnxruntime/pull/29240), [#29447](https://github.com/microsoft/o _[Truncated at 4000 characters — full notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.28.0]_ ### v1.27.1 — ONNX Runtime v1.27.1 - Date: 2026-07-11 - Version: v1.27.1 - Original notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.27.1 - Permalink: https://whatsnew.fyi/product/onnx-runtime/releases/v1.27.1 This is a patch release on top of [v1.27.0](https://github.com/microsoft/onnxruntime/releases/tag/v1.27.0), containing targeted bug fixes, a CUDA QMoE decode-path optimization, and CI/build infrastructure fixes. ##### Bug Fixes - [MLAS] Fixed an `igemm` regression in the KleidiAI path ([#28571](https://github.com/microsoft/onnxruntime/pull/28571)) - Fixed a QMoE CPU livelock by eliminating nested intra-op parallelism ([#29081](https://github.com/microsoft/onnxruntime/pull/29081)) - Fixed a regression in graph-capture session initialization that rejected an empty graph ([#29457](https://github.com/microsoft/onnxruntime/pull/29457)) - Fixed CustomOp forward compatibility by capping the version instead of rejecting it ([#29574](https://github.com/microsoft/onnxruntime/pull/29574)) ##### Performance ###### NVIDIA CUDA EP - Added a QMoE GEMV fast path for batch-1 decode ([#29038](https://github.com/microsoft/onnxruntime/pull/29038)) ##### CI & Build Infrastructure - Fixed an incorrect identity for `azcopy` ([#29274](https://github.com/microsoft/onnxruntime/pull/29274)) - Fixed a `brew install applesimutils` failure by trusting the wix/brew tap ([#29450](https://github.com/microsoft/onnxruntime/pull/29450)) - Upgraded to Xcode 26 ([#29468](https://github.com/microsoft/onnxruntime/pull/29468)) - Stopped echoing the command when setting a VSO variable in `mac-cpu-packing-jobs.yml` ([#29575](https://github.com/microsoft/onnxruntime/pull/29575)) - Fixed the web e2e (npm/vite) and Python DML CI pipelines ([#29609](https://github.com/microsoft/onnxruntime/pull/29609)) ##### Contributors Thanks to our 8 contributors for this release! [@tianleiwu](https://github.com/tianleiwu), [@chilo-ms](https://github.com/chilo-ms), [@edgchen1](https://github.com/edgchen1), [@adrastogi](https://github.com/adrastogi), [@damdoo01-arm](https://github.com/damdoo01-arm), [@JonathanC-ARM](https://github.com/JonathanC-ARM), [@martin-klacer-arm](https://github.com/martin-klacer-arm), [@sanaa-hamel-microsoft](https://github.com/sanaa-hamel-microsoft) Full Changelog: [v1.27.0...v1.27.1](https://github.com/microsoft/onnxruntime/compare/v1.27.0...v1.27.1) ### v1.27.0 — ONNX Runtime v1.27.0 - Date: 2026-06-19 - Version: v1.27.0 - Original notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.27.0 - Permalink: https://whatsnew.fyi/product/onnx-runtime/releases/v1.27.0 n.b. This release is targeting ONNX 1.21. ONNX 1.22 will be supported in ORT 1.28. n.b. This changelog was generated via LLM. Only the contributor list has been verified. As always, only trust the commit history. ##### Announcements & Breaking Changes * CUDA 12 package files are now explicitly named as such. * CUDA 12 packages are deprecated, please move to CUDA 13 ASAP. --- ##### Security Fixes * Fixed out-of-bounds read in `SoftmaxCrossEntropyLoss` via label bounds validation ([#28004](https://github.com/microsoft/onnxruntime/pull/28004)) * Hardened `OneHot` input validation and output-size computation ([#28014](https://github.com/microsoft/onnxruntime/pull/28014)) * Added SafeInt overflow protection in `Expand` and capped constant-folding output sizes ([#28055](https://github.com/microsoft/onnxruntime/pull/28055)) * Bounded total output allocation size in `Tile` kernel ([#28070](https://github.com/microsoft/onnxruntime/pull/28070)) * Added mask/input shape consistency checks in `MaxpoolWithMask::Compute` ([#28223](https://github.com/microsoft/onnxruntime/pull/28223)) * Fixed `BitShift` UB for shift amounts greater than or equal to bit width ([#28272](https://github.com/microsoft/onnxruntime/pull/28272)) * Validated sequence bounds in GQA (`seqlens_k` vs `cos_cache`) ([#28277](https://github.com/microsoft/onnxruntime/pull/28277)) * Validated conv bias shape in `WordConvEmbedding` to prevent OOB reads ([#28279](https://github.com/microsoft/onnxruntime/pull/28279)) * Fixed int32 overflow in CUDA Cast and UnaryElementWise kernels for very large tensors ([#28386](https://github.com/microsoft/onnxruntime/pull/28386)) * Fixed out-of-bounds read in `CropBase` scale handling ([#28399](https://github.com/microsoft/onnxruntime/pull/28399)) * Fixed rank-underflow bug in Inverse kernel trailing-dimension indexing ([#28400](https://github.com/microsoft/onnxruntime/pull/28400)) * Added sparse tensor external file path validation and additional external-path hardening ([#28408](https://github.com/microsoft/onnxruntime/pull/28408), [#28709](https://github.com/microsoft/onnxruntime/pull/28709), [#28725](https://github.com/microsoft/onnxruntime/pull/28725)) * Switched remaining `torch.load()` calls to `weights_only=True` ([#28421](https://github.com/microsoft/onnxruntime/pull/28421)) * Added CPU cache-indirection beam-index validation ([#28486](https://github.com/microsoft/onnxruntime/pull/28486)) * Added additional overflow/bounds checks and test coverage in runtime buffers ([#28713](https://github.com/microsoft/onnxruntime/pull/28713), [#28747](https://github.com/microsoft/onnxruntime/pull/28747)) --- ##### New Features ###### Execution Provider Plugin API * Added zero-copy I/O for plugin EPs with HOST_ACCESSIBLE memory ([#28037](https://github.com/microsoft/onnxruntime/pull/28037)) * Added `OrtEp::OnSessionInitializationEnd()` callback ([#28319](https://github.com/microsoft/onnxruntime/pull/28319)) * Added plugin EP session-options getters ([#28377](https://github.com/microsoft/onnxruntime/pull/28377)) * Added CUDA Plugin EP provider options for streams and external allocators ([#28603](https://github.com/microsoft/onnxruntime/pull/28603)) ###### Core APIs & Runtime * Added support for ONNX overloaded functions (IR v10+) ([#28275](https://github.com/microsoft/onnxruntime/pull/28275)) * Added FLOAT8E8M0 datatype support in ONNX Runtime ([#28381](https://github.com/microsoft/onnxruntime/pull/28381)) * Added CPU Cast support for FLOAT8E8M0 ([#28435](https://github.com/microsoft/onnxruntime/pull/28435)) * Added `kOrtEpDevice_EpMetadataKey_OSDriverVersion` example and docs ([#28282](https://github.com/microsoft/onnxruntime/pull/28282)) ###### Quantization & Training Tooling * Added calibration cache support to `quantize_static` ([#28221](https://github.com/microsoft/onnxruntime/pull/28221)) * Added `ActivationRestrictedAsymmetric` qua _[Truncated at 4000 characters — full notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.27.0]_ ### plugin-ep-webgpu/v0.1.0 — ONNX Runtime WebGPU Plugin EP v0.1.0 - Date: 2026-05-29 - Version: plugin-ep-webgpu/v0.1.0 - Original notes: https://github.com/microsoft/onnxruntime/releases/tag/plugin-ep-webgpu/v0.1.0 - Permalink: https://whatsnew.fyi/product/onnx-runtime/releases/plugin-ep-webgpu-v0.1.0 We're excited to ship the first release of the **WebGPU Execution Provider as a plugin EP** for ONNX Runtime. Instead of being baked into the core `onnxruntime` binary, the WebGPU EP is now distributed as a standalone artifact that registers with an existing ONNX Runtime installation at runtime. ##### Highlights - **Broad operator coverage on WebGPU.** Native WebGPU kernels for the operators needed by common transformer, vision, and generative workloads — including Conv variants, MatMul/Gemm, normalizations, attention (Attention, MultiHeadAttention, GroupQueryAttention), rotary embeddings, quantized matmul, quantized Mixture-of-Experts (QMoE), and more. See the Operator coverage section below for a summary. - **Quantized & accelerated kernels.** DP4A and subgroup-matrix MatMulNBits, a FlashAttention kernel, and vendor-optimized Intel MatMul/Gemm paths. See the Performance features section below. - **Plugin EP packaging.** WebGPU support now ships as a separate, independently versioned library (`onnxruntime_providers_webgpu`) that plugs into a compatible ONNX Runtime (1.24.4 or newer) at runtime. Users can adopt WebGPU acceleration without switching their core ORT package, and the EP can iterate on its own cadence. - **Cross-platform native binaries** for Windows x64/arm64 (bundled with `dxil.dll` / `dxcompiler.dll`), Linux x64, and macOS arm64. - **Language packages.** - **Python:** `onnxruntime-ep-webgpu` wheel, installed alongside the `onnxruntime` package, registered via `onnxruntime.register_execution_provider_library(...)`. See package [page](https://pypi.org/project/onnxruntime-ep-webgpu/#description) for details on installation and usage. - **.NET:** `Microsoft.ML.OnnxRuntime.EP.WebGpu` NuGet package, referenced alongside `Microsoft.ML.OnnxRuntime`, registered via `OrtEnv.RegisterExecutionProviderLibrary(...)`. See package [page](https://www.nuget.org/packages/Microsoft.ML.OnnxRuntime.EP.WebGpu#readme-body-tab) for details on installation and usage. ##### Operator coverage The WebGPU EP registers kernels for the majority of ONNX standard-domain operators used by mainstream model architectures, plus a curated set of `com.microsoft` contrib operators. Highlights by category: - **Math, normalization & reduction:** MatMul, Gemm, Softmax, LayerNormalization, RMSNormalization, InstanceNormalization, BatchNormalization, LpNormalization, unary/binary elementwise ops, all standard reductions (ReduceMean, ReduceSum, ReduceMax, ...), CumSum, Einsum, TopK, ArgMax/ArgMin. - **Neural network:** Conv, ConvTranspose, MaxPool/AveragePool (and Global* variants), plus a `FusedConv` contrib op. - **Tensor manipulation:** Transpose, Reshape, Slice, Concat, Split, Gather/GatherElements/GatherND, ScatterElements/ScatterND, Pad, Tile, Cast, Resize, GridSample, Where, Flatten, Squeeze, Identity, Shape, and more. - **Transformer / LLM contrib ops:** Attention, MultiHeadAttention, GroupQueryAttention, RotaryEmbedding, SkipLayerNormalization, SkipSimplifiedLayerNormalization, SimplifiedLayerNormalization, BiasAdd, BiasGelu, BiasSplitGelu, FastGelu, Gelu, QuickGelu, CausalConvWithState, LinearAttention. - **Quantization:** DequantizeLinear, MatMulNBits (with DP4A and subgroup-matrix paths), GatherBlockQuantized, QMoE. For the authoritative list, see the kernel registrations in [`webgpu_execution_provider.cc`](https://github.com/microsoft/onnxruntime/blob/d2ede0adeb300958cfb5a256c09d27c66c3a6d71/onnxruntime/core/providers/webgpu/webgpu_execution_provider.cc) and [`webgpu_contrib_kernels.cc`](https://github.com/microsoft/onnxruntime/blob/d2ede0adeb300958cfb5a256c09d27c66c3a6d71/onnxruntime/contrib_ops/webgpu/webgpu_contrib_kernels.cc). ##### Performance features - **DP4A and subgroup-matrix MatMulNBits** paths for accelerated quantized matmul on supported hardware. - **FlashAttention** kernel for attention-heavy workloads. - **Intel-optimized MatMul/Gemm** code paths for improved performance on Intel GPUs. - * _[Truncated at 4000 characters — full notes: https://github.com/microsoft/onnxruntime/releases/tag/plugin-ep-webgpu/v0.1.0]_ ### v1.26.0 — 1.26.0 - Date: 2026-05-08 - Version: v1.26.0 - Original notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.26.0 - Permalink: https://whatsnew.fyi/product/onnx-runtime/releases/v1.26.0 n.b. The following was generated via LLM from Git history. Only the contributor list has been verified. #### ONNX Runtime Release 1.26.0 ##### Announcement - Breaking Changes - **Support for CUDA 12 will be removed in 1.27.0.** - CUDA 13 will continue to be published as `onnxruntime---gpu_cuda13-.` - CUDA runtime will be moving soon to a dedicated Execution Provider (EP) instead of a published package from ORT core. ##### Highlights - Added optional memory mapping for `.ort` model loads ([#28164](https://github.com/microsoft/onnxruntime/pull/28164)). - Added RISC-V Vector (RVV) support for CPU EP ([#28261](https://github.com/microsoft/onnxruntime/pull/28261)). - OpenVINO EP upgraded for 1.26.0 development release ([#28297](https://github.com/microsoft/onnxruntime/pull/28297)). - WebGPU gained GridSample support ([#28264](https://github.com/microsoft/onnxruntime/pull/28264)) and Split-K improvements ([#28151](https://github.com/microsoft/onnxruntime/pull/28151)). - CUDA plugin EP gained graph support ([#28002](https://github.com/microsoft/onnxruntime/pull/28002)), profiling API ([#28216](https://github.com/microsoft/onnxruntime/pull/28216)). ##### Security and Reliability Hardening - Replaced unrestricted Python `setattr` configuration with an allowlist ([#28083](https://github.com/microsoft/onnxruntime/pull/28083)). - Hardened multiple OOB and overflow scenarios across ML and core ops: - Attention mask index OOB write ([#27789](https://github.com/microsoft/onnxruntime/pull/27789)). - MaxPoolGrad indices bounds validation ([#27903](https://github.com/microsoft/onnxruntime/pull/27903)). - SVM and TreeEnsemble bounds/security fixes ([#27950](https://github.com/microsoft/onnxruntime/pull/27950), [#27951](https://github.com/microsoft/onnxruntime/pull/27951), [#27952](https://github.com/microsoft/onnxruntime/pull/27952), [#27989](https://github.com/microsoft/onnxruntime/pull/27989)). - RNN sequence_lens OOB read and integer overflow handling ([#28052](https://github.com/microsoft/onnxruntime/pull/28052), [#28003](https://github.com/microsoft/onnxruntime/pull/28003)). - GroupQueryAttention seqlens_k bounds validation and compatibility follow-up ([#28031](https://github.com/microsoft/onnxruntime/pull/28031), [#28259](https://github.com/microsoft/onnxruntime/pull/28259)). - MatMulBnb4 and ML coefficient SafeInt checks ([#27995](https://github.com/microsoft/onnxruntime/pull/27995), [#28001](https://github.com/microsoft/onnxruntime/pull/28001)). - CUDA Gather int32 overflow fix ([#28108](https://github.com/microsoft/onnxruntime/pull/28108)). - GridSample float->int64 cast hardening for NaN/Inf/out-of-range coords ([#28302](https://github.com/microsoft/onnxruntime/pull/28302)). - Fixed session logger use-after-free during EP teardown under verbose logging ([#28274](https://github.com/microsoft/onnxruntime/pull/28274)). ##### CUDA, Attention, and MLAS - Filled CUDA opset/operator gaps and extended support: - Transpose opset 23 -> 25 ([#27740](https://github.com/microsoft/onnxruntime/pull/27740)). - QuantizeLinear/DequantizeLinear opset 25 ([#28046](https://github.com/microsoft/onnxruntime/pull/28046)). - CUDA TopK INT8/INT16/UINT8 support ([#27862](https://github.com/microsoft/onnxruntime/pull/27862)). - LabelEncoder CUDA support for numeric types ([#28045](https://github.com/microsoft/onnxruntime/pull/28045)). - Attention/GQA improvements: - Fixed ONNX Attention min-bias alignment crash on SM<80 and masked-batch NaN behavior ([#27831](https://github.com/microsoft/onnxruntime/pull/27831)). - Added FP32 QK accumulation path for unfused GQA attention ([#28198](https://github.com/microsoft/onnxruntime/pull/28198)). - Added CUDART_VERSION reduction compatibility in GQA attention ([#28296](https://github.com/microsoft/onnxruntime/pull/28296)). - Fixed CUDA 13 build error in GQA unfused attention ([#28309](https://github.com/microsoft/on _[Truncated at 4000 characters — full notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.26.0]_ ### v1.25.1 — ONNX Runtime v1.25.1 - Date: 2026-04-27 - Version: v1.25.1 - Original notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.25.1 - Permalink: https://whatsnew.fyi/product/onnx-runtime/releases/v1.25.1 n.b. This changelog is LLM generated. Only the contributor listing has been verified. #### ONNX Runtime Release 1.25.1 ##### 📢 Announcements & Breaking Changes ###### ONNX Op Updates * **Enhanced ONNX operator support** with new opset versions: Reshape (opset 25), Transpose (opset 24) ([#27752](https://github.com/microsoft/onnxruntime/pull/27752)) --- ##### ✨ New Features ###### 📊 New ONNX Ops & Model Support * **LinearAttention and CausalConvState operators** for Qwen3.5 model support ([#27907](https://github.com/microsoft/onnxruntime/pull/27907)) * **RotaryEmbedding (RotEMB) and RMSNorm operators** added ([#27752](https://github.com/microsoft/onnxruntime/pull/27752)) * **Linear Attention signature** support ([#27842](https://github.com/microsoft/onnxruntime/pull/27842)) --- ##### 🌐 Web & JavaScript ###### WebGPU EP * **Qwen3.5 model support** on WebGPU execution provider ([#27996](https://github.com/microsoft/onnxruntime/pull/27996)) * **QMoE 1-token decode path optimization** — fused operations to reduce GPU dispatches for improved performance ([#27998](https://github.com/microsoft/onnxruntime/pull/27998)) --- ##### 🐛 Bug Fixes ###### Core Runtime Fixes * **Improved filesystem error messages** during Linux device discovery for better debugging experience ([#27289](https://github.com/microsoft/onnxruntime/pull/27289)) * Fixed missing include for `SetRawDataInTensorProto` in NVIDIA TensorRT RTX tests ([#28065](https://github.com/microsoft/onnxruntime/pull/28065)) --- ##### 🙏 Contributors Thanks to our **7 contributors** for this release: [@guschmue](https://github.com/guschmue), [@sanaa-hamel-microsoft](https://github.com/sanaa-hamel-microsoft), [@apsonawane](https://github.com/apsonawane), [@eserscor](https://github.com/eserscor), [@ishwar-raut1](https://github.com/ishwar-raut1), [@qjia7](https://github.com/qjia7), [@theHamsta](https://github.com/theHamsta) **Full Changelog**: https://github.com/microsoft/onnxruntime/compare/v1.25.0...v1.25.1 ### v1.25.0 — ONNX Runtime v1.25.0 - Date: 2026-04-20 - Version: v1.25.0 - Original notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.25.0 - Permalink: https://whatsnew.fyi/product/onnx-runtime/releases/v1.25.0 ##### 📢 Announcements & Breaking Changes ###### Build & Platform * **C++20 is now required** to build ONNX Runtime from source. Minimum toolchains: MSVC 19.29+, GCC 10+, Clang 10+. Users of prebuilt packages are unaffected. ([#27178](https://github.com/microsoft/onnxruntime/pull/27178)) * **CUDA minimum version raised to 12.0** — CUDA 11.x is no longer supported. Users pinned to CUDA 11.x should stay on ORT 1.24.x or upgrade their CUDA toolkit/driver. ([#27570](https://github.com/microsoft/onnxruntime/pull/27570)) * **ONNX upgraded to 1.21.0** ([#27601](https://github.com/microsoft/onnxruntime/pull/27601)) * **sympy is now an optional dependency** for Python builds. ([#27200](https://github.com/microsoft/onnxruntime/pull/27200)) ###### Execution Provider Changes * **ArmNN EP has been removed.** Users should remove any `--use_armnn` build flags and migrate to the MLAS/KleidiAI-backed CPU EP or QNN EP for Qualcomm hardware. ([#27447](https://github.com/microsoft/onnxruntime/pull/27447)) ###### API Version * **ORT_API_VERSION** updated to **25**. ([#27280](https://github.com/microsoft/onnxruntime/pull/27280)) --- ##### 🔒 Security Fixes * Fixed **potential integer truncation leading to heap out-of-bounds read/write** ([#27544](https://github.com/microsoft/onnxruntime/pull/27544)) * Addressed **Pad Reflect vulnerability** ([#27652](https://github.com/microsoft/onnxruntime/pull/27652)) * **Security fix for transpose optimizer** ([#27555](https://github.com/microsoft/onnxruntime/pull/27555)) * Upgraded minimatch 3.1.2 → 3.1.4 for **CVE-2026-27904** ([#27667](https://github.com/microsoft/onnxruntime/pull/27667)) * Hardened shell command handling for constant strings ([#27840](https://github.com/microsoft/onnxruntime/pull/27840)) * Added validation of `onnx::TensorProto` data size before allocation ([#27547](https://github.com/microsoft/onnxruntime/pull/27547)) * Cleaned up external data path validation ([#27539](https://github.com/microsoft/onnxruntime/pull/27539)) * Fixed misaligned address reads for tensor attributes from raw data buffers ([#27312](https://github.com/microsoft/onnxruntime/pull/27312)) * Fixed **CPU Attention overflow** issue ([#27822](https://github.com/microsoft/onnxruntime/pull/27822)) * Fixed **CPU LRN integer overflow** issues ([#27886](https://github.com/microsoft/onnxruntime/pull/27886)) * Additional input validation hardening: * Tile kernel dim overflow ([#27566](https://github.com/microsoft/onnxruntime/pull/27566)) * Out-of-bounds read in cross entropy ([#27568](https://github.com/microsoft/onnxruntime/pull/27568)) * TreeEnsembleClassifier attributes ([#27571](https://github.com/microsoft/onnxruntime/pull/27571)) * AffineGrid ([#27572](https://github.com/microsoft/onnxruntime/pull/27572)) * EmbedLayerNorm position_ids ([#27573](https://github.com/microsoft/onnxruntime/pull/27573)) * RotaryEmbedding position_ids ([#27597](https://github.com/microsoft/onnxruntime/pull/27597)) * RoiAlign batch_indices ([#27603](https://github.com/microsoft/onnxruntime/pull/27603)) * MaxUnpool indices ([#27432](https://github.com/microsoft/onnxruntime/pull/27432)) * QMoECPU swiglu OOB ([#27748](https://github.com/microsoft/onnxruntime/pull/27748)) * SVMClassifier initializer ([#27699](https://github.com/microsoft/onnxruntime/pull/27699)) * Col2Im SafeInt ([#27625](https://github.com/microsoft/onnxruntime/pull/27625)) --- ##### ✨ New Features ###### 🔌 Execution Provider Plugin API & CUDA Plugin EP ORT 1.25.0 introduces the **CUDA Plugin EP** — the first core implementation that enables third-party CUDA-backed EPs to be delivered as dynamically loaded plugins without rebuilding ORT. * **CUDA Plugin EP: Core implementation** ([#27816](https://github.com/microsoft/onnxruntime/pull/27816)) * CUDA Plugin EP: BFC-style arena and CUDA mempool allocators for stream-a _[Truncated at 4000 characters — full notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.25.0]_ ### v1.24.4 — ONNX Runtime v1.24.4 - Date: 2026-03-17 - Version: v1.24.4 - Original notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.24.4 - Permalink: https://whatsnew.fyi/product/onnx-runtime/releases/v1.24.4 This is a patch release for ONNX Runtime 1.24, containing bug fixes and execution provider updates. ##### Bug Fixes - **Core**: Added PCI bus fallback for Linux GPU device discovery in containerized environments (e.g., AKS/Kubernetes) where `nvidia-drm` is not loaded but GPU PCI devices are still exposed via sysfs. ([#27591](https://github.com/microsoft/onnxruntime/pull/27591)) - **Plugin EP**: Fixed null pointer dereference when iterating output spans in `GetOutputIndex`. ([#27644](https://github.com/microsoft/onnxruntime/pull/27644)) - **Plugin EP**: Fixed bug that incorrectly assigned duplicate MetaDef IDs to fused nodes in different GraphViews (e.g., then/else branches of an If node), causing session creation to fail with a conflicting kernel error. ([#27666](https://github.com/microsoft/onnxruntime/pull/27666)) ##### Execution Provider Updates - **QNN EP**: Enabled offline x64 compilation with memhandle IO type by deferring rpcmem library loading to inference time. ([#27479](https://github.com/microsoft/onnxruntime/pull/27479)) - **QNN EP**: Reverted QNN SDK logging verbosity changes that caused segmentation faults on backend destruction. ([#27650](https://github.com/microsoft/onnxruntime/pull/27650)) ##### Build and Infrastructure - **Python**: Updated `python_requires` from `>=3.10` to `>=3.11` to reflect dropped Python 3.10 support. ([#27354](https://github.com/microsoft/onnxruntime/pull/27354)) - **Build**: Replaced `__builtin_ia32_tpause` with the compiler-portable `_tpause` intrinsic to fix cross-compiler portability issues between GCC and LLVM. ([#27607](https://github.com/microsoft/onnxruntime/pull/27607)) **Full Changelog**: [v1.24.3...v1.24.4](https://github.com/microsoft/onnxruntime/compare/rel-1.24.3...rel-1.24.4) ##### Contributors [@derdeljan-msft](https://github.com/derdeljan-msft), [@adrianlizarraga](https://github.com/adrianlizarraga), [@apwojcik](https://github.com/apwojcik), [@baijumeswani](https://github.com/baijumeswani), [@edgchen1](https://github.com/edgchen1), [@mocknen](https://github.com/mocknen), [@tianleiwu](https://github.com/tianleiwu), [@XXXXRT666](https://github.com/XXXXRT666) ### v1.24.3 — ONNX Runtime v1.24.3 - Date: 2026-03-05 - Version: v1.24.3 - Original notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.24.3 - Permalink: https://whatsnew.fyi/product/onnx-runtime/releases/v1.24.3 This is a patch release for ONNX Runtime 1.24, containing bug fixes, security improvements, performance enhancements, and execution provider updates. ##### Security Fixes - **Core**: Fixed GatherCopyData integer truncation leading to heap out-of-bounds read/write. ([#27444](https://github.com/microsoft/onnxruntime/pull/27444)) - **Core**: Fixed RoiAlign heap out-of-bounds read via unchecked batch_indices. ([#27543](https://github.com/microsoft/onnxruntime/pull/27543)) - **Core**: Prevent heap OOB from maliciously crafted Lora Adapters. ([#27518](https://github.com/microsoft/onnxruntime/pull/27518)) - **Core**: Fixed out-of-bounds access for Resize operation. ([#27419](https://github.com/microsoft/onnxruntime/pull/27419)) ##### Bug Fixes - **Core**: Fixed GatherND division by zero when batch dimensions mismatch. ([#27090](https://github.com/microsoft/onnxruntime/pull/27090)) - **Core**: Fixed validation for external data paths for models loaded from bytes. ([#27430](https://github.com/microsoft/onnxruntime/pull/27430)) - **Core**: Fixed SkipLayerNorm fusion incorrectly applied when gamma/beta are not 1D. ([#27459](https://github.com/microsoft/onnxruntime/pull/27459)) - **Core**: Fixed double-free in TRT EP custom op domain Release functions. ([#27471](https://github.com/microsoft/onnxruntime/pull/27471)) - **Core**: Fixed QMoE CPU Operator. ([#27360](https://github.com/microsoft/onnxruntime/pull/27360)) - **Core**: Fixed MatmulNBits prepacking scales. ([#27412](https://github.com/microsoft/onnxruntime/pull/27412)) - **Python**: Fixed refcount bug in map input conversion that caused shutdown segfault. ([#27413](https://github.com/microsoft/onnxruntime/pull/27413)) - **NuGet**: Fixed DllImportResolver. ([#27397](https://github.com/microsoft/onnxruntime/pull/27397)) - **NuGet**: Added `OrtEnv.DisableDllImportResolver` to prevent fatal error on resolver conflict. ([#27535](https://github.com/microsoft/onnxruntime/pull/27535)) ##### Performance Improvements - **Core**: QMoE CPU performance update (up to 4x on 4-bit). ([#27364](https://github.com/microsoft/onnxruntime/pull/27364)) - **Core**: Fixed O(n²) model load time for TreeEnsemble with categorical feature chains. ([#27391](https://github.com/microsoft/onnxruntime/pull/27391)) ##### Execution Provider Updates - **NvTensorRtRtx EP**: - Avoid repetitive creation of fp4/fp8 native-custom-op domains. ([#27192](https://github.com/microsoft/onnxruntime/pull/27192)) - Added missing override specifiers to suppress warnings. ([#27288](https://github.com/microsoft/onnxruntime/pull/27288)) - DQ→MatMulNBits fusion transformer. ([#27466](https://github.com/microsoft/onnxruntime/pull/27466)) - **WebGPU**: - Used embedded WASM module in Blob URL workers when `wasmBinary` is provided. ([#27318](https://github.com/microsoft/onnxruntime/pull/27318)) - Fixed usage of `wasmBinary` together with a blob URL for `.mjs`. ([#27411](https://github.com/microsoft/onnxruntime/pull/27411)) - Removed the unhelpful "Unknown CPU vendor" warning. ([#27399](https://github.com/microsoft/onnxruntime/pull/27399)) - Allows new memory info name for WebGPU. ([#27475](https://github.com/microsoft/onnxruntime/pull/27475)) - **MLAS**: - Added DynamicQGemm function pointers and ukernel interface. ([#27403](https://github.com/microsoft/onnxruntime/pull/27403)) - Fixed error where bytes is not assigned for dynamic qgemm pack b size. ([#27421](https://github.com/microsoft/onnxruntime/pull/27421)) - **VitisAI EP**: Removed `s_kernel_registry_vitisaiep.reset()` in `deinitialize_vitisai_ep()`. ([#27295](https://github.com/microsoft/onnxruntime/pull/27295)) - **Plugin EPs**: Added "library_path" metadata entry to `OrtEpDevice` instances for plugin and provider bridge EPs. ([#27522](https://github.com/microsoft/onnxruntime/pull/27522)) ##### Build and Infrastructure - **Pipelines**: - Build Windows ARM64X binaries as part of packaging pipeline. _[Truncated at 4000 characters — full notes: https://github.com/microsoft/onnxruntime/releases/tag/v1.24.3]_