Skip to content

[QNN EP] Add RMSNorm Op support in QNN EP - #26853

Merged
edgchen1 merged 4 commits into
microsoft:mainfrom
CodeLinaro:dev/tirupath/rmsnorm_op
Jan 13, 2026
Merged

[QNN EP] Add RMSNorm Op support in QNN EP#26853
edgchen1 merged 4 commits into
microsoft:mainfrom
CodeLinaro:dev/tirupath/rmsnorm_op

Conversation

@tirupath-qti

Copy link
Copy Markdown
Contributor

Description

  • Add standalone RMSNorm op translation in QNN EP
  • Add unit tests

Motivation and Context

  • This fixes the CPU fallback of ONNX RMSNormalization operator when running inferences using QNN EP

 - Add standalone RMSNorm op translation in QNN EP
 - Add unit tests
@tirupath-qti

Copy link
Copy Markdown
Contributor Author

@tirupath-qti please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.

@microsoft-github-policy-service agree [company="{your company}"]

Options:

  • (default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.
@microsoft-github-policy-service agree
  • (when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.
@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement
@microsoft-github-policy-service agree company="Qualcomm"

@tirupath-qti

Copy link
Copy Markdown
Contributor Author

@microsoft-github-policy-service agree company="Qualcomm"

@edgchen1 edgchen1 added the ep:QNN issues related to QNN exeution provider label Dec 23, 2025
Comment thread onnxruntime/core/optimizer/qdq_transformer/selectors_actions/shared/utils.cc Outdated
Comment thread onnxruntime/core/optimizer/qdq_transformer/selectors_actions/qdq_selectors.cc Outdated
Comment thread onnxruntime/core/providers/qnn/builder/opbuilder/rms_norm_op_builder.cc Outdated

@tirupath-qti tirupath-qti left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

addressed the review comments in new commit added to this PR.

Comment thread onnxruntime/core/providers/qnn/builder/opbuilder/rms_norm_op_builder.cc Outdated
Comment thread onnxruntime/core/providers/qnn/builder/opbuilder/rms_norm_op_builder.cc Outdated
@edgchen1

edgchen1 commented Jan 8, 2026

Copy link
Copy Markdown
Contributor

/azp run Linux QNN CI Pipeline,Win_TRT_Minimal_CUDA_Test_CI,Windows ARM64 QNN CI Pipeline,Windows GPU Doc Gen CI Pipeline

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 4 pipeline(s).

@tirupath-qti

Copy link
Copy Markdown
Contributor Author

@edgchen1
I addressed the comments. Could you please review and trigger bait.

@edgchen1

Copy link
Copy Markdown
Contributor

/azp run Linux QNN CI Pipeline,Win_TRT_Minimal_CUDA_Test_CI,Windows ARM64 QNN CI Pipeline,Windows GPU Doc Gen CI Pipeline

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 4 pipeline(s).

@edgchen1
edgchen1 merged commit e5e9174 into microsoft:main Jan 13, 2026
100 of 101 checks passed
edgchen1 added a commit that referenced this pull request Jan 13, 2026
yuslepukhin pushed a commit that referenced this pull request Jan 14, 2026
With the RMSNorm registration from
#26853, the op tests are
enabled, and some of them are failing.

This pull request adds several new test cases to the list of broken
tests in the `GetBrokenTests` function. These additions help track
issues related to RMS normalization operations across different tensor
shapes and axis configurations.

Test coverage improvements:

* Added seven new RMS normalization test cases
(`rms_normalization_2d_axis1`, `rms_normalization_2d_axis_negative_1`,
`rms_normalization_3d_axis2_epsilon`,
`rms_normalization_3d_axis_negative_1_epsilon`,
`rms_normalization_4d_axis3`, `rms_normalization_4d_axis_negative_1`,
and `rms_normalization_default_axis`) to the broken tests set in
`TestCase.cc`.
alex-spacemit pushed a commit to spacemit-com/onnxruntime that referenced this pull request Jan 20, 2026
### Description
 - Add standalone RMSNorm op translation in QNN EP
 - Add unit tests



### Motivation and Context
- This fixes the CPU fallback of ONNX RMSNormalization operator when
running inferences using QNN EP
alex-spacemit pushed a commit to spacemit-com/onnxruntime that referenced this pull request Jan 20, 2026
With the RMSNorm registration from
microsoft#26853, the op tests are
enabled, and some of them are failing.

This pull request adds several new test cases to the list of broken
tests in the `GetBrokenTests` function. These additions help track
issues related to RMS normalization operations across different tensor
shapes and axis configurations.

Test coverage improvements:

* Added seven new RMS normalization test cases
(`rms_normalization_2d_axis1`, `rms_normalization_2d_axis_negative_1`,
`rms_normalization_3d_axis2_epsilon`,
`rms_normalization_3d_axis_negative_1_epsilon`,
`rms_normalization_4d_axis3`, `rms_normalization_4d_axis_negative_1`,
and `rms_normalization_default_axis`) to the broken tests set in
`TestCase.cc`.
alex-spacemit pushed a commit to spacemit-com/onnxruntime that referenced this pull request Jan 27, 2026
With the RMSNorm registration from
microsoft#26853, the op tests are
enabled, and some of them are failing.

This pull request adds several new test cases to the list of broken
tests in the `GetBrokenTests` function. These additions help track
issues related to RMS normalization operations across different tensor
shapes and axis configurations.

Test coverage improvements:

* Added seven new RMS normalization test cases
(`rms_normalization_2d_axis1`, `rms_normalization_2d_axis_negative_1`,
`rms_normalization_3d_axis2_epsilon`,
`rms_normalization_3d_axis_negative_1_epsilon`,
`rms_normalization_4d_axis3`, `rms_normalization_4d_axis_negative_1`,
and `rms_normalization_default_axis`) to the broken tests set in
`TestCase.cc`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ep:QNN issues related to QNN exeution provider

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants