[Backport release/3.0.0] Consolidate multi-GPU documentation - #7458
[Backport release/3.0.0] Consolidate multi-GPU documentation#7458kellyguo11 wants to merge 1 commit into
Conversation
## Description Reworks the multi-GPU guide around a task-first flow modeled after the quickstart and installation pages while retaining the established `train_multigpu` command spelling. - starts with the single-GPU-to-multi-GPU workflow using `train_multigpu` - explains GPU selection, per-rank environment counts, supported RL libraries, and logging - standardizes benchmark workflows as `startup_multigpu`, `runtime_multigpu`, and `training_multigpu` - retains the former hyphenated benchmark names as deprecated, warning-emitting compatibility aliases - clarifies benchmark measurement scope and scaling comparisons - simplifies multi-node setup and keeps focused NCCL troubleshooting guidance - updates OSMO and repository-owned skill references to the underscore convention No new dependencies. ## Type of change - Documentation update - Non-breaking benchmark CLI change with deprecated compatibility aliases ## Release backport - [x] Backport this pull request to the active release branch after it merges into `develop` ## Screenshots Not applicable. ## Validation - [x] `uv run --extra test pytest -q source/isaaclab/test/benchmark/test_multigpu_launcher.py source/isaaclab/test/benchmark/test_distributed.py` (22 passed) - [x] `uv run isaaclab -f` - [x] `uv run --no-project python tools/skills/cli.py check` (21 skills validated) - [x] `uv run --isolated --extra test -- make -C docs current-docs` (warning-free) ## Checklist - [x] I have read and understood the contribution guidelines - [x] I have run the pre-commit checks - [x] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [x] I have added tests that prove canonical and compatibility command dispatch - [x] I have added changelog fragments for every touched source package - [x] My name already exists in `CONTRIBUTORS.md` --------- Signed-off-by: Mustafa H <34825877+StafaH@users.noreply.github.com> Co-authored-by: Antoine RICHARD <antoiner@nvidia.com> (cherry picked from commit c1b0cbd)
Greptile SummaryThe PR consolidates the multi-GPU guide and standardizes benchmark workflow names while preserving deprecated compatibility aliases.
Confidence Score: 5/5The PR appears safe to merge, with canonical and deprecated benchmark command forms resolving consistently. The naming transition preserves existing CLI behavior through explicit compatibility aliases, and the updated documentation, diagnostics, and tests align with the implemented launcher contract. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart LR
CLI[isaaclab benchmark] --> Parse{Workflow spelling}
Parse -->|*_multigpu| Canonical[Canonical workflow]
Parse -->|*-multigpu| Warning[Emit deprecation warning]
Warning --> Canonical
Canonical --> Base[Resolve base workflow]
Base --> Launcher[Multi-GPU launcher]
Launcher --> Workers[One benchmark worker per GPU]
Reviews (1): Last reviewed commit: "[Workflow/Docs] Consolidate multi-GPU do..." | Re-trigger Greptile |
There was a problem hiding this comment.
Isaac Lab Review Bot
This backport standardizes multi-GPU benchmark workflow names on the _multigpu suffix, preserves the former hyphenated names as deprecated aliases, and consolidates multi-GPU training and benchmark guidance in multi_gpu.rst.
- Design and architecture: The documentation consolidation creates a clear canonical guide while retaining focused links from the benchmark and quick-start pages. Compatibility handling remains localized to CLI dispatch and does not alter the launcher or per-rank worker architecture.
- API: The CLI migration preserves existing commands: canonical and legacy workflow names are accepted, legacy names emit a migration message, and both paths delegate to the same launcher with unchanged remaining arguments. The changelog documents the replacement names, and the affected Sphinx references shown in the patch use the new label.
- Implementation: Dispatch, suffix constants, launcher configuration, help and error text, documentation, and focused tests are consistent with the naming change. The documented distributed-result scopes and unsupported training options match the implementation. A non-blocking tradeoff is that deprecation is reported with a direct stderr message rather than Python's warnings framework, so callers cannot filter or escalate it through warning controls.
No blocking issues. No inline issue met the actionable-evidence threshold; the assessment above records the review feedback.
Automated review; human maintainers own approval decisions.
Description
Backports #7182 to
release/3.0.0by cherry-picking merged commitc1b0cbd25c488d3c30d070636f8b402e9cbcdc17.This consolidates the multi-GPU guide, standardizes benchmark workflows on
startup_multigpu,runtime_multigpu, andtraining_multigpu, and retains the hyphenated forms as deprecated compatibility aliases.No new dependencies.
Type of change
Release backport
Not applicable; this PR targets the active release branch.
Validation
uv run isaaclab -fequivalent withISAACLAB_CHANGELOG_BASE_REF=release/3.0.0: passedThe host was macOS, while the project lock and
ovstagewheel support Linux/Windows. Validation therefore used a temporary uv-managed Python 3.12 environment; Sphinx autodoc mocked only the unavailable Linuxovstagemodule.Checklist
CONTRIBUTORS.md