Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 11 additions & 5 deletions .github/workflows/build-llamacpp-rocm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand All @@ -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' }}

Expand Down Expand Up @@ -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") {
Expand Down Expand Up @@ -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" (
Expand Down Expand Up @@ -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",
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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"
Expand Down
6 changes: 4 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
<img src="https://img.shields.io/badge/OS-Windows%20%7C%20Ubuntu-0078D6?logo=windows&logoColor=white" alt="Platform: Windows | Ubuntu" />
</a>
<a href="#-supported-devices" title="GPU targets">
<img src="https://img.shields.io/badge/GPU-gfx110X%20%7Cgfx1150%20%7C%20gfx1151%20%7C%20gfx120X-00B04F?logo=amd&logoColor=white" alt="GPU Targets" />
<img src="https://img.shields.io/badge/GPU-gfx110X%20%7Cgfx1150%20%7C%20gfx1151%20%7C%20gfx120X%20%7C%20gfx103X-00B04F?logo=amd&logoColor=white" alt="GPU Targets" />
</a>


Expand All @@ -35,14 +35,15 @@ 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!

## 🚀 Automated Builds

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


Expand All @@ -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!

Expand Down
6 changes: 5 additions & 1 deletion docs/manual_instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)

Expand All @@ -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"

Expand Down
Loading