diff --git a/.github/workflows/multi_arch_build_portable_linux_pytorch_wheels_ci.yml b/.github/workflows/multi_arch_build_portable_linux_pytorch_wheels_ci.yml index 8ee2d0d937c..362d6973e6d 100644 --- a/.github/workflows/multi_arch_build_portable_linux_pytorch_wheels_ci.yml +++ b/.github/workflows/multi_arch_build_portable_linux_pytorch_wheels_ci.yml @@ -30,7 +30,7 @@ on: pytorch_git_ref: description: PyTorch ref to checkout (typically "release/X.Y") type: string - default: "release/2.10" + default: "release/2.11" rocm_package_find_links_url: description: URL for pip --find-links to install ROCm packages (flat page; use this OR rocm_package_index_url) type: string @@ -81,7 +81,7 @@ on: pytorch_git_ref: description: PyTorch ref to checkout (typically "release/X.Y") type: string - default: "release/2.10" + default: "release/2.11" rocm_package_find_links_url: description: URL for pip --find-links to install ROCm packages (flat page; use this OR rocm_package_index_url) type: string diff --git a/.github/workflows/multi_arch_build_windows_pytorch_wheels_ci.yml b/.github/workflows/multi_arch_build_windows_pytorch_wheels_ci.yml index 5300fb89428..451c5e0a933 100644 --- a/.github/workflows/multi_arch_build_windows_pytorch_wheels_ci.yml +++ b/.github/workflows/multi_arch_build_windows_pytorch_wheels_ci.yml @@ -29,7 +29,7 @@ on: pytorch_git_ref: description: PyTorch ref to checkout (typically "release/X.Y") type: string - default: "release/2.10" + default: "release/2.11" rocm_package_find_links_url: description: URL for pip --find-links to install ROCm packages (flat page; use this OR rocm_package_index_url) type: string @@ -80,7 +80,7 @@ on: pytorch_git_ref: description: PyTorch ref to checkout (typically "release/X.Y") type: string - default: "release/2.10" + default: "release/2.11" rocm_package_find_links_url: description: URL for pip --find-links to install ROCm packages (flat page; use this OR rocm_package_index_url) type: string diff --git a/RELEASES.md b/RELEASES.md index 39415b43fea..c9ab1f16365 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -326,7 +326,6 @@ Select your GPU target using the `[device-*]` extras from the > | 2.13 | 2.11 | 0.28 | 1.13 | > | 2.12 | 2.11 | 0.27 | 1.12 | > | 2.11 | 2.11 | 0.26 | 1.11 | -> | 2.10 | 2.10 | 0.25 | 1.10 | > > For example, `torch` 2.11 and compatible wheels can be installed by specifying > diff --git a/build_tools/github_actions/configure_pytorch_release_matrix.py b/build_tools/github_actions/configure_pytorch_release_matrix.py index 10e6c686b4f..87b11df915c 100644 --- a/build_tools/github_actions/configure_pytorch_release_matrix.py +++ b/build_tools/github_actions/configure_pytorch_release_matrix.py @@ -30,13 +30,11 @@ # this set with additional refs (see RELEASE_PYTORCH_REFS). RELEASE_STABLE_PYTORCH_REFS = { "linux": [ - "release/2.10", "release/2.11", "release/2.12", "release/2.13", ], "windows": [ - "release/2.10", "release/2.11", "release/2.12", "release/2.13", @@ -50,17 +48,14 @@ } CI_PYTORCH_REFS = { - "linux": ["release/2.10", "release/2.11", "release/2.12", "release/2.13"], - "windows": ["release/2.10"], + "linux": ["release/2.11", "release/2.12", "release/2.13"], + "windows": ["release/2.11"], } # Unknown explicit refs are left unfiltered so bring-up branches can opt into # new GPU families before the default PyTorch refs support them. UNSUPPORTED_AMDGPU_FAMILIES = { "linux": { - # gfx125x not supported for PyTorch 2.10. - # gfx90c only supported in PyTorch 2.12+. - "release/2.10": {"gfx125X-dcgpu", "gfx90c"}, # gfx125x supported for PyTorch 2.11 via https://github.com/ROCm/pytorch/pull/3346. # gfx90c only supported in PyTorch 2.12+. "release/2.11": {"gfx90c"}, @@ -74,7 +69,6 @@ "nightly": {"gfx90c"}, }, "windows": { - "release/2.10": {"gfx90c"}, "release/2.11": {"gfx90c"}, "release/2.12": {"gfx90c"}, "release/2.13": {"gfx90c"}, diff --git a/build_tools/github_actions/generate_pytorch_source_manifest.py b/build_tools/github_actions/generate_pytorch_source_manifest.py index be91e5e6d47..f8201cee5f5 100644 --- a/build_tools/github_actions/generate_pytorch_source_manifest.py +++ b/build_tools/github_actions/generate_pytorch_source_manifest.py @@ -39,7 +39,6 @@ ) DEFAULT_PYTORCH_GIT_REFS = [ - "release/2.10", "release/2.11", "release/2.12", "release/2.13", diff --git a/build_tools/github_actions/summarize_test_pytorch_workflow.py b/build_tools/github_actions/summarize_test_pytorch_workflow.py index e4b41fd420e..c99c77fd04f 100755 --- a/build_tools/github_actions/summarize_test_pytorch_workflow.py +++ b/build_tools/github_actions/summarize_test_pytorch_workflow.py @@ -12,7 +12,7 @@ The script can be tested locally with inputs like this: python ./build_tools/github_actions/summarize_test_pytorch_workflow.py \ - --pytorch-git-ref=release/2.10 \ + --pytorch-git-ref=release/2.11 \ --index-url=https://rocm.nightlies.amd.com/whl-multi-arch/ \ --device-extras=device-gfx942 \ --torch-version=2.10.0+rocm7.12.0a20260501 diff --git a/build_tools/github_actions/tests/configure_multi_arch_ci_test.py b/build_tools/github_actions/tests/configure_multi_arch_ci_test.py index 2db10f60034..70014390429 100644 --- a/build_tools/github_actions/tests/configure_multi_arch_ci_test.py +++ b/build_tools/github_actions/tests/configure_multi_arch_ci_test.py @@ -1120,11 +1120,6 @@ def test_build_config_includes_pytorch_build_matrix(self): self.assertEqual( result.linux.pytorch_build_matrix, [ - { - "python_version": "3.12", - "pytorch_git_ref": "release/2.10", - "amdgpu_families": "gfx94X-dcgpu", - }, { "python_version": "3.12", "pytorch_git_ref": "release/2.11", @@ -1147,7 +1142,7 @@ def test_build_config_includes_pytorch_build_matrix(self): [ { "python_version": "3.12", - "pytorch_git_ref": "release/2.10", + "pytorch_git_ref": "release/2.11", "amdgpu_families": "gfx110X-all", } ], diff --git a/build_tools/github_actions/tests/configure_pytorch_release_matrix_test.py b/build_tools/github_actions/tests/configure_pytorch_release_matrix_test.py index 49225f7a681..ffb160d8cd4 100644 --- a/build_tools/github_actions/tests/configure_pytorch_release_matrix_test.py +++ b/build_tools/github_actions/tests/configure_pytorch_release_matrix_test.py @@ -31,11 +31,6 @@ def test_ci_linux_uses_reduced_matrix(self): self.assertEqual( matrix, [ - { - "python_version": "3.12", - "pytorch_git_ref": "release/2.10", - "amdgpu_families": "gfx94X-dcgpu", - }, { "python_version": "3.12", "pytorch_git_ref": "release/2.11", @@ -70,7 +65,7 @@ def test_ci_windows_uses_reduced_matrix(self): [ { "python_version": "3.12", - "pytorch_git_ref": "release/2.10", + "pytorch_git_ref": "release/2.11", "amdgpu_families": "gfx110X-all", }, ], @@ -98,7 +93,7 @@ def test_explicit_versions_and_refs_narrow_matrix(self): def test_filters_exact_unsupported_family(self): # Unsupported families are filtered while supported ones are kept. - for pytorch_git_ref in ("release/2.10", "release/2.13"): + for pytorch_git_ref in ("release/2.13",): with self.subTest(pytorch_git_ref=pytorch_git_ref): matrix = m.generate_pytorch_matrix_for_release_type( release_type="dev", @@ -182,7 +177,7 @@ def test_generated_rows_cover_workflow_matrix_inputs(self): matrix = m.generate_pytorch_matrix_for_release_type( release_type=release_type, python_versions=["3.12"], - pytorch_git_refs=["release/2.10"], + pytorch_git_refs=["release/2.11"], amdgpu_families="gfx94X-dcgpu", platform=platform, ) diff --git a/build_tools/github_actions/tests/summarize_test_pytorch_workflow_test.py b/build_tools/github_actions/tests/summarize_test_pytorch_workflow_test.py index 80090557cf3..8ac49c1955f 100644 --- a/build_tools/github_actions/tests/summarize_test_pytorch_workflow_test.py +++ b/build_tools/github_actions/tests/summarize_test_pytorch_workflow_test.py @@ -17,8 +17,8 @@ def _make_args( index_url, device_extras="", - torch_version="2.10.0+rocm7.12.0a20260501", - pytorch_git_ref="release/2.10", + torch_version="2.11.0+rocm7.12.0a20260501", + pytorch_git_ref="release/2.11", python_version="3.12", ): return argparse.Namespace( diff --git a/external-builds/pytorch/README.md b/external-builds/pytorch/README.md index dd0cf797e74..a9e1afdc4f9 100644 --- a/external-builds/pytorch/README.md +++ b/external-builds/pytorch/README.md @@ -83,7 +83,7 @@ See the following table for how each version is supported: | 2.12 alpha | Previously built | Previously built | | 2.11 | ✅ Using downstream ROCm/pytorch fork
| ✅ Using downstream ROCm/pytorch fork
| | 2.11 alpha | Previously built | Previously built | -| 2.10 | ✅ Using downstream ROCm/pytorch fork
| ✅ Using downstream ROCm/pytorch fork
| +| 2.10 | Previously built | Previously built | | 2.10 alpha | Previously built | Previously built | | 2.9 | Previously built | Previously built | | 2.9 alpha | Previously built | Previously built | @@ -530,13 +530,13 @@ which can then be read by the checkout script. python build_tools/github_actions/generate_pytorch_source_manifest.py \ --rocm-version 7.13.0a20260501 \ --output external-builds/pytorch/pytorch_manifest.json \ - --pytorch-git-refs "release/2.10" + --pytorch-git-refs "release/2.11" # Multiple versions (computed filenames in a directory): python build_tools/github_actions/generate_pytorch_source_manifest.py \ --rocm-version 7.13.0a20260501 \ --manifest-dir external-builds/pytorch/manifests/ \ - --pytorch-git-refs "release/2.10 release/2.11 nightly" + --pytorch-git-refs "release/2.11 release/2.12 nightly" # The target platform defaults to the current host. Pass it explicitly when # generating a manifest for another platform: @@ -544,13 +544,13 @@ python build_tools/github_actions/generate_pytorch_source_manifest.py \ --rocm-version 7.13.0a20260501 \ --platform windows \ --output manifest.json \ - --pytorch-git-refs "release/2.10" + --pytorch-git-refs "release/2.11" # Only pytorch (skip audio/vision/triton/apex): python build_tools/github_actions/generate_pytorch_source_manifest.py \ --rocm-version 7.13.0a20260501 \ --output external-builds/pytorch/manifest.json \ - --pytorch-git-refs "release/2.10" \ + --pytorch-git-refs "release/2.11" \ --projects pytorch ``` diff --git a/external-builds/pytorch/skip_tests/generic.py b/external-builds/pytorch/skip_tests/generic.py index d1446f00741..3608df7f618 100644 --- a/external-builds/pytorch/skip_tests/generic.py +++ b/external-builds/pytorch/skip_tests/generic.py @@ -221,7 +221,7 @@ # We should fix the test to fail/skip more gracefully. # subprocess.CalledProcessError: Command '['where', 'cl']' returned non-zero exit status 1. "test_multi_grad_all_hooks", - # This is/was also failing on gfx942 linux, see the 2.10 skip test file. + # This is/was also failing on gfx942 linux, see the per-release skip test files. # AssertionError: "Simulate error" does not match "grad can be implicitly created only for scalar outputs" "test_reentrant_parent_error_on_cpu_cuda", ], diff --git a/external-builds/pytorch/skip_tests/pytorch_2.10.py b/external-builds/pytorch/skip_tests/pytorch_2.10.py deleted file mode 100644 index 24d6b3d3585..00000000000 --- a/external-builds/pytorch/skip_tests/pytorch_2.10.py +++ /dev/null @@ -1,133 +0,0 @@ -# Copyright Advanced Micro Devices, Inc. -# SPDX-License-Identifier: MIT - -skip_tests = { - "common": { - "autograd": [ - # AssertionError: Booleans mismatch: False is not True - "test_warn_on_accumulate_grad_stream_mismatch_flag_cuda", - ], - "cuda": [ - # AttributeError: module 'torch.backends.cudnn.rnn' has no attribute 'fp32_precision' - "test_fp32_precision_with_float32_matmul_precision", - # AttributeError: module 'torch.backends.cudnn.rnn' has no attribute 'fp32_precision' - "test_fp32_precision_with_tf32", - # AttributeError: module 'torch.backends.cudnn.rnn' has no attribute 'fp32_precision' - "test_invalid_status_for_legacy_api", - # passes on single run, crashes if run in a group - # TypeError: 'CustomDecompTable' object is not a mapping - "test_memory_compile_regions", - # AssertionError: False is not true - "test_memory_plots", - # AssertionError: Booleans mismatch: False is not True - "test_memory_plots_free_segment_stack", - # FileNotFoundError: [Errno 2] No such file or directory: '/github/home/.cache//flamegraph.pl' - "test_memory_snapshot", - # AssertionError: String comparison failed: 'test_memory_snapshot' != 'foo' - "test_memory_snapshot_script", - # AssertionError: False is not true - "test_memory_snapshot_with_cpp", - # AssertionError: Scalars are not equal! - "test_mempool_ctx_multithread", - # RuntimeError: Error building extension 'dummy_allocator' - "test_mempool_empty_cache_inactive", - # RuntimeError: Error building extension 'dummy_allocator_v1' - "test_mempool_limited_memory_with_allocator", - # OSError: libhiprtc.so: cannot open shared object file: No such file or directory - # File "/home/tester/TheRock/.venv/lib/python3.12/site-packages/torch/cuda/_utils.py", line 57, in _get_hiprtc_library - # lib = ctypes.CDLL("libhiprtc.so") - "test_compile_kernel", - "test_compile_kernel_advanced", - "test_compile_kernel_as_custom_op", - "test_compile_kernel_cuda_headers", - "test_compile_kernel_custom_op_validation", - "test_compile_kernel_dlpack", - "test_compile_kernel_double_precision", - "test_compile_kernel_large_shared_memory", - "test_compile_kernel_template", - # torch._dynamo.exc.BackendCompilerFailed: backend='aot_eager' raised: - # TypeError: 'CustomDecompTable' object is not a mapping - "test_record_stream_on_shifted_view", - # AssertionError: Scalars are not close! - "test_allocator_settings", - ], - "torch": [ - "test_index_add_correctness", - # AssertionError: False is not true - "test_cpp_warnings_have_python_context_cuda", - ], - }, - "gfx94": { - "autograd": [ - # fixed or just good with no caching? - # "test_reentrant_parent_error_on_cpu_cuda", - # "test_multi_grad_all_hooks", - # - # Test run says they are good???? - # # AttributeError: 'torch._C._autograd.SavedTensor' object has no attribute 'data' - # "test_get_data_and_hooks_from_raw_saved_variable ", # new? - # # AssertionError: tensor(1., grad_fn=) is not None -- weakref not working? - # "test_custom_function_saving_mutated_view_no_leak", # new? - # # - # # RuntimeError: Output 0 of IdOneOutputBackward is a view and is being modified inplace. This view was created inside a custom - # # Function (or because an input was returned as-is) and the autograd logic to handle view+inplace would override the custom backward - # # associated with the custom Function, leading to incorrect gradients. This behavior is forbidden. You can fix this by cloning the output - # # of the custom Function. - # "test_autograd_simple_views_python", - "test_grad_dtype", - ], - "cuda": [ - # "test_cpp_memory_snapshot_pickle", - "test_graph_concurrent_replay ", - # - # - # for whatever reason these are also flaky: if run standalone they pass? - # AttributeError: Unknown attribute allow_bf16_reduced_precision_reduction_split_k - "test_cublas_allow_bf16_reduced_precision_reduction_get_set", - # AttributeError: Unknown attribute allow_fp16_reduced_precision_reduction_split_k - "test_cublas_allow_fp16_reduced_precision_reduction_get_set", - # AttributeError: Unknown attribute allow_bf16_reduced_precision_reduction_split_k - "test_cublas_allow_bf16_reduced_precision_reduction_get_set", - # AttributeError: Unknown attribute allow_fp16_reduced_precision_reduction_split_k - "test_cublas_allow_fp16_reduced_precision_reduction_get_set", - ], - "nn": [ - # Is now skipped.. on pytorch side - # RuntimeError: miopenStatusUnknownError - # MIOpen(HIP): Warning [BuildHip] In file included from /tmp/comgr-f75870/input/MIOpenDropoutHIP.cpp:32: - # /tmp/comgr-f75870/include/miopen_rocrand.hpp:45:10: fatal error: 'rocrand/rocrand_xorwow.h' file not found - # 45 | #include - # | ^~~~~~~~~~~~~~~~~~~~~~~~~~ - "test_cudnn_rnn_dropout_states_device", - ], - "torch": [ - "test_terminate_handler_on_crash", # flaky !! hangs forever or works... can need up to 30 sec to pass - ], - }, - "windows": { - "torch": [ - # Windows fatal exception: access violation - # pointing to common_cuda.py `_create_scaling_models_optimizers` - "test_grad_scaling_autocast_foreach0_fused0_Adam_cuda_float32", - ], - "cuda": [ - # Flaky? See https://github.com/ROCm/TheRock/issues/3724 - # ROCm allocator does not raise OOM in the same path as CUDA - # AssertionError: RuntimeError not raised - "test_out_of_memory_retry", - # This test uses subprocess.run, so it hangs. - # See https://github.com/ROCm/TheRock/issues/999. - "test_pinned_memory_use_background_threads", - # Windows fatal exception: access violation - # pointing to amdhip64_7.dll ? (happened on CI machine but not local?) - # Concerning... the code is just this: - # x = [torch.randn(4, 4).cuda(), torch.cuda.FloatTensor()] - # with tempfile.NamedTemporaryFile() as f: - # torch.save(x, f) - # f.seek(0) - # x_copy = torch.load(f) - "test_serialization_array_with_empty", - "test_serialization_array_with_storage", - ], - }, -} diff --git a/external-builds/pytorch/skip_tests/pytorch_2.13.py b/external-builds/pytorch/skip_tests/pytorch_2.13.py index 730ab06eb19..1b9d824adc3 100644 --- a/external-builds/pytorch/skip_tests/pytorch_2.13.py +++ b/external-builds/pytorch/skip_tests/pytorch_2.13.py @@ -2,7 +2,7 @@ # SPDX-License-Identifier: MIT # Known failures on the PyTorch 2.13 wheels. These are already tracked in the -# other version skip files (pytorch_2.10.py - pytorch_2.12.py) and/or generic.py, +# other version skip files (pytorch_2.11.py - pytorch_2.12.py) and/or generic.py, # but those exclusions are not picked up for the 2.13 version, so they are # mirrored here. See # https://github.com/ROCm/TheRock/issues/5596