From 2e3dc657d2c1b22c52761535c1db242189262c43 Mon Sep 17 00:00:00 2001 From: Donato Capitella Date: Mon, 11 May 2026 19:39:46 +0100 Subject: [PATCH] chore: update ROCm version to 7.2.3 and remove deprecated pr21344 toolbox --- .github/workflows/build_and_publish.yml | 2 +- .github/workflows/prune-old-toolboxes.yml | 2 +- AGENTS.md | 2 +- README.md | 10 +- benchmark/run_benchmarks.sh | 3 +- refresh-toolboxes.sh | 3 +- toolboxes/Dockerfile.rocm-7.2.2-pr21344 | 124 ------------------ ...rfile.rocm-7.2.2 => Dockerfile.rocm-7.2.3} | 16 +-- 8 files changed, 18 insertions(+), 144 deletions(-) delete mode 100644 toolboxes/Dockerfile.rocm-7.2.2-pr21344 rename toolboxes/{Dockerfile.rocm-7.2.2 => Dockerfile.rocm-7.2.3} (93%) diff --git a/.github/workflows/build_and_publish.yml b/.github/workflows/build_and_publish.yml index eb9647a..7af5766 100644 --- a/.github/workflows/build_and_publish.yml +++ b/.github/workflows/build_and_publish.yml @@ -28,7 +28,7 @@ jobs: IN='${{ inputs.backends }}' if [[ "$IN" == "all" || -z "$IN" ]]; then - JSON='["rocm-6.4.4","rocm-7.2.2","rocm-7.2.2-pr21344","rocm7-nightlies","vulkan-amdvlk","vulkan-radv"]' + JSON='["rocm-6.4.4","rocm-7.2.3","rocm7-nightlies","vulkan-amdvlk","vulkan-radv"]' else # Remove spaces and build JSON array from comma list IN_CLEAN=$(echo "$IN" | tr -d '[:space:]') diff --git a/.github/workflows/prune-old-toolboxes.yml b/.github/workflows/prune-old-toolboxes.yml index 78030d4..af25a76 100644 --- a/.github/workflows/prune-old-toolboxes.yml +++ b/.github/workflows/prune-old-toolboxes.yml @@ -44,7 +44,7 @@ jobs: run: | IN='${{ github.event.inputs.backends }}' if [[ "$IN" == "all" || -z "$IN" ]]; then - JSON='["rocm-6.4.2","rocm-6.4.3","rocm-6.4.4","rocm-7.1.1","rocm-7.2","rocm-7.2.1","rocm-7.2.1-pr21344","rocm-7.2.2","rocm-7.2.2-pr21344","rocm-7beta","rocm7-nightlies","vulkan-amdvlk","vulkan-radv"]' + JSON='["rocm-6.4.2","rocm-6.4.3","rocm-6.4.4","rocm-7.1.1","rocm-7.2","rocm-7.2.1","rocm-7.2.1-pr21344","rocm-7.2.2","rocm-7.2.3","rocm-7beta","rocm7-nightlies","vulkan-amdvlk","vulkan-radv"]' else IN_CLEAN=$(echo "$IN" | tr -d '[:space:]') JSON='["'${IN_CLEAN//,/\",\"}'"]' diff --git a/AGENTS.md b/AGENTS.md index a2b7bda..b0937b5 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -8,7 +8,7 @@ * **Hardware / Drivers**: AMD "Strix Halo" APUs (Gfx1151). Implementations depend on ROCm (v6.4.4, v7.x) and Vulkan (Mesa RADV, AMDVLK). ## Repository Structure Overview -* `/toolboxes/`: Dockerfiles used to build the container images (e.g., `rocm-6.4.4`, `rocm-7.2.2`, `vulkan-radv`). These often use multi-stage builds to compile Llama.cpp and extract standalone binaries. +* `/toolboxes/`: Dockerfiles used to build the container images (e.g., `rocm-6.4.4`, `rocm-7.2.3`, `vulkan-radv`). These often use multi-stage builds to compile Llama.cpp and extract standalone binaries. * `/benchmark/`: Shell scripts and Python utilities (like `generate_results_json.py`) to systematically test Llama.cpp throughput, latency, and RPC performance. * `/docs/`: Markdown documents, along with HTML/CSS/JS (e.g., `index.html`, `assets/`) for the GitHub Pages website (`strix-halo-toolboxes.com`), plus interactive benchmark viewers and documentation on VRAM estimation. * `/scripts/`: Python utilities, including `run_distributed_llama.py` for distributed inference across nodes. diff --git a/README.md b/README.md index 9f5b630..f5410c0 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,7 @@ This is currently the most stable setup. Kernels older than 6.18.4 have a bug th ## Supported Toolboxes > [!WARNING] -> Current `rocm7-nightlies` builds have a bug that caps memory allocation to 64GB. If you need larger models, prefer stable builds like `rocm-7.2.2` (performance is similar). Track the issue here: https://github.com/ROCm/TheRock/issues/4645 +> Current `rocm7-nightlies` builds have a bug that caps memory allocation to 64GB. If you need larger models, prefer stable builds like `rocm-7.2.3` (performance is similar). Track the issue here: https://github.com/ROCm/TheRock/issues/4645 You can check the containers on DockerHub: [kyuz0/amd-strix-halo-toolboxes](https://hub.docker.com/r/kyuz0/amd-strix-halo-toolboxes/tags). @@ -53,7 +53,7 @@ You can check the containers on DockerHub: [kyuz0/amd-strix-halo-toolboxes](http | `vulkan-amdvlk` | Vulkan (AMDVLK) | Fastest backend—AMD open-source driver. ≤2 GiB single buffer allocation limit, some large models won't load. | | `vulkan-radv` | Vulkan (Mesa RADV) | Most stable and compatible. Recommended for most users and all models. | | `rocm-6.4.4` | ROCm 6.4.4 (Fedora 43) | Latest stable 6.x build. Uses Fedora 43 packages with backported patch for **kernel 6.18.4+** support. | -| `rocm-7.2.2` | ROCm 7.2.2 | Latest stable 7.x build. Includes patch for **kernel 6.18.4+** support. | +| `rocm-7.2.3` | ROCm 7.2.3 | Latest stable 7.x build. Includes patch for **kernel 6.18.4+** support. | | `rocm7-nightlies` | ROCm 7 Nightly | Tracks nightly builds. Includes patch for **kernel 6.18.4+** support. | > These containers are **automatically** rebuilt whenever the Llama.cpp master branch is updated. Legacy images (`rocm-6.4.2`, `rocm-6.4.3`, `rocm-7.1.1`) are excluded from this list. @@ -73,12 +73,12 @@ toolbox enter llama-vulkan-radv **Option B: ROCm (Recommended for Performance)** ```sh -toolbox create llama-rocm-7.2.2 \ - --image docker.io/kyuz0/amd-strix-halo-toolboxes:rocm-7.2.2 \ +toolbox create llama-rocm-7.2.3 \ + --image docker.io/kyuz0/amd-strix-halo-toolboxes:rocm-7.2.3 \ -- --device /dev/dri --device /dev/kfd \ --group-add video --group-add render --group-add sudo --security-opt seccomp=unconfined -toolbox enter llama-rocm-7.2.2 +toolbox enter llama-rocm-7.2.3 ``` ### 2. Check GPU Access diff --git a/benchmark/run_benchmarks.sh b/benchmark/run_benchmarks.sh index 96a706b..b2564fe 100755 --- a/benchmark/run_benchmarks.sh +++ b/benchmark/run_benchmarks.sh @@ -62,8 +62,7 @@ echo declare -A CMDS=( [rocm6_4_4]="toolbox run -c llama-rocm-6.4.4 -- /usr/local/bin/llama-bench" - [rocm-7_2_2]="toolbox run -c llama-rocm-7.2.2 -- /usr/local/bin/llama-bench" - [rocm-7_2_2-pr21344]="toolbox run -c llama-rocm-7.2.2-pr21344 -- /usr/local/bin/llama-bench" + [rocm-7_2_3]="toolbox run -c llama-rocm-7.2.3 -- /usr/local/bin/llama-bench" [rocm7-nightlies]="toolbox run -c llama-rocm7-nightlies -- /usr/local/bin/llama-bench" [vulkan_amdvlk]="toolbox run -c llama-vulkan-amdvlk -- /usr/sbin/llama-bench" [vulkan_radv]="toolbox run -c llama-vulkan-radv -- /usr/sbin/llama-bench" diff --git a/refresh-toolboxes.sh b/refresh-toolboxes.sh index fe1ced9..610fc13 100755 --- a/refresh-toolboxes.sh +++ b/refresh-toolboxes.sh @@ -8,8 +8,7 @@ declare -A TOOLBOXES TOOLBOXES["llama-vulkan-amdvlk"]="docker.io/kyuz0/amd-strix-halo-toolboxes:vulkan-amdvlk --device /dev/dri --group-add video --security-opt seccomp=unconfined" TOOLBOXES["llama-vulkan-radv"]="docker.io/kyuz0/amd-strix-halo-toolboxes:vulkan-radv --device /dev/dri --group-add video --security-opt seccomp=unconfined" TOOLBOXES["llama-rocm-6.4.4"]="docker.io/kyuz0/amd-strix-halo-toolboxes:rocm-6.4.4 --device /dev/dri --device /dev/kfd --group-add video --group-add render --group-add sudo --security-opt seccomp=unconfined" -TOOLBOXES["llama-rocm-7.2.2"]="docker.io/kyuz0/amd-strix-halo-toolboxes:rocm-7.2.2 --device /dev/dri --device /dev/kfd --group-add video --group-add render --group-add sudo --security-opt seccomp=unconfined" -TOOLBOXES["llama-rocm-7.2.2-pr21344"]="docker.io/kyuz0/amd-strix-halo-toolboxes:rocm-7.2.2-pr21344 --device /dev/dri --device /dev/kfd --group-add video --group-add render --group-add sudo --security-opt seccomp=unconfined" +TOOLBOXES["llama-rocm-7.2.3"]="docker.io/kyuz0/amd-strix-halo-toolboxes:rocm-7.2.3 --device /dev/dri --device /dev/kfd --group-add video --group-add render --group-add sudo --security-opt seccomp=unconfined" TOOLBOXES["llama-rocm7-nightlies"]="docker.io/kyuz0/amd-strix-halo-toolboxes:rocm7-nightlies --device /dev/dri --device /dev/kfd --group-add video --group-add render --group-add sudo --security-opt seccomp=unconfined" function usage() { diff --git a/toolboxes/Dockerfile.rocm-7.2.2-pr21344 b/toolboxes/Dockerfile.rocm-7.2.2-pr21344 deleted file mode 100644 index ef28624..0000000 --- a/toolboxes/Dockerfile.rocm-7.2.2-pr21344 +++ /dev/null @@ -1,124 +0,0 @@ -# build stage -# Based on Dockerfile.rocm-7.2.2, but clones pedapudi/llama.cpp@gfx1151-opt -# (PR #21344: gfx1151 nwarps, tile sizing to curb VGPR pressure) -FROM registry.fedoraproject.org/fedora:43 AS builder - -# rocm 7.2.2 repo -RUN <<'EOF' -tee /etc/yum.repos.d/rocm.repo < /etc/ld.so.conf.d/local.conf \ - && echo "/usr/local/lib64" >> /etc/ld.so.conf.d/local.conf \ - && ldconfig \ - && cp -n /usr/local/lib/libllama*.so* /usr/lib64/ 2>/dev/null || true \ - && ldconfig - -# helper -COPY gguf-vram-estimator.py /usr/local/bin/gguf-vram-estimator.py -RUN chmod +x /usr/local/bin/gguf-vram-estimator.py - -# profile -RUN printf '%s\n' \ - > /etc/profile.d/rocm.sh && chmod +x /etc/profile.d/rocm.sh \ - && echo 'source /etc/profile.d/rocm.sh' >> /etc/bashrc - -# shell -CMD ["/bin/bash"] diff --git a/toolboxes/Dockerfile.rocm-7.2.2 b/toolboxes/Dockerfile.rocm-7.2.3 similarity index 93% rename from toolboxes/Dockerfile.rocm-7.2.2 rename to toolboxes/Dockerfile.rocm-7.2.3 index a5d88ed..57e63a5 100644 --- a/toolboxes/Dockerfile.rocm-7.2.2 +++ b/toolboxes/Dockerfile.rocm-7.2.3 @@ -1,12 +1,12 @@ # build stage FROM registry.fedoraproject.org/fedora:43 AS builder -# rocm 7.2.2 repo +# rocm 7.2.3 repo RUN <<'EOF' tee /etc/yum.repos.d/rocm.repo <