【背景】在部署Ollama后,始终发现Ollama运行的方式是CPU,这样就会造成我后续下载的模型的运行方式都是CPU,而当前模型运行的方式希望是GPU。
【排查点】
在 Linux 下使用 Ollama 进行 GPU 加速通常需要确保以下几点:
-
安装 NVIDIA 驱动 :确保你的系统已经安装了与 GPU 兼容的 NVIDIA 驱动。 具体安装过程
-
安装 CUDA 和 cuDNN:Ollama 需要 CUDA(并且可能需要 cuDNN)来支持 GPU 加速。确保安装适合你的 NVIDIA 驱动版本的 CUDA 和 cuDNN。
-
设置环境变量:
- 确保将 CUDA 的 bin 和 lib 目录添加到你的 PATH 和 LD_LIBRARY_PATH 环境变量中。
-
安装和配置 Ollama:根据 Ollama 的安装指南进行安装,并确保能够识别和使用 GPU。
-
验证安装:可以通过运行一些 Ollama 提供的示例或测试来验证 GPU 是否被成功识别和使用。
【遇到问题 -1】
在进行CUDA 和 cuDNN的安装排查时:
输入命令 nvcc -V
bash
nvcc -V
# 报错返回
# sh: nvcc: command not found
【解决办法】
查看cuda 的bin 目录下是否有nvcc
bash
cd /usr/local/cuda/bin
ls -a
如果存在,直接将cuda路径加入系统路径即可:
bash
vim ~/.bashrc
增加内容
bash
export LD_LIBRARY_PATH=/usr/local/cuda/lib:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda/bin:$PATH
更新文件
bash
source ~/.bashrc
再次执行nvcc -V 就可以看到相应cuda版本了
vbnet
(weather) sh-4.4$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2024 NVIDIA Corporation
Built on Thu_Mar_28_02:18:24_PDT_2024
Cuda compilation tools, release 12.4, V12.4.131
Build cuda_12.4.r12.4/compiler.34097967_0
【结果】
处理完上述问题后,有重新启动了Ollama,则发现已经在使用GPU运行了;
Ollama服务 启动、查询状态、停止命令
bash
#启动
sudo systemctl start ollama.service
#重启
sudo systemctl restart ollama.service
# 状态
sudo systemctl status ollama.service
#停止
sudo systemctl stop ollama.service
【补充】
在运行Ollama服务 过程中遇到关于daemon-reload的问题则可以运行如下命令
sudo systemctl daemon-reload