build(pytorch): enable gfx1250 wheels for release/2.12 and nightly#6735
Conversation
PyTorch release/2.12 now includes gfx1250 support via ROCm/pytorch#3421, so stop filtering gfx125X-dcgpu out of the release matrix alongside release/2.11.
❌ PR Check — Action Required
📖 Need help? See the Policy FAQ for details on every check and how to fix failures. |
|
🚫 Please fix the failed policies before requesting reviews. The following policy checks failed:
The |
Stop filtering gfx125X-dcgpu out of the PyTorch release matrix for release/2.12 and nightly now that ROCm/pytorch#3421 and upstream pytorch#188597 landed gfx1250 support. Also restore configure_pytorch_release_matrix.py from main to drop accidental release/2.9 refactor from the first commit.
jithunnair-amd
left a comment
There was a problem hiding this comment.
Not sure if the unit tests are needed; will leave that to theRock team's judgement
Add pytorch_gitrepo_origin workflow input so gfx1250 release/2.12 test builds can checkout a fork branch with the ck_gemm CMake guard before it lands on ROCm/pytorch release/2.12.
ScottTodd
left a comment
There was a problem hiding this comment.
I'd prefer if this PR was limited to only the changes to build_tools/github_actions/configure_pytorch_release_matrix.py.
- One PR updating
.github/workflows/multi_arch_build_portable_linux_pytorch_wheels.ymland.github/workflows/multi_arch_build_windows_pytorch_wheels.yml - No PR for the extra test (it's not a useful test case when existing test cases already exercise the logic there)
There was a problem hiding this comment.
The changes to this file could be moved to a separate PR. I'd also prefer to keep the Linux and Windows workflows in sync and not add inputs to only one or the other: https://github.com/ROCm/TheRock/blob/main/.github/workflows/multi_arch_build_windows_pytorch_wheels.yml
| def test_filters_exact_unsupported_family(self): | ||
| matrix = m.generate_pytorch_matrix_for_release_type( | ||
| release_type="dev", | ||
| python_versions=["3.12"], | ||
| pytorch_git_refs=["release/2.10"], | ||
| amdgpu_families="gfx94X-dcgpu;gfx125X-dcgpu", | ||
| platform="linux", | ||
| ) | ||
|
|
||
| # gfx125X-dcgpu not supported on the release/2.10 ref, should filter | ||
| self.assertEqual(matrix[0]["amdgpu_families"], "gfx94X-dcgpu") | ||
| matrix_families = ";".join(row["amdgpu_families"] for row in matrix) | ||
| self.assertNotIn("gfx125X", matrix_families) |
There was a problem hiding this comment.
I think the existing tests were sufficient here. We don't need 40 lines of test code for a 2 line change just checking that config file has some values.
Per review feedback, scope this PR down to only the gfx1250 matrix enablement in configure_pytorch_release_matrix.py: - Revert the pytorch_gitrepo_origin input added to multi_arch_build_portable_linux_pytorch_wheels.yml (moving to a separate PR that keeps the Linux and Windows workflows in sync). - Drop the added configure_pytorch_release_matrix_test.py cases; the existing tests already exercise the unsupported-family filtering.
|
@ScottTodd addressed, thanks for the review:
|
Resolve conflict in configure_pytorch_release_matrix.py: keep gfx90c filtering from main while removing gfx125X-dcgpu from release/2.12 and nightly to enable gfx1250 wheels.
JIRA ID : AIPYTORCH-804
Summary
Enable
gfx125X-dcgpu(gfx1250) in TheRock's PyTorch release matrix forrelease/2.12andnightly, matching the existingrelease/2.11behavior.Previously,
configure_pytorch_release_matrix.pyfiltered gfx1250 out of those refs even though PyTorch now supports the arch:release/2.12: [release/2.12] [ROCm] Add initial support for gfx1250 (#188597) pytorch#3421nightly: upstream [ROCm] Add initial support for gfx1250 pytorch/pytorch#188597 (via TheRock's upstream nightly checkout)Changes
gfx125X-dcgpufrom the unsupported-family filter forrelease/2.12andnightlyinconfigure_pytorch_release_matrix.py.Validation
Both the single-arch and multi-arch gfx1250 PyTorch wheel builds are green with this matrix change (Python 3.12, ROCm
7.15.0a20260712, indexrocm.nightlies.amd.com/whl-multi-arch,test_amdgpu_families=none):amdgpu_familiesgfx125X-dcgpugfx94X-dcgpu;gfx125X-dcgpuNotes:
release/2.12andmainbecauseck_gemmis built as a separate library with gfx1250 filtered out ofHIP_ARCHITECTURES; gfx1250 falls back to hipBLASLt at runtime, and CK GEMM stays enabled for gfx942/gfx950.release/2.12) and [ROCm] Disable CK GEMM/SDPA when gfx1250 is the only arch pytorch/pytorch#190683 (main/nightly). These are not required for the multi-arch production builds.