Skip to content

Sync with Microsoft ONNX Runtime - 20082026 - #1264

Merged
hdharpure9922 merged 6 commits into
ovep-developfrom
sync_msft_20082026
Aug 20, 2026
Merged

Sync with Microsoft ONNX Runtime - 20082026#1264
hdharpure9922 merged 6 commits into
ovep-developfrom
sync_msft_20082026

Conversation

@ai-fw-intg

Copy link
Copy Markdown

Automated daily backmerge from ORT main to ovep-develop. No conflicts detected. Do NOT squash or rebase - use merge commit only.

tianleiwu and others added 6 commits August 18, 2026 17:24
This shall not be merged until 0.1 is released.
### Description
Adds CPU and WebGPU contrib kernels for Qwen-3.5 operators, including
GatedAdd, GatedRMSNorm, and LinearAttentionGate. Also fixes WebGPU
input/output binding order and removes an unused CPU include.

### Motivation and Context
This adds CPU and WebGPU support for Qwen-3.5 ops. The PR is opened from
the renamed branch `copilot/add-cpu-webgpu-kernels-for-qwen-3-5` to
accurately reflect the implementation scope.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: kunal-vaishnavi <115581922+kunal-vaishnavi@users.noreply.github.com>
## Description

Enable FP4 QMoE for Blackwell SM120 in Windows CUDA builds. Previously,
MSVC builds rejected this configuration because compiling the full LLM
CUDA source set for native SM120 exposed `tcgen05` compilation failures.

## Changes

- Split the FP4 QMoE sources that require native SM120 instructions into
dedicated CUDA object targets:
  - `onnxruntime_providers_cuda_llm_fp4`
  - `onnxruntime_providers_cuda_plugin_llm_fp4`
- Compile those FP4 targets for native `sm_120a` (`120-real`) so
`expandInputRowsKernel` can use `cvt.e2m1x2`.
- Compile the general LLM CUDA targets as `compute_120` PTX
(`120-virtual`) on MSVC, avoiding `tcgen05` failures in unrelated
translation units.
- Enable the CUTLASS SM120 grouped TMA kernels needed by FP4 QMoE on
Windows.
- For CUDA 13 and MSVC, apply `/Zc:__cplusplus-` only to the host
compilation of the SM120 TMA object target. This avoids MSVC `C2719`
errors in generated host stubs for by-value, 128-byte-aligned
`CUtensorMap` parameters while preserving C++20 for CUDA device
compilation.
- Apply the same source split and workaround to both the in-tree CUDA
provider and the CUDA plugin provider.
- Update the FP4 QMoE documentation with the Windows build behavior and
constraints.

## Validation

- Built the native FP4 QMoE object target for `sm_120a` with MSVC and
CUDA 13.
- Built the native SM120 CUTLASS TMA object target with the target-local
host compiler workaround.
- The CUDA plugin packaging pipeline verified this change: the Windows
x64 build passed.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>

@hdharpure9922 hdharpure9922 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

LGTM

@hdharpure9922
hdharpure9922 merged commit eb35f59 into ovep-develop Aug 20, 2026
7 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants