Skip to content

Conversation

YufengShi-dudu
Copy link
Collaborator

@YufengShi-dudu YufengShi-dudu commented Sep 23, 2025

  • Previously, aten.where with non-quantized FP inputs can pass the the operator support check in INT profile, get partitioned, and then be removed from the partition due to FP inputs.

  • This will introduce dependency cycles, an invalid re-entry pattern partition -> outside -> partition, to the graph.

  • Workaround: when aten.where(cond, x, y) has FP x and y in INT profile, only partition if both come from dequantize ops (DQ_OPS). Note this may over-reject cases like dq -> op1 -> aten.where -> q that could be partitioned.

  • Don't partition aten.where with unsupported input dtype in FP profle.

Change-Id: I0cef30ffe36eeb6d9c8fae7618649292df242887

cc @digantdesai @freddan80 @per @zingo @oscarandersson8218

- Previously, aten.where with non-quantized FP inputs can pass the
  the operator support check in INT profile, get partitioned, and then
  be removed from the partition due to FP inputs.

- This will introduce dependency cycles, an invalid re-entry pattern
  `partition -> outside -> partition`, to the graph.

- Workaround: when aten.where(cond, x, y) has FP x and y in INT profile,
  only partition if both come from dequantize ops (DQ_OPS). Note this
  may over-reject cases like `dq -> op1 -> aten.where -> q` that could
  be partitioned.

- Don't partition aten.where with unsupported input dtype in FP profle.

Change-Id: I0cef30ffe36eeb6d9c8fae7618649292df242887
Signed-off-by: Yufeng Shi <yufeng.shi@arm.com>
@YufengShi-dudu YufengShi-dudu added partner: arm For backend delegation, kernels, demo, etc. from the 3rd-party partner, Arm ciflow/trunk release notes: none Do not include this in the release notes labels Sep 23, 2025
Copy link

pytorch-bot bot commented Sep 23, 2025

🔗 Helpful Links

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

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

❌ 2 New Failures

As of commit 62a1cb4 with merge base ab31007 (image):

NEW FAILURES - The following jobs have failed:

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

@meta-cla meta-cla 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 Sep 23, 2025
@zingo
Copy link
Collaborator

zingo commented Sep 24, 2025

Arm oobt fail is unrelated and will be fixed by another PR

@zingo zingo merged commit df5bfd5 into pytorch:main Sep 24, 2025
274 of 276 checks passed
@YufengShi-dudu
Copy link
Collaborator Author

@pytorchbot cherry-pick --onto release/1.0 -c regression

pytorchbot pushed a commit that referenced this pull request Sep 24, 2025
…#14506)

- Previously, aten.where with non-quantized FP inputs can pass the the
operator support check in INT profile, get partitioned, and then be
removed from the partition due to FP inputs.

- This will introduce dependency cycles, an invalid re-entry pattern
`partition -> outside -> partition`, to the graph.

- Workaround: when aten.where(cond, x, y) has FP x and y in INT profile,
only partition if both come from dequantize ops (DQ_OPS). Note this may
over-reject cases like `dq -> op1 -> aten.where -> q` that could be
partitioned.

- Don't partition aten.where with unsupported input dtype in FP profle.

Signed-off-by: Yufeng Shi <yufeng.shi@arm.com>
(cherry picked from commit df5bfd5)
@pytorchbot
Copy link
Collaborator

Cherry picking #14506

The cherry pick PR is at #14539 and it is recommended to link a regression cherry pick PR with an issue. The following tracker issues are updated:

Details for Dev Infra team Raised by workflow job

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 release notes: none Do not include this in the release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants