如何在DCU上面编译llama.cpp

文章目录

推荐一个免费的 语音识别网站

一、环境配置

操作系统以及各种软件的版本如下:

二、下载代码并编译

bash 复制代码
git clone  https://github.com/ggml-org/llama.cpp.git
cd llama.cpp
HIPCXX="$(hipconfig -l)/clang" HIP_PATH="$(hipconfig -R)" cmake -S . -B build -DGGML_HIP=ON -DGPU_TARGETS=gfx928 -DCMAKE_BUILD_TYPE=Release

备注:在上面的命令中,gfx928是DCU的架构名称,可以通过下面的命令获得:

bash 复制代码
clinfo | grep Name

编译时,报错如下:

此时,vi examples/CMakeLists.txt,将simple文件夹那行注释掉:

重新运行上面的编译命令,再次报错如下:

解决办法是:

bash 复制代码
sed -i 's/5\.3\.25211/6.3.25211/g' /opt/dtk/lib/cmake/hip/hip-config-version.cmake

然后再次重新运行上面的编译命令。

完成后,再运行:(下面的128可改为你真实的cpu核数)

bash 复制代码
cmake --build build --config Release -- -j 128

此处的编译时间很长,需耐心等待。

如果中途报错如下:

那么就执行下面的操作:

bash 复制代码
apt install libclang-rt-15-dev
#下面的LDFLAGS路径是通过这个命令获得:find /usr/lib -name "libclang_rt.builtins-x86_64.a"
#/usr/lib/llvm-15/lib/clang/15.0.7/lib/linux/libclang_rt.builtins-x86_64.a
export LDFLAGS="-L/usr/lib/llvm-15/lib/clang/15.0.7/lib/linux"
rm -rf build
HIPCXX="$(hipconfig -l)/clang" HIP_PATH="$(hipconfig -R)" cmake -S . -B build -DGGML_HIP=ON -DGPU_TARGETS=gfx928 -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release -- -j 128

最终成功的编译结果截图:

128核cpu并行编译,耗时7分钟38秒。

三、参考文献

相关推荐
WPG大大通2 小时前
AIoT | 软件:Astra MCP边缘算力构建详解
经验分享·笔记·python·硬件架构·代码
卡提西亚2 小时前
C++笔记-21-运算符重载
c++·笔记
草莓熊Lotso3 小时前
C++ 继承特殊场景解析:友元、静态成员与菱形继承的底层逻辑
服务器·开发语言·c++·人工智能·经验分享·笔记·1024程序员节
yuxb733 小时前
Zabbix企业级分布式监控系统(下)
笔记·zabbix
im_AMBER3 小时前
算法笔记 10
笔记·学习·算法·leetcode
9ilk3 小时前
【基于one-loop-per-thread的高并发服务器】--- 前置技术
运维·服务器·c++·笔记·后端·中间件
charlie1145141919 小时前
CSS笔记4:CSS:列表、边框、表格、背景、鼠标与常用长度单位
css·笔记·学习·css3·教程
tjsoft10 小时前
汇通家具管理软件 1.0 试用笔记
笔记
卡提西亚11 小时前
C++笔记-10-循环语句
c++·笔记·算法