[ET-VK] Support alias_copy in partitioner by removing it as a redundant op#18408
[ET-VK] Support alias_copy in partitioner by removing it as a redundant op#18408meta-codesync[bot] merged 1 commit intogh/SS-JIA/501/basefrom
Conversation
…nt op Models using QK normalization (e.g., Qwen3) generate aten.alias_copy.default nodes from RMSNorm. Without Vulkan support for this op, these nodes create partition boundaries that cause SpecViolationError during export. Since alias_copy is a no-op identity operation, the fix registers it in op_registry so the partitioner delegates it, and adds it to RemoveRedundantOpsTransform so preprocess removes it before serialization. The C++ runtime never needs to handle alias_copy. Differential Revision: [D97757921](https://our.internmc.facebook.com/intern/diff/D97757921/) [ghstack-poisoned]
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/18408
Note: Links to docs will display an error until the docs builds have been completed. ✅ You can merge normally! (2 Unrelated Failures)As of commit 6264407 with merge base 60d57e5 ( BROKEN TRUNK - The following jobs failed but were present on the merge base:👉 Rebase onto the `viable/strict` branch to avoid these failures
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
…nt op Models using QK normalization (e.g., Qwen3) generate aten.alias_copy.default nodes from RMSNorm. Without Vulkan support for this op, these nodes create partition boundaries that cause SpecViolationError during export. Since alias_copy is a no-op identity operation, the fix registers it in op_registry so the partitioner delegates it, and adds it to RemoveRedundantOpsTransform so preprocess removes it before serialization. The C++ runtime never needs to handle alias_copy. Differential Revision: [D97757921](https://our.internmc.facebook.com/intern/diff/D97757921/) ghstack-source-id: 356136429 Pull Request resolved: #18408
This PR needs a
|
8955ecd
into
gh/SS-JIA/501/base
…nt op (#18461) This PR was created by the merge bot to help merge the original PR into the main branch. ghstack PR number: #18408 by @SS-JIA ^ Please use this as the source of truth for the PR details, comments, and reviews ghstack PR base: https://github.com/pytorch/executorch/tree/gh/SS-JIA/501/base ghstack PR head: https://github.com/pytorch/executorch/tree/gh/SS-JIA/501/head Merge bot PR base: https://github.com/pytorch/executorch/tree/gh/SS-JIA/500/orig Merge bot PR head: https://github.com/pytorch/executorch/tree/gh/SS-JIA/501/orig Differential Revision: [D97757921](https://our.internmc.facebook.com/intern/diff/D97757921/) @diff-train-skip-merge Co-authored-by: ssjia <ssjia@devvm26340.ftw0.facebook.com>
…nt op (#18461) This PR was created by the merge bot to help merge the original PR into the main branch. ghstack PR number: #18408 by @SS-JIA ^ Please use this as the source of truth for the PR details, comments, and reviews ghstack PR base: https://github.com/pytorch/executorch/tree/gh/SS-JIA/501/base ghstack PR head: https://github.com/pytorch/executorch/tree/gh/SS-JIA/501/head Merge bot PR base: https://github.com/pytorch/executorch/tree/gh/SS-JIA/500/orig Merge bot PR head: https://github.com/pytorch/executorch/tree/gh/SS-JIA/501/orig Differential Revision: [D97757921](https://our.internmc.facebook.com/intern/diff/D97757921/) @diff-train-skip-merge Co-authored-by: ssjia <ssjia@devvm26340.ftw0.facebook.com>
Stack from ghstack (oldest at bottom):
Models using QK normalization (e.g., Qwen3) generate aten.alias_copy.default
nodes from RMSNorm. Without Vulkan support for this op, these nodes create
partition boundaries that cause SpecViolationError during export. Since
alias_copy is a no-op identity operation, the fix registers it in op_registry
so the partitioner delegates it, and adds it to RemoveRedundantOpsTransform
so preprocess removes it before serialization. The C++ runtime never needs to
handle alias_copy.
Differential Revision: D97757921