diff --git a/.github/workflows/build-llamacpp-rocm.yml b/.github/workflows/build-llamacpp-rocm.yml index cc768e4..482262f 100644 --- a/.github/workflows/build-llamacpp-rocm.yml +++ b/.github/workflows/build-llamacpp-rocm.yml @@ -9,9 +9,9 @@ on: gfx_target: description: 'AMD GPU targets (comma-separated)' required: false - default: 'gfx1151,gfx1150,gfx120X,gfx110X' + default: 'gfx1151,gfx1150,gfx120X,gfx110X,gfx103X' rocm_version: - description: 'ROCm version to use (e.g., 7.11.0a20251205) or "latest" to auto-detect' + description: 'ROCm version to use (e.g., 7.13.0a20260318) or "latest" to auto-detect' required: false default: 'latest' llamacpp_version: @@ -36,7 +36,7 @@ on: env: OPERATING_SYSTEMS: ${{ github.event.inputs.operating_systems || 'windows,ubuntu' }} - GFX_TARGETS: ${{ github.event.inputs.gfx_target || 'gfx1151,gfx1150,gfx120X,gfx110X' }} + GFX_TARGETS: ${{ github.event.inputs.gfx_target || 'gfx1151,gfx1150,gfx120X,gfx110X,gfx103X' }} ROCM_VERSION: ${{ github.event.inputs.rocm_version || 'latest' }} LLAMACPP_VERSION: ${{ github.event.inputs.llamacpp_version || 'latest' }} @@ -176,7 +176,7 @@ jobs: # Add appropriate suffixes for different GPU targets $s3Target = $currentTarget - if ($currentTarget -eq "gfx110X") { + if ($currentTarget -eq "gfx103X" -or $currentTarget -eq "gfx110X") { $s3Target = "$currentTarget-dgpu" Write-Host "Using S3 target with -dgpu suffix: $s3Target" } elseif ($currentTarget -eq "gfx120X") { @@ -273,6 +273,8 @@ jobs: if "%current_target%"=="gfx110X" ( set "mapped_target=gfx1100;gfx1101;gfx1102" + ) else if "%current_target%"=="gfx103X" ( + set "mapped_target=gfx1030;gfx1031;gfx1032;gfx1034" ) else if "%current_target%"=="gfx1151" ( set "mapped_target=gfx1151" ) else if "%current_target%"=="gfx1150" ( @@ -336,6 +338,7 @@ jobs: # Copy files matching patterns and specific names $filesToCopy = @( "amdhip64_*.dll", + "rocm_kpack.dll", "amd_comgr*.dll", "libhipblas.dll", "rocblas.dll", @@ -544,7 +547,7 @@ jobs: # Add appropriate suffixes for different GPU targets s3_target="$current_target" - if [ "$current_target" = "gfx110X" ]; then + if [[ "$current_target" = "gfx103X" || "$current_target" = "gfx110X" ]]; then s3_target="${current_target}-dgpu" echo "Using S3 target with -dgpu suffix: $s3_target" elif [ "$current_target" = "gfx120X" ]; then @@ -692,6 +695,8 @@ jobs: if [ "$current_target" = "gfx110X" ]; then mapped_target="gfx1100;gfx1101;gfx1102" + elif [ "$current_target" = "gfx103X" ]; then + mapped_target="gfx1030;gfx1031;gfx1032;gfx1034" elif [ "$current_target" = "gfx1151" ]; then mapped_target="gfx1151" elif [ "$current_target" = "gfx1150" ]; then @@ -786,6 +791,7 @@ jobs: cp -v /opt/rocm/lib/libhsa-runtime64.so* "$build_bin_path/" 2>/dev/null || echo "libhsa-runtime64.so* not found" cp -v /opt/rocm/lib/rocm_sysdeps/lib/librocm_sysdeps_numa.so* "$build_bin_path/" 2>/dev/null || echo "librocm_sysdeps_numa.so* not found" cp -v /opt/rocm/lib/librocroller.so* "$build_bin_path/" 2>/dev/null || echo "librocroller.so* not found" + cp -v /opt/rocm/lib/librocm_kpack.so* "$build_bin_path/" 2>/dev/null || echo "librocm_kpack.so* not found" cp -v /opt/rocm/lib/rocm_sysdeps/lib/librocm_sysdeps_z.so* "$build_bin_path/" 2>/dev/null || echo "librocm_sysdeps_z.so* not found" cp -v /opt/rocm/lib/rocm_sysdeps/lib/librocm_sysdeps_zstd.so* "$build_bin_path/" 2>/dev/null || echo "librocm_sysdeps_zstd.so* not found" cp -v /opt/rocm/lib/llvm/lib/libLLVM.so* "$build_bin_path/" 2>/dev/null || echo "libLLVM.so* not found" diff --git a/README.md b/README.md index 26983ce..b43d1be 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ Platform: Windows | Ubuntu - GPU Targets + GPU Targets @@ -35,6 +35,7 @@ This build specifically targets the following GPU architectures: - **gfx1150** (STX Point APU) - Ryzen AI 300 - **gfx120X** (RDNA4 GPUs) - includes AMD Radeon RX 9070 XT/GRE/9070, RX 9060 XT/9060 - **gfx110X** (RDNA3 GPUs) - includes AMD Radeon PRO W7900/W7800/W7700/W7600, RX 7900 XTX/XT/GRE, RX 7800 XT, RX 7700 XT/7700, RX 7600 XT/7600 +- **gfx103X** (RDNA2 GPUs) - includes AMD Radeon RX 6800 XT/6800, RX 6700 XT/6700, RX 6600 XT/6600, RX 6500 XT/6500 **All builds include ROCm™ 7 built-in** - no separate ROCm™ installation required! @@ -42,7 +43,7 @@ This build specifically targets the following GPU architectures: Our automated GitHub Actions workflow creates nightly builds for: - **Windows** and **Ubuntu** operating systems -- **Multiple GPU targets**: `gfx1151`, `gfx1150`, `gfx110X`, `gfx120X` +- **Multiple GPU targets**: `gfx1151`, `gfx1150`, `gfx110X`, `gfx120X`, `gfx103X` - **ROCm™ 7 built-in** - complete runtime libraries included @@ -52,6 +53,7 @@ Our automated GitHub Actions workflow creates nightly builds for: | **gfx1150** | [![Download Ubuntu gfx1150](https://img.shields.io/badge/Download-Ubuntu%20gfx1150-blue)](https://github.com/aigdat/llamacpp-rocm/releases/latest) | [![Download Windows gfx1150](https://img.shields.io/badge/Download-Windows%20gfx1150-green)](https://github.com/aigdat/llamacpp-rocm/releases/latest) | | **gfx1151** | [![Download Ubuntu gfx1151](https://img.shields.io/badge/Download-Ubuntu%20gfx1151-blue)](https://github.com/aigdat/llamacpp-rocm/releases/latest) | [![Download Windows gfx1151](https://img.shields.io/badge/Download-Windows%20gfx1151-green)](https://github.com/aigdat/llamacpp-rocm/releases/latest) | | **gfx120X** | [![Download Ubuntu gfx120X](https://img.shields.io/badge/Download-Ubuntu%20gfx120X-blue)](https://github.com/aigdat/llamacpp-rocm/releases/latest) | [![Download Windows gfx120X](https://img.shields.io/badge/Download-Windows%20gfx120X-green)](https://github.com/aigdat/llamacpp-rocm/releases/latest) | +| **gfx103X** | [![Download Ubuntu gfx103X](https://img.shields.io/badge/Download-Ubuntu%20gfx103X-blue)](https://github.com/aigdat/llamacpp-rocm/releases/latest) | [![Download Windows gfx103X](https://img.shields.io/badge/Download-Windows%20gfx103X-green)](https://github.com/aigdat/llamacpp-rocm/releases/latest) | > **⚡ Ready to Run**: All releases include complete ROCm™ 7 runtime libraries - just download and go! diff --git a/docs/manual_instructions.md b/docs/manual_instructions.md index c5ab173..4407276 100644 --- a/docs/manual_instructions.md +++ b/docs/manual_instructions.md @@ -180,7 +180,8 @@ If you see no errors during the build process, llama.cpp has been successfully c When building llama.cpp with ROCm, the `-DGPU_TARGETS` parameter must be set based on your specific GPU architecture. Our automated workflow uses generic targets that get mapped to specific architectures: - **`gfx120X`** maps to `gfx1200, gfx1201` (RDNA4 series like: RX 9070 XT/GRE/9070, RX 9060 XT/9060) -- **`gfx110X`** maps to `gfx1100, gfx1101, gfx1102` (RDNA3 series like: PRO W7900/W7800/W7700/W7600, RX 7900 XTX/XT/GRE, RX 7800 XT, RX 7700 XT/7700, RX 7600 XT/7600) +- **`gfx110X`** maps to `gfx1100, gfx1101, gfx1102` (RDNA3 series like: PRO W7900/W7800/W7700/W7600, RX 7900 XTX/XT/GRE, RX 7800 XT, RX 7700 XT/7700, RX 7600 XT/7600) +- **`gfx103X`** maps to `gfx1030, gfx1031, gfx1032, gfx1034` (RDNA2 series like: RX 6800 XT/6800, RX 6700 XT/6700, RX 6600 XT/6600, RX 6500 XT/6500) - **`gfx1150`** remains as `gfx1150` (Strix Point) - **`gfx1151`** remains as `gfx1151` (Strix Halo) @@ -197,6 +198,9 @@ Replace the `-DGPU_TARGETS="gfx1151"` parameter in your cmake command with the a # For RDNA3 series (PRO W7900/W7800/W7700/W7600, RX 7900 XTX/XT/GRE, RX 7800 XT, RX 7700 XT/7700, RX 7600 XT/7600) -DGPU_TARGETS="gfx1100;gfx1101;gfx1102" +# For RDNA2 series (RX 6800 XT/6800, RX 6700 XT/6700, RX 6600 XT/6600, RX 6500 XT/6500) +-DGPU_TARGETS="gfx1030;gfx1031;gfx1032;gfx1034" + # For Strix Point -DGPU_TARGETS="gfx1150"