ollama 在WSL2下,12GB显存的GPU无法加载8B模型,

7hiiyaii  于 2个月前  发布在  其他
关注(0)|答案(5)|浏览(69)

问题是什么?

我无法在我的RTX 3060 12GB上运行任何小型模型(8B模型)。
Ollama安装在WSL2下的Win10。

服务器日志已上传 ollama_log_error.txt
更多信息:

  • nvidia-smi运行良好。
  • 已安装cuda,cuda示例设备查询运行良好。

操作系统

WSL2

GPU

Nvidia

CPU

Intel

Ollama版本

0.3.0

gtlvzcf8

gtlvzcf81#

请在主机系统上检查nvidia-smi和任务管理器,查看检测到的可用显存有多少?
这条日志信息有点意外

unable to load cuda driver library" library=/usr/lib/x86_64-linux-gnu/libcuda.so.418.226.00 error="symbol lookup for cuCtxCreate_v3 failed: /usr/lib/x86_64-linux-gnu/libcuda.so.418.226.00: undefined symbol: cuCtxCreate_v3

驱动程序418相当旧。这是您在主机上使用的版本吗,还是可能存在版本不匹配的情况?
下一行暗示您正在使用500系列的驱动程序:

inference compute" id=GPU-bca32961-2a44-3c18-c167-8306f3d51df9 library=cuda compute=8.6 driver=12.6 name="NVIDIA GeForce RTX 3060" total="12.0 GiB" available="11.0 GiB

我的怀疑是WSL cuda组件不同步,以某种方式导致了错误的可用显存报告,因此我们尝试加载过多的层。

arknldoa

arknldoa2#

ollama/phi3模型不再为我工作。它们需要更新,因为几天前出现了问题[#5956](https://github.com/ollama/ollama/issues/5956)
kt06eoxx

kt06eoxx3#

请检查主机系统上的nvidia-smi和任务管理器,看看检测到的可用显存是多少?
这条日志信息有点意外

unable to load cuda driver library" library=/usr/lib/x86_64-linux-gnu/libcuda.so.418.226.00 error="symbol lookup for cuCtxCreate_v3 failed: /usr/lib/x86_64-linux-gnu/libcuda.so.418.226.00: undefined symbol: cuCtxCreate_v3

驱动程序418相当旧。这是您在主机上使用的版本吗,还是可能存在版本不匹配的情况?
下一行暗示您正在使用500系列的驱动程序:

inference compute" id=GPU-bca32961-2a44-3c18-c167-8306f3d51df9 library=cuda compute=8.6 driver=12.6 name="NVIDIA GeForce RTX 3060" total="12.0 GiB" available="11.0 GiB

我的怀疑是WSL cuda组件不同步,以某种方式导致了错误的可用显存报告,因此我们尝试加载太多层。
你好@dhiltgen,
nvidia-smi和Windows任务管理器都可以检测到12GB VRAM

xqkwcwgp

xqkwcwgp4#

我重新安装了以下内容:

NVIDIA-SMI

CUDA

devideQuery

仍然无法工作

之前的日志中的这部分已经消失了
无法加载cuda驱动库" library=/usr/lib/x86_64-linux-gnu/libcuda.so.418.226.00 error="symbol lookup for cuCtxCreate_v3 failed: /usr/lib/x86_64-linux-gnu/libcuda.so.418.226.00: undefined symbol: cuCtxCreate_v3
但问题仍然是一样的。

服务器日志

ollama_logs_2.txt

zpf6vheq

zpf6vheq5#

我没有相同的设置,但在12G的cuda卡上,加载llama3只使用了约6G的显存,所以我很困惑为什么它会在你的系统上出现OOM,而看起来有11G的空闲显存。

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI        PID   Type   Process name                              GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A    142720      C   ...unners/cuda_v11/ollama_llama_server       6188MiB |
+-----------------------------------------------------------------------------------------+
% ollama ps
NAME         	ID          	SIZE  	PROCESSOR	UNTIL
llama3:latest	71a106a91016	6.7 GB	100% GPU 	3 minutes from now

一个可能有助于揭示一些情况的实验是尝试强制使用较少的层数,并找出它实际上可以在GPU上分配多少显存,然后检查nvidia-smi在主机和wsl以及任务管理器上的情况。

% curl http://localhost:11434/api/generate -d '{
  "model": "llama3",
  "prompt": "hello",
  "stream": false, "options": {"num_gpu": 32 }
}'

相关问题