From 5169df70f6f5434026a89e33946a9f2af2044a79 Mon Sep 17 00:00:00 2001 From: YC Yen-Ching Tseng Date: Mon, 29 Jun 2026 22:11:37 +0800 Subject: [PATCH] [AMD] Sgl-data mount opt-in (#29661) Co-authored-by: bingxche --- .../workflows/nightly-test-amd-rocm720.yml | 22 ++++++++++++ .github/workflows/nightly-test-amd.yml | 19 +++++++++++ .github/workflows/pr-test-amd-rocm720.yml | 2 ++ scripts/ci/amd/amd_ci_start_container.sh | 34 ++++++++++++++++--- 4 files changed, 72 insertions(+), 5 deletions(-) diff --git a/.github/workflows/nightly-test-amd-rocm720.yml b/.github/workflows/nightly-test-amd-rocm720.yml index 98ce7a342..6b8622c8d 100644 --- a/.github/workflows/nightly-test-amd-rocm720.yml +++ b/.github/workflows/nightly-test-amd-rocm720.yml @@ -316,6 +316,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -754,6 +755,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh --skip-test-time-deps @@ -799,6 +801,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh --skip-test-time-deps @@ -842,6 +845,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh --skip-test-time-deps @@ -885,6 +889,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh --skip-test-time-deps @@ -921,6 +926,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -956,6 +962,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -991,6 +998,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1026,6 +1034,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1065,6 +1074,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1111,6 +1121,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1145,6 +1156,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1191,6 +1203,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1275,6 +1288,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1323,6 +1337,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1371,6 +1386,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1423,6 +1439,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh --skip-test-time-deps @@ -1455,6 +1472,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1494,6 +1512,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh --skip-test-time-deps @@ -1565,6 +1584,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1807,6 +1827,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh --skip-test-time-deps @@ -1845,6 +1866,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh --skip-test-time-deps diff --git a/.github/workflows/nightly-test-amd.yml b/.github/workflows/nightly-test-amd.yml index 8b2a46c1d..ce39c91cd 100644 --- a/.github/workflows/nightly-test-amd.yml +++ b/.github/workflows/nightly-test-amd.yml @@ -318,6 +318,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -759,6 +760,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh @@ -804,6 +806,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh @@ -847,6 +850,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh @@ -890,6 +894,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh @@ -926,6 +931,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -961,6 +967,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -996,6 +1003,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1031,6 +1039,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1070,6 +1079,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1116,6 +1126,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1150,6 +1161,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1196,6 +1208,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1280,6 +1293,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh @@ -1312,6 +1326,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1351,6 +1366,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh @@ -1422,6 +1438,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1664,6 +1681,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh --skip-test-time-deps @@ -1702,6 +1720,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: bash scripts/ci/amd/amd_ci_install_dependency.sh diff --git a/.github/workflows/pr-test-amd-rocm720.yml b/.github/workflows/pr-test-amd-rocm720.yml index 66d7de156..82b8df2cd 100644 --- a/.github/workflows/pr-test-amd-rocm720.yml +++ b/.github/workflows/pr-test-amd-rocm720.yml @@ -1160,6 +1160,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | @@ -1210,6 +1211,7 @@ jobs: bash scripts/ci/amd/amd_ci_start_container.sh --rocm-version rocm720 env: GITHUB_WORKSPACE: ${{ github.workspace }} + ENABLE_CACHE_HOST: "1" - name: Install dependencies run: | diff --git a/scripts/ci/amd/amd_ci_start_container.sh b/scripts/ci/amd/amd_ci_start_container.sh index 81a70421f..aae22cf84 100755 --- a/scripts/ci/amd/amd_ci_start_container.sh +++ b/scripts/ci/amd/amd_ci_start_container.sh @@ -54,6 +54,10 @@ while [[ $# -gt 0 ]]; do echo " --build-from-dockerfile Build image from docker/rocm.Dockerfile" echo " --gpu-arch ARCH GPU architecture for Dockerfile build (e.g., gfx950-rocm720)" echo " --rocm-version VERSION Override ROCm version for image lookup (e.g., rocm720)" + echo "" + echo "Environment:" + echo " ENABLE_CACHE_HOST=1|0" + echo " Mount /home/runner/sglang-data to /sgl-data. Defaults to 0." exit 0 ;; *) echo "Unknown option $1"; exit 1;; @@ -283,13 +287,27 @@ else fi fi -# CACHE_HOST=/home/runner/sgl-data -CACHE_HOST=/home/runner/temp-sglang-data -if [[ -d "$CACHE_HOST" ]]; then +CACHE_HOST=/home/runner/sglang-data +ENABLE_CACHE_HOST="${ENABLE_CACHE_HOST:-0}" +case "${ENABLE_CACHE_HOST,,}" in + 1|true|yes|on|pvc|persistent) + if [[ ! -d "$CACHE_HOST" ]]; then + echo "Error: ENABLE_CACHE_HOST=1 but ${CACHE_HOST} does not exist." >&2 + exit 1 + fi CACHE_VOLUME="-v $CACHE_HOST:/sgl-data" -else + echo "Mounting persistent CI data: ${CACHE_HOST} -> /sgl-data" + ;; + 0|false|no|off|"") CACHE_VOLUME="" -fi + echo "Not mounting ${CACHE_HOST}; /sgl-data will be container-local." + ;; + *) + echo "Error: unsupported ENABLE_CACHE_HOST='${ENABLE_CACHE_HOST}'" >&2 + echo "Use 1/true/pvc/persistent or 0/false/off." >&2 + exit 1 + ;; +esac echo "Launching container: ci_sglang" docker run -dt --user root --device=/dev/kfd ${DEVICE_FLAG} \ @@ -311,6 +329,12 @@ docker run -dt --user root --device=/dev/kfd ${DEVICE_FLAG} \ --name ci_sglang \ "${IMAGE}" +docker exec ci_sglang mkdir -p \ + /sgl-data/hf-cache/hub \ + /sgl-data/pip-cache \ + /sgl-data/miopen-cache \ + /sgl-data/aiter-kernels + # The checkout is owned by the runner (non-root) but the container runs as # root. Git >= 2.35.2 rejects cross-user repos; mark the mount as safe so # setuptools-scm / vcs_versioning can resolve the package version.