Skip to content

[CPU][ARM]Non i32 conv bias support#33072

Merged
alvoron merged 86 commits intoopenvinotoolkit:masterfrom
alvoron:non_i32_conv_bias_support
Feb 13, 2026
Merged

[CPU][ARM]Non i32 conv bias support#33072
alvoron merged 86 commits intoopenvinotoolkit:masterfrom
alvoron:non_i32_conv_bias_support

Conversation

@alvoron
Copy link
Contributor

@alvoron alvoron commented Nov 28, 2025

Details:

The PR enables Convolution non-i32 bias support. Before this PR only i32 Convolution bias was supported (due to ACL limitations).

  • ConvertConvolutionBias has been introduced. This transformation detects specific quantized Convolution patterns followed by Multiply and Add and inserts a Convert to i32 between the constant bias and the Add node.
  • AddTransformation is called for non-convolution bias only on ARM. Convolution bias is handled by ConvertConvolutionBias transformation on ARM.
  • The order of applying scales and shifts has been changed on ARM: bias, scale, fq on ARM vs scale, bias, fq on x86. It's needed to get specific postops order.
  • ConvertConvolutionBias transformation tests have been added to test the transformation.

Tickets:

@github-actions github-actions bot added the category: CPU OpenVINO CPU plugin label Nov 28, 2025
@github-actions github-actions bot added the category: LP transformations OpenVINO Low Precision transformations label Dec 8, 2025
@github-actions github-actions bot removed the category: LP transformations OpenVINO Low Precision transformations label Dec 8, 2025
@alvoron alvoron marked this pull request as ready for review December 8, 2025 19:44
@alvoron alvoron requested review from a team as code owners December 8, 2025 19:44
@alvoron alvoron added the platform: arm OpenVINO on ARM / ARM64 label Dec 19, 2025
@v-Golubev v-Golubev added this to the 2026.1 milestone Feb 12, 2026
@alvoron alvoron enabled auto-merge February 12, 2026 14:38
@alvoron alvoron added the category: LP transformations OpenVINO Low Precision transformations label Feb 12, 2026
@github-actions github-actions bot removed the category: LP transformations OpenVINO Low Precision transformations label Feb 12, 2026
github-merge-queue bot pushed a commit that referenced this pull request Feb 13, 2026
Currently, copyright header consistency is checked manually during code
review (e.g.
[1](#32393 (comment)),
[2](#33072 (comment)),
[3](#32983 (comment)),
[4](#31191 (comment))).
The idea of this PR is to automate this process and save reviewers'
time.

### Details:

- *Introduced GHA workflow that validates copyright headers in C++ and
Python files on PRs. If issues are found, it generates a patch file and
fails the check with clear instructions.*
- *Added some changes to the files which have copyright inconsistency in
order to verify the added scripts*

### Tickets:
 - *N\A*
@alvoron alvoron added this pull request to the merge queue Feb 13, 2026
Merged via the queue into openvinotoolkit:master with commit b88f5e7 Feb 13, 2026
239 of 241 checks passed
@alvoron alvoron deleted the non_i32_conv_bias_support branch February 13, 2026 12:58
Naseer-010 pushed a commit to Naseer-010/openvino that referenced this pull request Feb 18, 2026
Currently, copyright header consistency is checked manually during code
review (e.g.
[1](openvinotoolkit#32393 (comment)),
[2](openvinotoolkit#33072 (comment)),
[3](openvinotoolkit#32983 (comment)),
[4](openvinotoolkit#31191 (comment))).
The idea of this PR is to automate this process and save reviewers'
time.

### Details:

- *Introduced GHA workflow that validates copyright headers in C++ and
Python files on PRs. If issues are found, it generates a patch file and
fails the check with clear instructions.*
- *Added some changes to the files which have copyright inconsistency in
order to verify the added scripts*

### Tickets:
 - *N\A*
Naseer-010 pushed a commit to Naseer-010/openvino that referenced this pull request Feb 18, 2026
### Details:
The PR enables Convolution non-i32 bias support. Before this PR only i32
Convolution bias was supported (due to ACL limitations).
- `ConvertConvolutionBias` has been introduced. This transformation
detects specific quantized Convolution patterns followed by Multiply and
Add and inserts a Convert to i32 between the constant bias and the Add
node.
- `AddTransformation` is called for non-convolution bias only on ARM.
Convolution bias is handled by `ConvertConvolutionBias transformation`
on ARM.
- The order of applying scales and shifts has been changed on ARM:
`bias, scale, fq` on ARM vs `scale, bias, fq` on x86. It's needed to get
specific postops order.
- `ConvertConvolutionBias` transformation tests have been added to test
the transformation.

### Tickets:
 - CVS-180491

---------

Co-authored-by: Vladislav Golubev <vladislav.golubev@intel.com>
wilson-seok pushed a commit to wilson-seok/openvino that referenced this pull request Feb 19, 2026
Currently, copyright header consistency is checked manually during code
review (e.g.
[1](openvinotoolkit#32393 (comment)),
[2](openvinotoolkit#33072 (comment)),
[3](openvinotoolkit#32983 (comment)),
[4](openvinotoolkit#31191 (comment))).
The idea of this PR is to automate this process and save reviewers'
time.

### Details:

- *Introduced GHA workflow that validates copyright headers in C++ and
Python files on PRs. If issues are found, it generates a patch file and
fails the check with clear instructions.*
- *Added some changes to the files which have copyright inconsistency in
order to verify the added scripts*

### Tickets:
 - *N\A*
wilson-seok pushed a commit to wilson-seok/openvino that referenced this pull request Feb 19, 2026
### Details:
The PR enables Convolution non-i32 bias support. Before this PR only i32
Convolution bias was supported (due to ACL limitations).
- `ConvertConvolutionBias` has been introduced. This transformation
detects specific quantized Convolution patterns followed by Multiply and
Add and inserts a Convert to i32 between the constant bias and the Add
node.
- `AddTransformation` is called for non-convolution bias only on ARM.
Convolution bias is handled by `ConvertConvolutionBias transformation`
on ARM.
- The order of applying scales and shifts has been changed on ARM:
`bias, scale, fq` on ARM vs `scale, bias, fq` on x86. It's needed to get
specific postops order.
- `ConvertConvolutionBias` transformation tests have been added to test
the transformation.

### Tickets:
 - CVS-180491

---------

Co-authored-by: Vladislav Golubev <vladislav.golubev@intel.com>
mvafin pushed a commit to mvafin/openvino that referenced this pull request Feb 20, 2026
Currently, copyright header consistency is checked manually during code
review (e.g.
[1](openvinotoolkit#32393 (comment)),
[2](openvinotoolkit#33072 (comment)),
[3](openvinotoolkit#32983 (comment)),
[4](openvinotoolkit#31191 (comment))).
The idea of this PR is to automate this process and save reviewers'
time.

### Details:

- *Introduced GHA workflow that validates copyright headers in C++ and
Python files on PRs. If issues are found, it generates a patch file and
fails the check with clear instructions.*
- *Added some changes to the files which have copyright inconsistency in
order to verify the added scripts*

### Tickets:
 - *N\A*
mvafin pushed a commit to mvafin/openvino that referenced this pull request Feb 20, 2026
### Details:
The PR enables Convolution non-i32 bias support. Before this PR only i32
Convolution bias was supported (due to ACL limitations).
- `ConvertConvolutionBias` has been introduced. This transformation
detects specific quantized Convolution patterns followed by Multiply and
Add and inserts a Convert to i32 between the constant bias and the Add
node.
- `AddTransformation` is called for non-convolution bias only on ARM.
Convolution bias is handled by `ConvertConvolutionBias transformation`
on ARM.
- The order of applying scales and shifts has been changed on ARM:
`bias, scale, fq` on ARM vs `scale, bias, fq` on x86. It's needed to get
specific postops order.
- `ConvertConvolutionBias` transformation tests have been added to test
the transformation.

### Tickets:
 - CVS-180491

---------

Co-authored-by: Vladislav Golubev <vladislav.golubev@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

category: CPU OpenVINO CPU plugin platform: arm OpenVINO on ARM / ARM64

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants