Skip to content

Commit e22e837

Browse files
committed
add TheRock HIP backend build instructions
Signed-off-by: Hao Li <[email protected]>
1 parent 5d8bb90 commit e22e837

File tree

1 file changed

+19
-1
lines changed

1 file changed

+19
-1
lines changed

docs/build.md

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -294,9 +294,27 @@ You can download it from your Linux distro's package manager or from here: [ROCm
294294
cmake -S . -B build -G Ninja -DGPU_TARGETS=gfx1100 -DGGML_HIP=ON -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_BUILD_TYPE=Release
295295
cmake --build build
296296
```
297+
Since TheRock (The HIP Environment and ROCm Kit) has been released on https://github.com/ROCm/TheRock/, which is a lightweight open source build platform for HIP and ROCm.
298+
There is nightly build from https://therock-nightly-tarball.s3.amazonaws.com/, like therock-dist-windows-gfx1151-7.10.0a20251031.tar.gz for AMD Ryzen AI MAX CPU.
299+
Below is step for building with TheRock HIP backend for Windows. Download therock-dist-windows-gfx1151-xxx.tar.gz and uncompress it to C:\work\therock\.
300+
Also Set RC COMPILER with https://developer.microsoft.com/en-us/windows/downloads/windows-sdk/ installation
301+
302+
```bash
303+
set HIP_PATH=C:\work\therock
304+
set HIP_PATH_70=%HIP_PATH%
305+
set LLVM_PATH=%HIP_PATH%
306+
set HIP_PLATFORM=amd
307+
set CMAKE_C_COMPILER=%HIP_PATH%\lib\llvm\bin\amdclang.exe
308+
set CMAKE_CXX_COMPILER=%HIP_PATH%\lib\llvm\bin\amdclang++.exe
309+
set CMAKE_RC_COMPILER="C:/Program Files (x86)/Windows Kits/10/bin/10.0.26100.0/x64/rc.exe"
310+
set PATH=%HIP_PATH%\bin;%PATH%
311+
cmake -S . -B build -G Ninja -DGPU_TARGETS=gfx1151 -DGGML_HIP=ON -DCMAKE_C_COMPILER=%CMAKE_C_COMPILER% -DCMAKE_CXX_COMPILER=%CMAKE_CXX_COMPILER% -DCMAKE_BUILD_TYPE=Release -DLLAMA_CURL=OFF -DCMAKE_RC_COMPILER=%CMAKE_RC_COMPILER%
312+
cmake --build build
313+
```
314+
297315
If necessary, adapt `GPU_TARGETS` to the GPU arch you want to compile for. The above example uses `gfx1100` that corresponds to Radeon RX 7900XTX/XT/GRE. You can find a list of targets [here](https://llvm.org/docs/AMDGPUUsage.html#processors)
298316
Find your gpu version string by matching the most significant version information from `rocminfo | grep gfx | head -1 | awk '{print $2}'` with the list of processors, e.g. `gfx1035` maps to `gfx1030`.
299-
317+
300318

301319
The environment variable [`HIP_VISIBLE_DEVICES`](https://rocm.docs.amd.com/en/latest/understand/gpu_isolation.html#hip-visible-devices) can be used to specify which GPU(s) will be used.
302320
If your GPU is not officially supported you can use the environment variable [`HSA_OVERRIDE_GFX_VERSION`] set to a similar GPU, for example 10.3.0 on RDNA2 (e.g. gfx1030, gfx1031, or gfx1035) or 11.0.0 on RDNA3.

0 commit comments

Comments
 (0)