Skip to content

Remove external consumers of TorchComms rccl and rcclx (#224) - #224

Closed
sunguobao wants to merge 1 commit into
facebookresearch:mainfrom
sunguobao:export-D126865303
Closed

sunguobao wants to merge 1 commit into
facebookresearch:mainfrom
sunguobao:export-D126865303

Conversation

@sunguobao

@sunguobao sunguobao commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Summary:
X-link: meta-pytorch/torchrec#4928

Prepare for removing rccl and rcclx from TorchComms by removing their external build and runtime consumers.

Retire DMPCollection's built-in RCCLX sharded-relay integration and its internal PyTorch adapter, utility module, unit tests, and AMD benchmark. The default replica_pg.allreduce_coalesced path handles reductions by dtype, preserves ReduceOp.SUM/ReduceOp.AVG options, and waits for completion. Custom reducer hooks remain available. The use_sharded_relay constructor option is removed, and TorchRec no longer reads NCCL_SHARDED_RELAY_MODE_ENABLE.

Remove PARAM's RCCLX extension dependency on AMD and its advertised rccl/rcclx TorchComms backend choices. Reject AMD selection of the pytorch-torchcomms stack before device or communicator initialization, directing users to --nw-stack pytorch-dist. Native PyTorch distributed benchmarks on AMD continue to use their existing underlying RCCL library dependencies.

Move the RCCLX PARAM smoke test (rcclx_comms_test) off the TorchComms rcclx backend, which this change removes from PARAM, onto --nw-stack pytorch-dist --backend nccl. On AMD, c10d's nccl backend links the RCCLX build that the test's rcclx-dev modifier selects, so the test still runs an all-reduce on RCCLX.

Remove obsolete TorchComms RCCL/RCCLX build-all entries, Buck auto-mode mappings, and the Infer exclusion. Update the DperExporter packaging test's module list to omit the deleted utility.

Behavior change: this retires the built-in sharded-relay optimization. Workloads relying on it can lose throughput and need review before landing. Existing packaged copies of the old TorchRec integration load its dependencies dynamically, so they keep loading and fall back to the default all-reduce. This draft covers external consumers and tooling. TorchComms backend implementation and OSS build/packaging removal follow separately.

Review model_parallel.py and PARAM's backend selection changes first, followed by the build rules and deletion list.

Prepared with Codex and Claude Code assistance.

Differential Revision: D126865303

@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 Oct 22, 2026
@meta-codesync

meta-codesync Bot commented Oct 22, 2026

Copy link
Copy Markdown

@sunguobao has exported this pull request. If you are a Meta employee, you can view the originating Diff in D126865303.

…esearch#224)

Summary:
X-link: meta-pytorch/torchrec#4928


Prepare for removing `rccl` and `rcclx` from TorchComms by removing their external build and runtime consumers.

Retire `DMPCollection`'s built-in RCCLX sharded-relay integration and its internal PyTorch adapter, utility module, unit tests, and AMD benchmark. The default `replica_pg.allreduce_coalesced` path handles reductions by dtype, preserves `ReduceOp.SUM`/`ReduceOp.AVG` options, and waits for completion. Custom reducer hooks remain available. The `use_sharded_relay` constructor option is removed, and TorchRec no longer reads `NCCL_SHARDED_RELAY_MODE_ENABLE`.

Remove PARAM's RCCLX extension dependency on AMD and its advertised `rccl`/`rcclx` TorchComms backend choices. Reject AMD selection of the `pytorch-torchcomms` stack before device or communicator initialization, directing users to `--nw-stack pytorch-dist`. Native PyTorch distributed benchmarks on AMD continue to use their existing underlying RCCL library dependencies.

Move the RCCLX PARAM smoke test (`rcclx_comms_test`) off the TorchComms `rcclx` backend, which this change removes from PARAM, onto `--nw-stack pytorch-dist --backend nccl`. On AMD, c10d's `nccl` backend links the RCCLX build that the test's `rcclx-dev` modifier selects, so the test still runs an all-reduce on RCCLX.

Remove obsolete TorchComms RCCL/RCCLX build-all entries, Buck auto-mode mappings, and the Infer exclusion. Update the `DperExporter` packaging test's module list to omit the deleted utility.

Behavior change: this retires the built-in sharded-relay optimization. Workloads relying on it can lose throughput and need review before landing. Existing packaged copies of the old TorchRec integration load its dependencies dynamically, so they keep loading and fall back to the default all-reduce. This draft covers external consumers and tooling. TorchComms backend implementation and OSS build/packaging removal follow separately.

Review `model_parallel.py` and PARAM's backend selection changes first, followed by the build rules and deletion list.

Prepared with Codex and Claude Code assistance.

Differential Revision: D126865303
@meta-codesync meta-codesync Bot changed the title Remove external consumers of TorchComms rccl and rcclx Remove external consumers of TorchComms rccl and rcclx (#224) Oct 23, 2026
sunguobao added a commit to sunguobao/torchrec that referenced this pull request Oct 23, 2026
…rch#4928)

Summary:

X-link: facebookresearch/param#224

Prepare for removing `rccl` and `rcclx` from TorchComms by removing their external build and runtime consumers.

Retire `DMPCollection`'s built-in RCCLX sharded-relay integration and its internal PyTorch adapter, utility module, unit tests, and AMD benchmark. The default `replica_pg.allreduce_coalesced` path handles reductions by dtype, preserves `ReduceOp.SUM`/`ReduceOp.AVG` options, and waits for completion. Custom reducer hooks remain available. The `use_sharded_relay` constructor option is removed, and TorchRec no longer reads `NCCL_SHARDED_RELAY_MODE_ENABLE`.

Remove PARAM's RCCLX extension dependency on AMD and its advertised `rccl`/`rcclx` TorchComms backend choices. Reject AMD selection of the `pytorch-torchcomms` stack before device or communicator initialization, directing users to `--nw-stack pytorch-dist`. Native PyTorch distributed benchmarks on AMD continue to use their existing underlying RCCL library dependencies.

Move the RCCLX PARAM smoke test (`rcclx_comms_test`) off the TorchComms `rcclx` backend, which this change removes from PARAM, onto `--nw-stack pytorch-dist --backend nccl`. On AMD, c10d's `nccl` backend links the RCCLX build that the test's `rcclx-dev` modifier selects, so the test still runs an all-reduce on RCCLX.

Remove obsolete TorchComms RCCL/RCCLX build-all entries, Buck auto-mode mappings, and the Infer exclusion. Update the `DperExporter` packaging test's module list to omit the deleted utility.

Behavior change: this retires the built-in sharded-relay optimization. Workloads relying on it can lose throughput and need review before landing. Existing packaged copies of the old TorchRec integration load its dependencies dynamically, so they keep loading and fall back to the default all-reduce. This draft covers external consumers and tooling. TorchComms backend implementation and OSS build/packaging removal follow separately.

Review `model_parallel.py` and PARAM's backend selection changes first, followed by the build rules and deletion list.

Prepared with Codex and Claude Code assistance.

Differential Revision: D126865303
@meta-codesync meta-codesync Bot closed this in b05be06 Oct 23, 2026
@meta-codesync meta-codesync Bot added the Merged label Oct 23, 2026
@meta-codesync

meta-codesync Bot commented Oct 23, 2026

Copy link
Copy Markdown

This pull request has been merged in b05be06.

meta-codesync Bot pushed a commit to meta-pytorch/torchrec that referenced this pull request Oct 23, 2026
Summary:
Pull Request resolved: #4928

X-link: facebookresearch/param#224

Prepare for removing `rccl` and `rcclx` from TorchComms by removing their external build and runtime consumers.

Retire `DMPCollection`'s built-in RCCLX sharded-relay integration and its internal PyTorch adapter, utility module, unit tests, and AMD benchmark. The default `replica_pg.allreduce_coalesced` path handles reductions by dtype, preserves `ReduceOp.SUM`/`ReduceOp.AVG` options, and waits for completion. Custom reducer hooks remain available. The `use_sharded_relay` constructor option is removed, and TorchRec no longer reads `NCCL_SHARDED_RELAY_MODE_ENABLE`.

Remove PARAM's RCCLX extension dependency on AMD and its advertised `rccl`/`rcclx` TorchComms backend choices. Reject AMD selection of the `pytorch-torchcomms` stack before device or communicator initialization, directing users to `--nw-stack pytorch-dist`. Native PyTorch distributed benchmarks on AMD continue to use their existing underlying RCCL library dependencies.

Move the RCCLX PARAM smoke test (`rcclx_comms_test`) off the TorchComms `rcclx` backend, which this change removes from PARAM, onto `--nw-stack pytorch-dist --backend nccl`. On AMD, c10d's `nccl` backend links the RCCLX build that the test's `rcclx-dev` modifier selects, so the test still runs an all-reduce on RCCLX.

Remove obsolete TorchComms RCCL/RCCLX build-all entries, Buck auto-mode mappings, and the Infer exclusion. Update the `DperExporter` packaging test's module list to omit the deleted utility.

Behavior change: this retires the built-in sharded-relay optimization. Workloads relying on it can lose throughput and need review before landing. Existing packaged copies of the old TorchRec integration load its dependencies dynamically, so they keep loading and fall back to the default all-reduce. This draft covers external consumers and tooling. TorchComms backend implementation and OSS build/packaging removal follow separately.

Review `model_parallel.py` and PARAM's backend selection changes first, followed by the build rules and deletion list.

Prepared with Codex and Claude Code assistance.

Reviewed By: srinathb-meta

Differential Revision: D126865303

fbshipit-source-id: 632c206381e3f035dd49486e1e6ed2a6a645e0ee
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. Merged meta-exported

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant