Ubuntu 24.04下编译支持ROCm加速的llama.cpp

llama.cpp官方编译发布的ubuntu版本只支持cpu和vulkan版本,如需原生ROCm加速,需要自行编译。

这提供了对支持HIP的AMD GPU的GPU加速。确保已安装ROCm。您可以从Linux发行版的包管理器或此处下载ROCm快速入门(Linux)。

复制代码
# 安装必要的依赖
sudo apt install cmake git libcurl4-openssl-dev
# 克隆代码
git clone https://github.com/ggml-org/llama.cpp
cd llama.cpp

# 执行编译
HIPCXX="$(hipconfig -l)/clang" HIP_PATH="$(hipconfig -R)" cmake -S . -B build -DGGML_HIP=ON -DAMDGPU_TARGETS=gfx906 -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release -- -j 28

如果编译成功,在可以在llama.cpp/build/bin 中查看到全部的cli和so

复制代码
# 测试命令
./build/bin/llama-cli 

# 打印
ggml_cuda_init: GGML_CUDA_FORCE_MMQ:    no
ggml_cuda_init: GGML_CUDA_FORCE_CUBLAS: no
ggml_cuda_init: found 1 ROCm devices:
  Device 0: AMD Radeon Graphics, gfx906:sramecc-:xnack- (0x906), VMM: no, Wave Size: 64
build: 0 (unknown) with cc (Ubuntu 13.3.0-6ubuntu2~24.04) 13.3.0 for x86_64-linux-gnu
main: llama backend init
main: load the model and apply lora adapter, if any
llama_model_load_from_file_impl: using device ROCm0 (AMD Radeon Graphics) (0000:05:00.0) - 32732 MiB free
gguf_init_from_file: failed to open GGUF file 'models/7B/ggml-model-f16.gguf'
llama_model_load: error loading model: llama_model_loader: failed to load model from models/7B/ggml-model-f16.gguf
llama_model_load_from_file_impl: failed to load model
common_init_from_params: failed to load model 'models/7B/ggml-model-f16.gguf', try reducing --n-gpu-layers if you're running out of VRAM
main: error: unable to load model

可以看到已经加载了ROCm后端,表示成功。

相关推荐
测试运维日常笔记12 小时前
tcpdump(Linux服务器)配合 Wireshark(本地分析)使用手顺与常用过滤语法详解
linux·服务器·tcpdump
自律懒人13 小时前
AI 沙箱逃逸 4 连发:GPT-5.6 黑进 Hugging Face、Kimi K3 抄答案,5 步给本地 Agent 装围栏
ubuntu
jason_renyu13 小时前
Linux Docker 服务管理与排查实战指南(新手速查版)
linux·docker·新手docker学习·docker日志查询·docker服务管理
测试运维日常笔记13 小时前
Unix/Linux 系统软件包管理笔记
linux·笔记·unix
雾时之林14 小时前
Linux--介绍及管理
linux·运维·服务器
盐焗鹌鹑蛋14 小时前
【Linux】重定向
linux
Forever Nore14 小时前
LeetCode 5 最长回文子串 - 中心扩散
linux·算法·leetcode
呱呱巨基14 小时前
Docker 基础概念学习
linux·c++·学习·docker
Dlrb121114 小时前
Linux驱动---Linux 中断系统及其上与下半部的介绍与阻塞IO实现按键检测
linux·嵌入式硬件·imx6ull·中断·阻塞io
老王IT15 小时前
VMware虚拟机安装的ubuntu忘记用户密码怎么办
ubuntu