Ship a single ROCm version to the nightly getting-started matrix - #8503
Merged
atalman merged 1 commit intoAug 11, 2026
Merged
Conversation
The getting-started page renders one ROCm choice. gen_quick_start_module.py picks it with max() over version strings, and "7.14" < "7.2" lexicographically, so sending both made pytorch.org advertise ROCm 7.2 as the nightly ROCm after 7.14 landed. Send only the newest, chosen with a version-aware key. Scoped to getting-started + nightly: the binary build matrix is untouched, so nightly still builds every ROCm in ROCM_ARCHES_DICT.
|
@atalman is attempting to deploy a commit to the Meta Open Source Team on Vercel. A member of the Team first needs to authorize it. |
huydhn
approved these changes
Aug 11, 2026
This was referenced Aug 12, 2026
atalman
added a commit
that referenced
this pull request
Aug 18, 2026
#8503 made the nightly (preview) getting-started page advertise a single ROCm version, chosen as the newest in the channel — which is now **7.14**. This rolls that back to **7.2** by naming the advertised version explicitly instead of deriving it from `max()`. ```python GETTING_STARTED_ROCM_ARCH = "7.2" ... if getting_started and channel == NIGHTLY: ROCM_ARCHES = [ GETTING_STARTED_ROCM_ARCH if GETTING_STARTED_ROCM_ARCH in ROCM_ARCHES else max(ROCM_ARCHES, key=parse_version) ] ``` Explicit rather than `min()` so the advertised version is a deliberate choice: bumping the preview page to 7.14 later is a one-line change, and it does not silently move when the ROCm set rolls forward. The `max()` fallback keeps the page working if `7.2` is ever dropped from the nightly arches, so we can't end up advertising an index that doesn't exist. ## Effect | matrix | before | after | |---|---|---| | nightly getting-started (preview page) | `rocm7.14` | **`rocm7.2`** | | nightly builds | `rocm7.2`, `rocm7.14` | unchanged | | test / release channels | unchanged | unchanged | Only the getting-started matrix is affected — ROCm 7.14 nightlies are still built, tested and published, just not the version the preview tab hands to users. Verified `https://download.pytorch.org/whl/nightly/rocm7.2/torch/` returns 200, so the advertised command resolves. ## Tests - `test_getting_started_nightly_ships_one_rocm` now asserts the pinned version, plus that it is actually present in the nightly arches. - New `test_getting_started_falls_back_to_newest_rocm` patches the nightly arches to `["7.14", "8.0"]` and asserts the fallback yields `8.0`, so the guard branch is covered rather than assumed. 15 passed. --------- Co-authored-by: Andrey Talman <atalman@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
pytorch.org/get-started/locally/ advertises ROCm 7.2 as the nightly ROCm, even though 7.14 is current.
Why
The getting-started page renders exactly one ROCm choice.
pytorch.github.io'sgen_quick_start_module.pypicks which one with a plainmax()over version strings:So once
ROCM_ARCHES_DICT["nightly"]became["7.2", "7.14"], the page started showing the older one. This never bit before because ROCm minors were single-digit; 7.14 is the first two-digit minor.That is also why pytorch.github.io#2130 landed touching only
releases.jsonand notpublished_versions.json— the generator recomputed the samerocm7.2command it already had, so there was no diff. Re-running or re-deploying it would not help.Fix
Send the page one ROCm version instead of two, chosen with a version-aware key:
Fixing it here rather than in the website's
max()means the page cannot pick wrong, because it is only ever offered one option.Scope
Deliberately narrow —
getting_startedandnightly:['7.14']['7.2', '7.14']unchanged['7.1', '7.2']unchanged['7.2', '7.14']unchangedThe binary build matrix is untouched — nightly still builds every ROCm in
ROCM_ARCHES_DICT. None of thetools/tests/assets/*.jsonsnapshots use--getting-started, and all are byte-identical.Verified end to end by replaying the website's own logic against the new matrix:
Still latent, not addressed here
The
releasechannel getting-started matrix still ships two ROCm versions (7.1,7.2). It happens to be correct today because"7.2" > "7.1"as strings too — but it will break the same way the moment a double-digit minor reaches release. Same one-line treatment applies whenever you want it; left out to keep this scoped to the reported problem.Test plan
Three new tests:
parse_versionorders7.14above7.2; nightly getting-started yields exactly one ROCm and it is the newest; nightly normal builds still yield every ROCm (guards against this leaking into the build matrix).mypy, ruff format and usort clean.