[DTensor] Enable Dijkstra search in sharding propagation#175999
[DTensor] Enable Dijkstra search in sharding propagation#175999wconstab wants to merge 9 commits intogh/wconstab/551/basefrom
Conversation
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. [ghstack-poisoned]
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/175999
Note: Links to docs will display an error until the docs builds have been completed. ❌ 7 New Failures, 2 Unrelated FailuresAs of commit 8700de5 with merge base 1011d3f ( NEW FAILURES - The following jobs have failed:
FLAKY - The following job failed but was likely due to flakiness present on trunk:
UNSTABLE - The following job is marked as unstable, possibly due to flakiness on trunk:
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. ghstack-source-id: da66f22 Pull Request resolved: #175999
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. [ghstack-poisoned]
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. ghstack-source-id: b105032 Pull Request resolved: #175999
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. [ghstack-poisoned]
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. ghstack-source-id: 949e0c9 Pull Request resolved: #175999
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. [ghstack-poisoned]
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. [ghstack-poisoned]
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. [ghstack-poisoned]
|
@pytorchbot merge |
Merge startedYour change will be merged once all checks pass (ETA 0-4 Hours). Learn more about merging in the wiki. Questions? Feedback? Please reach out to the PyTorch DevX Team |
|
@pytorchbot revert -m "Reverted automatically by pytorch's autorevert, to avoid this behaviour add the tag autorevert: disable" -c autorevert This PR is attributed to have caused regression in:
Please investigate and fix the issues. |
|
Claude finished @pytorch-auto-revert[bot]'s task in 8m 26s —— View job Revert Diagnostics for PR #175999
Failing Tests
Is the Revert Legitimate?Yes. The Dijkstra-based search path introduced by this PR has behavioral differences from the full O(S^N) expansion that cause real test failures. Root Cause AnalysisThe PR wires 1. Hard failure: The Dijkstra function at
2. Indirect failures via decomposition For Suggested Fixes
# In try_propagate, replace lines 389-394:
if not all(
is_tensor_shardable(
spec.tensor_meta.shape, spec,
allow_unbacked_sharding=self.allow_unbacked_sharding
)
or (
self.allow_uneven_sharding
and input_spec.placements == spec.placements
)
for spec, input_spec in zip(arg_specs, input_specs)
if spec.tensor_meta is not None
):
return None
# Replace lines 936-940:
# No strategy found via Dijkstra; fall back to full expansion
return None
Fix #2 is the most conservative and least risky change — it turns Dijkstra misses into graceful fallbacks rather than hard failures. Fix #1 addresses the root cause of why valid strategies are being rejected. |
|
@pytorchbot successfully started a revert job. Check the current status here. |
…5999)" This reverts commit f13ba06. Reverted #175999 on behalf of https://github.com/pytorch-auto-revert due to Reverted automatically by pytorch's autorevert, to avoid this behaviour add the tag autorevert: disable ([comment](#175999 (comment)))
|
@wconstab your PR has been successfully reverted. |
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. [ghstack-poisoned]
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. ghstack-source-id: 9867cd0 Pull Request resolved: #175999
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. ghstack-source-id: e264f02 Pull Request resolved: pytorch/pytorch#175999
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. ghstack-source-id: dbbb2c1 Pull Request resolved: pytorch/pytorch#175999
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. [ghstack-poisoned]
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. ghstack-source-id: 31ac13d Pull Request resolved: #175999
|
@pytorchbot rebase |
|
@pytorchbot rebase |
|
@pytorchbot started a rebase job onto refs/remotes/origin/viable/strict. Check the current status here |
|
Rebase failed due to Raised by https://github.com/pytorch/pytorch/actions/runs/23052976057 |
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. [ghstack-poisoned]
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding propagation path. For ops with single-dim strategies, try the PQ search first; fall back to full O(S^N) expansion when it returns None (StridedShard, symbolic shapes, or TupleStrategy inputs). Authored with Claude. ghstack-source-id: 1e047be Pull Request resolved: #175999
Stack from ghstack (oldest at bottom):
Wire _dijkstra_expand_single_dim_strategy_to_mesh into the sharding
propagation path. For ops with single-dim strategies, try the PQ search
first; fall back to full O(S^N) expansion when it returns None
(StridedShard, symbolic shapes, or TupleStrategy inputs).
Authored with Claude.