Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ARM CPU] Fix AVGPool tests #17272

Merged
merged 11 commits into from
Apr 28, 2023

Conversation

allnes
Copy link
Contributor

@allnes allnes commented Apr 27, 2023

The combination of parameters: NCHW + CEIL gives an accuracy problem in AvgPool. One workaround is to disable the ACL executor for these parameters. Then OneDNN will run this case in ACL backend as reorder -> NHWC -> reorder and combination NHWC + CEIL without accuracy drop.

@allnes allnes requested review from a team as code owners April 27, 2023 17:40
@github-actions github-actions bot added the category: CPU OpenVINO CPU plugin label Apr 27, 2023
@allnes allnes added the platform: arm OpenVINO on ARM / ARM64 label Apr 27, 2023
DimensionRoundingType round = (poolingAttrs.rounding == op::RoundingType::CEIL) ?
DimensionRoundingType::CEIL : DimensionRoundingType::FLOOR;

if (dataLayout == arm_compute::DataLayout::NCHW && poolingAttrs.rounding == op::RoundingType::CEIL) return false;
Copy link
Contributor

Choose a reason for hiding this comment

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

how does CEIL and NHWC work?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

The combination of parameters: NCHW + CEIL gives an accuracy problem in AvgPool. One workaround is to disable the ACL executor for these parameters. Then OneDNN will run this case in ACL backend as reorder -> NHWC -> reorder and combination NHWC + CEIL without accuracy drop.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@ilya-lavrenov I corrected rounding, for other cases.

@ilya-lavrenov ilya-lavrenov added this to the 2023.1 milestone Apr 27, 2023
Copy link
Contributor

@EgorDuplensky EgorDuplensky left a comment

Choose a reason for hiding this comment

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

Please add the same explanation you added as a comment to the code, into PR message

@ilya-lavrenov ilya-lavrenov merged commit f4d78ff into openvinotoolkit:master Apr 28, 2023
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.

3 participants