【个人开发】llama2部署实践(二)——基于GPU部署踩坑

折腾了一整天,踩了GPU加速的一堆坑,记录一下。

1.GPU加速方式

上篇已经写了llama2部署的大概流程:【【个人开发】llama2部署实践(一)】------基于CPU部署

针对llama.cpp文件内容,仅需再make的时候带上参数编译,既可实现GPU加速。

shell 复制代码
make LLAMA_CUBLAS=1

备注:可用的版本组合:

cc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2)

g++ (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2)

Build cuda_11.8.r11.8/compiler.31833905_0

2.踩坑分享

a.编译报错

more than one instance of overloaded function "log2" matches the argument list:

复现不出来了,大意:function.h文件中,math函数中log参数传递有误。

思考一下,应该就是c文件的问题,文件路径在cuda中,评估应该是cuda版本的问题。选择卸载原来cuda12.04的版本,下载11.8版本。

b.卸载CUDA:

一通无脑卸载

shell 复制代码
yum remove nvidia-*
rpm -qa|grep -i nvid|sort
yum  remove kmod-nvidia-*

rm -rf /usr/local/cuda-12.0
rm -rf /usr/local/cuda

c.下载CUDA11.8

其他三种下载方式都试了,最后用run这种方式搞出来的。

shell 复制代码
# 访问https://developer.nvidia.com/cuda-downloads
# 使用run文件方式
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run
# 参考链接:https://zhuanlan.zhihu.com/p/589442446

run在执行的时候可能会出现报错:

The NVIDIA proprietary driver is already installed in this system. It was installed through a 3d party repository

意思是驱动已经装上去了,不需要再装。所以选择页面取消Driver的勾选,即可。
注:如果服务器使用nvidia-smi能显示显卡出信息,则说明已经安全驱动,我这里将Toolkit理解为一个客户端工具

d.重新编译llama.cpp

如何重新编译后带上ngl参数去跑main程序,留意一下有没有下面的warning。

warning: not compiled with GPU offload support, --n-gpu-layers option will be ignored

warning: see main README.md for information on enabling GPU BLAS support

如果有那说明仍然没有使用GPU,建议重新拉llama.cpp代码进行编译。

shell 复制代码
make LLAMA_CUBLAS=1

e.重新启动

shell 复制代码
./main -m /data/opt/llama2_model/llama-2-7b-bin/ggml-model-f16.bin -n 256 --repeat_penalty 1.1 --color -i -f prompts/alpaca.txt -ins -c 2048 --temp 0.2 -ngl 15

f.查看进程

使用下面命令能监听到进程,如果processes存在进程,即可!

shell 复制代码
watch -n 0.5 nvidia-smi

以上,End!

相关推荐
算力百科小星10 小时前
AIGC算力平台怎么选?从商品图到视频创作,四类服务各适合什么需求
gpu算力·autodl·智星云·gpu租用服务
强哥聊算力13 小时前
《算力江湖·国产GPU突围:摩尔线程故事》第四集:从图形到AI:摩尔线程为什么必须冲进大模型赛道?
运维·服务器·人工智能·ai·gpu算力
四六的六13 小时前
一次改回去越界的沙箱复盘:配置恢复了,token 还活着,检测器漏了最关键的那条
人工智能·openai·agent·个人开发·ai编程·ai大模型·ai产品
晚风吹北巷2 天前
基于LLama-Factory 进行Lora微调
llama
miao_0v02 天前
10.20任务
学习·个人开发
你都会上树?2 天前
本地部署模型 llama + opencode + Qwen3.8-32b
llama
Smoothcloud润云2 天前
GPU算力平台推荐:新手租GPU时,镜像环境和显存应该怎么选?
大数据·人工智能·pytorch·分布式·深度学习·gpu算力
haluhalu.3 天前
深入理解 AI Agent(1.2):Harness 工程——模型之外的竞争力
前端·数据结构·人工智能·python·langchain·个人开发
夜瞬3 天前
从零微调 Qwen3-8B:基于 LoRA 与 LLaMA-Factory 打造专属 AI 编程助教
人工智能·python·llama
励志师code3 天前
Kubernetes 集群节点生命周期管理实战:从扩容、调度管控到证书续期
运维·docker·容器·kubernetes·gpu算力·kubelet