Skip to content

disable fuse_horizontal for dynamic shapes#4853

Open
shivadbhavsar wants to merge 2 commits into
developfrom
fix_fuse_horiz_for_dyn
Open

disable fuse_horizontal for dynamic shapes#4853
shivadbhavsar wants to merge 2 commits into
developfrom
fix_fuse_horiz_for_dyn

Conversation

@shivadbhavsar
Copy link
Copy Markdown
Contributor

@shivadbhavsar shivadbhavsar commented May 6, 2026

Motivation

The fuse_horizontal relies on shape.lens() which is not supported for dynamic shapes currently. We will rework this logic with symbolic shapes before re-enabling.

Technical Details

#4844

Changelog Category

Add a CHANGELOG.md entry for any option other than Not Applicable

    • Added: New functionality.
    • Changed: Changes to existing functionality.
    • Removed: Functionality or support that has been removed. (Compared to a previous release)
    • Optimized: Component performance that has been optimized or improved.
    • Resolved Issues: Known issues from a previous version that have been resolved.
    • Not Applicable: This PR is not to be included in the changelog.

@shivadbhavsar shivadbhavsar requested a review from causten as a code owner May 6, 2026 23:05
Copilot AI review requested due to automatic review settings May 6, 2026 23:05
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Disables the fuse_horizontal compiler pass in GPU compilation when “full dynamic” mode is enabled, to avoid failures caused by fuse_horizontal calling shape.lens() (which throws for dynamic shapes). This aligns the GPU pass pipeline with current dynamic-shape limitations while symbolic-shape support is reworked (per #4844).

Changes:

  • Gate fuse_horizontal{} behind enable_pass(disabled(MIGRAPHX_ENABLE_FULL_DYNAMIC{}), ...) in the GPU target pass list.

layout_convolution{.channels_last = enabled(MIGRAPHX_ENABLE_NHWC{})},
dead_code_elimination{},
fuse_horizontal{},
enable_pass(disabled(MIGRAPHX_ENABLE_FULL_DYNAMIC{}), fuse_horizontal{}),
layout_convolution{.channels_last = enabled(MIGRAPHX_ENABLE_NHWC{})},
dead_code_elimination{},
fuse_horizontal{},
enable_pass(disabled(MIGRAPHX_ENABLE_FULL_DYNAMIC{}), fuse_horizontal{}),
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants