Skip to content

Arm backend: give the propagation pass backend extension points - #22120

Open
rascani wants to merge 2 commits into
gh/rascani/23/headfrom
gh/rascani/24/head
Open

Arm backend: give the propagation pass backend extension points#22120
rascani wants to merge 2 commits into
gh/rascani/23/headfrom
gh/rascani/24/head

Conversation

@rascani

@rascani rascani commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

PropagateViewCopyPermute is the strongest permute/view mover in the tree, but it
can only be used by Arm: the algorithm reaches directly for tosa.RESCALE,
tosa.TABLE and tosa.SCATTER, for a TOSA compile spec, and for the TOSA fusion
pass. None of that is essential to what it does.

Replace those references with questions the algorithm asks, and answer them in a
TosaPropagationOverrides mixin that the Up and Down passes inherit. The
questions are phrased in terms of the property the algorithm needs rather than
the operator that happens to have it: whether a node is transparent to data
movement, whether an elementwise op has non-layout-carrying extra inputs,
whether a user must not be crossed, whether propagation should run at all, and
which region-cancellation engine to fuse with.

Backends other than Arm can now derive and answer these for themselves. Nothing
is parameterized on Arm's answers -- the base defaults are the neutral ones, and
the TOSA specifics, including the Ethos-U85 gate and the per-tensor rescale
check, live entirely in the mixin.

No behaviour change: the Arm pass suite produces a failure set identical to
merge base (33 pre-existing failures here, all from the absent VGF compiler).

Authored with Claude Code.

[ghstack-poisoned]
@pytorch-bot

pytorch-bot Bot commented Aug 25, 2026

Copy link
Copy Markdown

🔗 Helpful Links

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

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

❌ 43 New Failures, 1 Cancelled Job, 1 Unrelated Failure

As of commit 594713f with merge base e831b3e (image):

NEW FAILURES - The following jobs have failed:

CANCELLED JOB - The following job was cancelled. Please retry:

FLAKY - The following job failed but was likely due to flakiness present on trunk:

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

[ghstack-poisoned]
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. module: arm Issues related to arm backend

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant