From 6389b0b22ae1a12e9b50b3abacfaf1a2129021fa Mon Sep 17 00:00:00 2001 From: gasoonjia Date: Tue, 29 Sep 2026 13:29:57 -0700 Subject: [PATCH] Pin ROCm TorchAO nightly separately to unbreak ROCm CI #23184 bumped TORCHAO_NIGHTLY_VERSION to 0.19.0.dev20260907, which has no rocm7.2 build, so both ROCm jobs fail with a 403 when fetching the TorchAO wheel. Pin ROCm to 0.19.0.dev20260805, the newest rocm7.2 nightly with compiled kernels, and keep the voxtral job's full ExecuTorch install from trying to satisfy the torchao>=0.19.0.dev20260907 bound. --- .ci/scripts/test-rocm-aoti.sh | 4 ++-- .ci/scripts/test-rocm-voxtral.sh | 21 ++++++++++++++++++--- install_requirements.py | 3 +++ 3 files changed, 23 insertions(+), 5 deletions(-) diff --git a/.ci/scripts/test-rocm-aoti.sh b/.ci/scripts/test-rocm-aoti.sh index 00592bc4bf6..b51fdcec068 100644 --- a/.ci/scripts/test-rocm-aoti.sh +++ b/.ci/scripts/test-rocm-aoti.sh @@ -24,10 +24,10 @@ export TORCHINDUCTOR_COMPILE_THREADS=1 read -r TORCH_VERSION TORCHAO_VERSION < <( python - <<'PY' -from install_requirements import TORCHAO_NIGHTLY_VERSION +from install_requirements import ROCM_TORCHAO_NIGHTLY_VERSION from torch_pin import TORCH_VERSION -print(TORCH_VERSION, TORCHAO_NIGHTLY_VERSION) +print(TORCH_VERSION, ROCM_TORCHAO_NIGHTLY_VERSION) PY ) # TorchAO ROCm wheels are not exposed by the per-version pip index. diff --git a/.ci/scripts/test-rocm-voxtral.sh b/.ci/scripts/test-rocm-voxtral.sh index eb00c1efc73..a47e50a4971 100644 --- a/.ci/scripts/test-rocm-voxtral.sh +++ b/.ci/scripts/test-rocm-voxtral.sh @@ -35,10 +35,10 @@ export HF_TOKEN read -r TORCH_VERSION TORCHAO_VERSION < <( python - <<'PY' -from install_requirements import TORCHAO_NIGHTLY_VERSION +from install_requirements import ROCM_TORCHAO_NIGHTLY_VERSION from torch_pin import TORCH_VERSION -print(TORCH_VERSION, TORCHAO_NIGHTLY_VERSION) +print(TORCH_VERSION, ROCM_TORCHAO_NIGHTLY_VERSION) PY ) # TorchAO ROCm wheels are not exposed by the per-version pip index. @@ -48,7 +48,22 @@ python -m pip install "torch==${TORCH_VERSION}" \ --index-url "${PYTORCH_ROCM_INDEX}" python -m pip install -r requirements-dev.txt \ "${TORCHAO_WHEEL}" -python -m pip install --editable . --no-build-isolation +# ExecuTorch requires torchao>=TORCHAO_NIGHTLY_VERSION, which has no ROCm build, so +# install its other dependencies separately to keep the ROCm TorchAO wheel in place. +python -m pip install --editable . --no-build-isolation --no-deps +python - <<'PY' >"${VOXTRAL_CI_TMPDIR}/executorch-deps.txt" +from importlib.metadata import requires + +from packaging.requirements import Requirement + +for spec in requires("executorch") or []: + req = Requirement(spec) + if req.name == "torchao": + continue + if req.marker is None or req.marker.evaluate({"extra": ""}): + print(spec) +PY +python -m pip install -r "${VOXTRAL_CI_TMPDIR}/executorch-deps.txt" if ! command -v conda >/dev/null; then echo "The ROCm CI image must provide conda for its runtime libraries" diff --git a/install_requirements.py b/install_requirements.py index 237711e83ab..fccd65eaead 100644 --- a/install_requirements.py +++ b/install_requirements.py @@ -19,6 +19,9 @@ TORCHAO_URL_BASE = "https://download.pytorch.org/whl/nightly" TORCHAO_NIGHTLY_VERSION = "0.19.0.dev20260907" CU134_TORCHAO_NIGHTLY_VERSION = "0.19.0.dev20260907" +# Newest rocm7.2 TorchAO nightly with compiled kernels (cp310-abi3); later ROCm nightlies +# are py3-none-any only, and none are published after 0.19.0.dev20260831. +ROCM_TORCHAO_NIGHTLY_VERSION = "0.19.0.dev20260805" # These wheels' metadata pairs August 11 domain libraries with August 10 torch. CU134_TORCH_PACKAGES = [ "torch==2.14.0.dev20260810+cu134",