Skip to content

[dtensor] Remove dead code from _pointwise_ops.py#177208

Closed
anshul-si wants to merge 25 commits intogh/anshul-si/108/basefrom
gh/anshul-si/108/head
Closed

[dtensor] Remove dead code from _pointwise_ops.py#177208
anshul-si wants to merge 25 commits intogh/anshul-si/108/basefrom
gh/anshul-si/108/head

Conversation

@anshul-si
Copy link
Copy Markdown
Contributor

@anshul-si anshul-si commented Mar 11, 2026

Stack from ghstack (oldest at bottom):

The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
@pytorch-bot
Copy link
Copy Markdown

pytorch-bot Bot commented Mar 11, 2026

🔗 Helpful Links

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

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

❌ 2 New Failures

As of commit 76825af with merge base dd6252f (image):

NEW FAILURES - The following jobs have failed:

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

@pytorch-bot pytorch-bot Bot added ciflow/inductor ciflow/torchtitan Run TorchTitan integration tests release notes: distributed (dtensor) release notes category labels Mar 11, 2026
anshul-si added a commit that referenced this pull request Mar 11, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: 86f42be
Pull Request resolved: #177208
@anshul-si anshul-si added the ciflow/trunk Trigger trunk jobs on your pull request label Mar 11, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 11, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: 1bef1ab
Pull Request resolved: #177208
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 11, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: f8fe5ff
Pull Request resolved: #177208
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 12, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: 83abc48
Pull Request resolved: #177208
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 12, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: 2a9f506
Pull Request resolved: #177208
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 12, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: eeb58ff
Pull Request resolved: #177208
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 12, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: bdb932f
Pull Request resolved: #177208
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 12, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: ccaf4c2
Pull Request resolved: #177208
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 12, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: 83f6815
Pull Request resolved: #177208
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 12, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: deb252c
Pull Request resolved: #177208
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 12, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

ghstack-source-id: f6d6e2e
Pull Request resolved: #177208
@anshul-si
Copy link
Copy Markdown
Contributor Author

@pytorchbot merge

@pytorchmergebot
Copy link
Copy Markdown
Collaborator

Merge started

Your 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

Advanced Debugging
Check the merge workflow status
here

@pytorchmergebot
Copy link
Copy Markdown
Collaborator

Merge failed

Reason: 1 mandatory check(s) failed. The first few are:

Dig deeper by viewing the failures on hud

Details for Dev Infra team Raised by workflow job

Failing merge rule: Core Maintainers

Copilot AI pushed a commit that referenced this pull request Mar 27, 2026
This reverts commit c311aed.

Reverted #177208 on behalf of https://github.com/georgehong due to Breaking internal signals with Undefined import [21]: Could not find a name `list_pointwise_strategy` defined in module `torch.distributed.tensor._ops._pointwise_ops`. ([comment](#177208 (comment)))

Co-authored-by: Xia-Weiwen <12522207+Xia-Weiwen@users.noreply.github.com>
fmassa added a commit to meta-pytorch/autoparallel that referenced this pull request Mar 27, 2026
* Work around upstream PyTorch view op assertion in propagation rules

PyTorch PR pytorch/pytorch#177973 fixed a latent bug where a comparison shard.dim == in_dim was always False (comparing int to InputDim), making the double-shard submesh_size validation in propagate_shape_and_sharding
dead code. The fix activated that validation, which now raises an AssertionError when a sharded dimension is not divisible by the mesh size (e.g. unflatten nheads=48 on mesh dim size 32).

This is overly strict for our use case — we call propagate_shape_and_sharding with strict_view=False to enumerate all possible sharding strategies, and incompatible ones should be silently skipped rather than raising. We now catch the
AssertionError and skip the iteration, since the replicated variant is already covered by another strategy.

Authored with Claude.

* Fix compatibility with latest PyTorch nightly by replacing removed pointwise_strategy

PyTorch removed pointwise_strategy from torch.distributed.tensor._ops._pointwise_ops in pytorch/pytorch#177208 as part of a dead code cleanup. Our custom native_layer_norm and native_layer_norm_backward rules imported
this function, causing an ImportError on PyTorch nightlies after 2025-03-23.

This replaces the import with a local _pointwise_strategy that recomposes the same behavior from PyTorch's new single-dim strategy primitives (_common_pointwise_single_dim_strategy, _fill_single_dim_strategy_placeholders,
expand_to_full_mesh_op_strategy).

Authored with Claude.

* Bugfix

The issue was that _get_unique_placements from PyTorch's single-dim strategy path asserts each OpStrategy has exactly 1 strategy — but in autoparallel, input OpStrategy objects have multiple strategies (all possible placements). Replaced it
with an inline loop that collects unique placements from all strategies across all inputs.

* One more fix

The fix: _common_pointwise_single_dim_strategy produces num_outputs output entries per strategy row (e.g., 3 for native_layer_norm's out/mean/rstd). Since all pointwise outputs share the same placement, we collapse to a single output entry
before passing to expand_to_full_mesh_op_strategy with input_index=1. This way strategy.output_specs is a single DTensorSpec, matching the old pointwise_strategy behavior — the callers then construct the per-output specs (out, mean, rstd)
themselves.

* Fix stale tensor_meta when reusing sharding placements across mesh configurations in example_dcp

When reconstructing sharding placements from the serialized map for a different mesh, we were only updating .mesh on each DTensorSpec but leaving tensor_meta unchanged. Since the batch size scales with the mesh (bs = 8 * mesh.shape[0]), the
tensor shapes differ between the two phases (256 vs 16 on dim 0), so the specs carried stale shapes from the original configuration.

This was previously harmless — PyTorch's _maybe_unpad_tensor only used logical_dim_size (derived from tensor_meta.shape) to compute the unpad amount, and with even sharding that was a no-op. PyTorch PR
pytorch/pytorch#178210 added a torch._check(orig_size >= logical_dim_size) assertion that now catches the mismatch.

Fix: pull correct tensor_meta from the new AutoParallel instance's computed strategies, which reflect the actual shapes for the current mesh and batch size.

Authored with Claude.
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 31, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.
Pull Request resolved: #177208
Approved by: https://github.com/Skylion007
ghstack dependencies: #177186, #177187
ghstack-source-id: f005cbc
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 31, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.
Pull Request resolved: #177208
Approved by: https://github.com/Skylion007
ghstack dependencies: #177186, #177187
ghstack-source-id: f4e0b82
AaronWang04 pushed a commit to AaronWang04/pytorch that referenced this pull request Mar 31, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.
Pull Request resolved: pytorch#177208
Approved by: https://github.com/Skylion007
ghstack dependencies: pytorch#177186, pytorch#177187
AaronWang04 pushed a commit to AaronWang04/pytorch that referenced this pull request Mar 31, 2026
…7208)"

This reverts commit c311aed.

Reverted pytorch#177208 on behalf of https://github.com/georgehong due to Breaking internal signals with Undefined import [21]: Could not find a name `list_pointwise_strategy` defined in module `torch.distributed.tensor._ops._pointwise_ops`. ([comment](pytorch#177208 (comment)))
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.

[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Mar 31, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.
Pull Request resolved: #177208
Approved by: https://github.com/Skylion007
ghstack dependencies: #177186, #177187
ghstack-source-id: 5a0cf25
@anshul-si anshul-si closed this Apr 1, 2026
pytorch-bot Bot pushed a commit that referenced this pull request Apr 2, 2026
This reverts commit c311aed.

Reverted #177208 on behalf of https://github.com/georgehong due to Breaking internal signals with Undefined import [21]: Could not find a name `list_pointwise_strategy` defined in module `torch.distributed.tensor._ops._pointwise_ops`. ([comment](#177208 (comment)))
anshul-si added a commit that referenced this pull request Apr 2, 2026
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom):

resubmission of #177208
* __->__ #178975



[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Apr 2, 2026
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom):

resubmission of #177208
* __->__ #178975



[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Apr 3, 2026
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom):

resubmission of #177208
* __->__ #178975



[ghstack-poisoned]
anshul-si added a commit that referenced this pull request Apr 3, 2026
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom):

resubmission of #177208
* __->__ #178975



[ghstack-poisoned]
IvanKobzarev pushed a commit to IvanKobzarev/pytorch that referenced this pull request Apr 3, 2026
…7208)"

This reverts commit c311aed.

Reverted pytorch#177208 on behalf of https://github.com/georgehong due to Breaking internal signals with Undefined import [21]: Could not find a name `list_pointwise_strategy` defined in module `torch.distributed.tensor._ops._pointwise_ops`. ([comment](pytorch#177208 (comment)))
pytorchmergebot pushed a commit that referenced this pull request Apr 3, 2026
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom):

resubmission of #177208
* __->__ #178975

Pull Request resolved: #178975
Approved by: https://github.com/Skylion007
weifengpy pushed a commit that referenced this pull request Apr 7, 2026
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom):

resubmission of #177208
* __->__ #178975

Pull Request resolved: #178975
Approved by: https://github.com/Skylion007
nklshy-aws pushed a commit to nklshy-aws/pytorch that referenced this pull request Apr 7, 2026
The old strategy registration path (register_op_strategy-based functions
and data structures) was superseded by the register_single_dim_strategy
infrastructure but never cleaned up. This removes ~550 lines of dead
code including: pointwise_strategy, linear_pointwise_strategy,
copy_strategy, common_pointwise_strategy, single_mesh_dim_* strategy
functions, list_pointwise_strategy, list_linear_pointwise_strategy,
for_each_ops/for_each_linearity_ops/fused_ops lists, and their
associated helper sets and unused imports.

Authored with Claude.
Pull Request resolved: pytorch#177208
Approved by: https://github.com/Skylion007
ghstack dependencies: pytorch#177186, pytorch#177187
nklshy-aws pushed a commit to nklshy-aws/pytorch that referenced this pull request Apr 7, 2026
…7208)"

This reverts commit c311aed.

Reverted pytorch#177208 on behalf of https://github.com/georgehong due to Breaking internal signals with Undefined import [21]: Could not find a name `list_pointwise_strategy` defined in module `torch.distributed.tensor._ops._pointwise_ops`. ([comment](pytorch#177208 (comment)))
nklshy-aws pushed a commit to nklshy-aws/pytorch that referenced this pull request Apr 7, 2026
pytorch-bot Bot pushed a commit that referenced this pull request Apr 10, 2026
Stack from [ghstack](https://github.com/ezyang/ghstack) (oldest at bottom):

resubmission of #177208
* __->__ #178975

Pull Request resolved: #178975
Approved by: https://github.com/Skylion007
@github-actions github-actions Bot deleted the gh/anshul-si/108/head branch May 2, 2026 02:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-no-td Do not run TD on this PR ciflow/dtensor Run DTensor specific tests ciflow/inductor ciflow/torchtitan Run TorchTitan integration tests ciflow/trunk Trigger trunk jobs on your pull request Merged release notes: distributed (dtensor) release notes category Reverted

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants