Skip to content

Arm backend: Add decomposition pass for aten.ne #10475

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

Merged
merged 1 commit into from
Apr 25, 2025

Conversation

Sebastian-Larsson
Copy link
Collaborator

@Sebastian-Larsson Sebastian-Larsson commented Apr 25, 2025

Add a DecomposeNotEqualPass that rewrites aten.ne and its variants (e.g. aten.ne_, aten.ne.Scalar) into a combination of supported TOSA ops:
ne(x, y) → logical_not(eq(x, y))

This decomposition is necessary since TOSA does not define a NOT_EQUAL operator. The pass ensures compatibility with both MI and BI TOSA profiles by emitting only supported ops (eq and logical_not), and is integrated into the ArmPassManager pipeline accordingly.

cc @digantdesai @freddan80 @per @zingo @oscarandersson8218

Add a DecomposeNotEqualPass that rewrites `aten.ne` and its variants
(e.g. `aten.ne_`, `aten.ne.Scalar`) into a combination of supported TOSA
ops:
    ne(x, y) → logical_not(eq(x, y))

This decomposition is necessary since TOSA does not define a NOT_EQUAL
operator. The pass ensures compatibility with both MI and BI TOSA
profiles by emitting only supported ops (`eq` and `logical_not`), and is
integrated into the ArmPassManager pipeline accordingly.

Change-Id: I095e833702c57f55331aaeeee0189b6a092f9319
Signed-off-by: Sebastian Larsson <[email protected]>
@Sebastian-Larsson Sebastian-Larsson added partner: arm For backend delegation, kernels, demo, etc. from the 3rd-party partner, Arm ciflow/trunk topic: not user facing labels Apr 25, 2025
Copy link

pytorch-bot bot commented Apr 25, 2025

🔗 Helpful Links

🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/10475

Note: Links to docs will display an error until the docs builds have been completed.

✅ No Failures

As of commit c259b10 with merge base 9e59c19 (image):
💚 Looks good so far! There are no failures yet. 💚

This comment was automatically generated by Dr. CI and updates every 15 minutes.

@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Apr 25, 2025
@zingo zingo merged commit b504ba2 into pytorch:main Apr 25, 2025
170 checks passed
@Sebastian-Larsson Sebastian-Larsson deleted the ne_pass branch May 15, 2025 12:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ciflow/trunk CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. partner: arm For backend delegation, kernels, demo, etc. from the 3rd-party partner, Arm topic: not user facing
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants