如何在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秒。

三、参考文献

相关推荐
M78佐菲5 小时前
ARM学习笔记(1)
linux·arm开发·笔记·嵌入式硬件·学习
益达丫6 小时前
Socket编程揭秘:端口、IP与进程通信的底层逻辑
linux·笔记
马可家的菠萝11 小时前
你收藏的资料,有多少真的被你第二次打开过?
笔记·知识管理·效率提升·个人知识库
小刘在重生~12 小时前
Java Lock 显式锁案例|ReentrantLock 解决多线程安全问题(超详细实战)
java·笔记·面试
职豚求职小程序12 小时前
中国人寿27秋招笔试[特殊字符]北森机考|备考攻略
笔记
江湖人称菠萝包12 小时前
【Qt】《Qt 5.9 C++开发指南》笔记-Chapter9-Qt Charts
笔记·qt·qt5
乐橙开放平台12 小时前
从「多套客户端」到一套开放能力:乐橙视频监控能力复盘
笔记·物联网·自动化·音视频·智能家居
山岚的运维笔记13 小时前
mysql 专业笔记 -- 第 36 章:MySQL 管理
运维·数据库·笔记·后端·mysql·oracle·dba
江湖人称菠萝包15 小时前
【Qt】《Qt 5.9 C++开发指南》笔记-Chapter10-Data Visualization
笔记·qt·qt5
老当益壮梁奶奶16 小时前
ARM汇编学习笔记(五):从按键轮询到 GIC 中断控制器(ARM Cortex-A7 )
arm开发·笔记·单片机·嵌入式硬件