From 7c7d6ce5c7caad3714ad1cd37ef057dfe0f317d0 Mon Sep 17 00:00:00 2001 From: Slobodan Josic <127323561+slojosic-amd@users.noreply.github.com> Date: Fri, 3 Apr 2026 00:59:20 +0200 Subject: [PATCH] [HIP] Bump ROCm version to 7.2.1 (#21066) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bump ROCm version on Linux from 7.2 to 7.2.1 Add gfx1102 target Delete LLVM workaround since ROCm 7.2.1 has fix for ROCm 7.2 perf regression https://github.com/ROCm/rocm-systems/issues/2865 --------- Co-authored-by: Sigbjørn Skjæret --- .devops/rocm.Dockerfile | 8 ++++---- .github/workflows/build.yml | 4 ++-- .github/workflows/hip-quality-check.yml | 2 +- .github/workflows/release.yml | 22 ++++++++++++---------- 4 files changed, 19 insertions(+), 17 deletions(-) diff --git a/.devops/rocm.Dockerfile b/.devops/rocm.Dockerfile index 96aa9dfd40..525ddc7905 100644 --- a/.devops/rocm.Dockerfile +++ b/.devops/rocm.Dockerfile @@ -1,8 +1,8 @@ ARG UBUNTU_VERSION=24.04 # This needs to generally match the container host's environment. -ARG ROCM_VERSION=7.2 -ARG AMDGPU_VERSION=7.2 +ARG ROCM_VERSION=7.2.1 +ARG AMDGPU_VERSION=7.2.1 # Target the ROCm build image ARG BASE_ROCM_DEV_CONTAINER=rocm/dev-ubuntu-${UBUNTU_VERSION}:${ROCM_VERSION}-complete @@ -12,11 +12,11 @@ FROM ${BASE_ROCM_DEV_CONTAINER} AS build # Unless otherwise specified, we make a fat build. # This is mostly tied to rocBLAS supported archs. -# check https://rocm.docs.amd.com/projects/install-on-linux/en/docs-7.2.0/reference/system-requirements.html +# check https://rocm.docs.amd.com/projects/install-on-linux/en/docs-7.2.1/reference/system-requirements.html # check https://rocm.docs.amd.com/projects/radeon-ryzen/en/latest/docs/compatibility/compatibilityrad/native_linux/native_linux_compatibility.html # check https://rocm.docs.amd.com/projects/radeon-ryzen/en/latest/docs/compatibility/compatibilityryz/native_linux/native_linux_compatibility.html -ARG ROCM_DOCKER_ARCH='gfx908;gfx90a;gfx942;gfx1030;gfx1100;gfx1101;gfx1151;gfx1150;gfx1200;gfx1201' +ARG ROCM_DOCKER_ARCH='gfx908;gfx90a;gfx942;gfx1030;gfx1100;gfx1101;gfx1102;gfx1151;gfx1150;gfx1200;gfx1201' # Set ROCm architectures ENV AMDGPU_TARGETS=${ROCM_DOCKER_ARCH} diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3e12b9d505..55167754a4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -941,7 +941,7 @@ jobs: - name: Grab rocWMMA package id: grab_rocwmma run: | - curl -o rocwmma.deb "https://repo.radeon.com/rocm/apt/7.2/pool/main/r/rocwmma-dev/rocwmma-dev_2.2.0.70200-43~24.04_amd64.deb" + curl -o rocwmma.deb "https://repo.radeon.com/rocm/apt/7.2.1/pool/main/r/rocwmma-dev/rocwmma-dev_2.2.0.70201-81~24.04_amd64.deb" 7z x rocwmma.deb 7z x data.tar @@ -984,7 +984,7 @@ jobs: cmake -G "Unix Makefiles" -B build -S . ` -DCMAKE_C_COMPILER="${env:HIP_PATH}\bin\clang.exe" ` -DCMAKE_CXX_COMPILER="${env:HIP_PATH}\bin\clang++.exe" ` - -DCMAKE_CXX_FLAGS="-I$($PWD.Path.Replace('\', '/'))/opt/rocm-7.2.0/include/" ` + -DCMAKE_CXX_FLAGS="-I$($PWD.Path.Replace('\', '/'))/opt/rocm-7.2.1/include/" ` -DCMAKE_BUILD_TYPE=Release ` -DLLAMA_BUILD_BORINGSSL=ON ` -DROCM_DIR="${env:HIP_PATH}" ` diff --git a/.github/workflows/hip-quality-check.yml b/.github/workflows/hip-quality-check.yml index 474c0ad415..7dea09acf8 100644 --- a/.github/workflows/hip-quality-check.yml +++ b/.github/workflows/hip-quality-check.yml @@ -35,7 +35,7 @@ env: jobs: ubuntu-22-hip-quality-check: runs-on: ubuntu-22.04 - container: rocm/dev-ubuntu-22.04:7.2 + container: rocm/dev-ubuntu-22.04:7.2.1 steps: - name: Clone id: checkout diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 48a9300f7f..3b49ead96b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -639,8 +639,8 @@ jobs: strategy: matrix: include: - - ROCM_VERSION: "7.2" - gpu_targets: "gfx908;gfx90a;gfx942;gfx1030;gfx1100;gfx1101;gfx1151;gfx1150;gfx1200;gfx1201" + - ROCM_VERSION: "7.2.1" + gpu_targets: "gfx908;gfx90a;gfx942;gfx1030;gfx1100;gfx1101;gfx1102;gfx1151;gfx1150;gfx1200;gfx1201" build: 'x64' steps: @@ -662,7 +662,7 @@ jobs: sudo apt install -y build-essential git cmake wget - name: Setup Legacy ROCm - if: matrix.ROCM_VERSION == '7.2' + if: matrix.ROCM_VERSION == '7.2.1' id: legacy_env run: | sudo mkdir --parents --mode=0755 /etc/apt/keyrings @@ -683,7 +683,7 @@ jobs: sudo apt-get install -y libssl-dev rocm-hip-sdk - name: Setup TheRock - if: matrix.ROCM_VERSION != '7.2' + if: matrix.ROCM_VERSION != '7.2.1' id: therock_env run: | wget https://repo.amd.com/rocm/tarball/therock-dist-linux-gfx1151-${{ matrix.ROCM_VERSION }}.tar.gz @@ -699,7 +699,6 @@ jobs: run: | cmake -B build -S . \ -DCMAKE_HIP_COMPILER="$(hipconfig -l)/clang" \ - -DCMAKE_HIP_FLAGS="-mllvm --amdgpu-unroll-threshold-local=600" \ -DCMAKE_BUILD_TYPE=Release \ -DGGML_BACKEND_DL=ON \ -DGGML_NATIVE=OFF \ @@ -717,17 +716,20 @@ jobs: id: tag uses: ./.github/actions/get-tag-name + - name: Get ROCm short version + run: echo "ROCM_VERSION_SHORT=$(echo '${{ matrix.ROCM_VERSION }}' | cut -d '.' -f 1,2)" >> $GITHUB_ENV + - name: Pack artifacts id: pack_artifacts run: | cp LICENSE ./build/bin/ - tar -czvf llama-${{ steps.tag.outputs.name }}-bin-ubuntu-rocm-${{ matrix.ROCM_VERSION }}-${{ matrix.build }}.tar.gz --transform "s,./,llama-${{ steps.tag.outputs.name }}/," -C ./build/bin . + tar -czvf llama-${{ steps.tag.outputs.name }}-bin-ubuntu-rocm-${{ env.ROCM_VERSION_SHORT }}-${{ matrix.build }}.tar.gz --transform "s,./,llama-${{ steps.tag.outputs.name }}/," -C ./build/bin . - name: Upload artifacts uses: actions/upload-artifact@v6 with: - path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-rocm-${{ matrix.ROCM_VERSION }}-${{ matrix.build }}.tar.gz - name: llama-bin-ubuntu-rocm-${{ matrix.ROCM_VERSION }}-${{ matrix.build }}.tar.gz + path: llama-${{ steps.tag.outputs.name }}-bin-ubuntu-rocm-${{ env.ROCM_VERSION_SHORT }}-${{ matrix.build }}.tar.gz + name: llama-bin-ubuntu-rocm-${{ env.ROCM_VERSION_SHORT }}-${{ matrix.build }}.tar.gz windows-hip: runs-on: windows-2022 @@ -749,7 +751,7 @@ jobs: - name: Grab rocWMMA package id: grab_rocwmma run: | - curl -o rocwmma.deb "https://repo.radeon.com/rocm/apt/7.2/pool/main/r/rocwmma-dev/rocwmma-dev_2.2.0.70200-43~24.04_amd64.deb" + curl -o rocwmma.deb "https://repo.radeon.com/rocm/apt/7.2.1/pool/main/r/rocwmma-dev/rocwmma-dev_2.2.0.70201-81~24.04_amd64.deb" 7z x rocwmma.deb 7z x data.tar @@ -806,7 +808,7 @@ jobs: cmake -G "Unix Makefiles" -B build -S . ` -DCMAKE_C_COMPILER="${env:HIP_PATH}\bin\clang.exe" ` -DCMAKE_CXX_COMPILER="${env:HIP_PATH}\bin\clang++.exe" ` - -DCMAKE_CXX_FLAGS="-I$($PWD.Path.Replace('\', '/'))/opt/rocm-7.2.0/include/ -Wno-ignored-attributes -Wno-nested-anon-types" ` + -DCMAKE_CXX_FLAGS="-I$($PWD.Path.Replace('\', '/'))/opt/rocm-7.2.1/include/ -Wno-ignored-attributes -Wno-nested-anon-types" ` -DCMAKE_BUILD_TYPE=Release ` -DGGML_BACKEND_DL=ON ` -DGGML_NATIVE=OFF `