部署stable diffusion webui中会遇到的一个问题
cuda动态链接库问题
报错样例
Launching Web UI with arguments: --skip-torch-cuda-test
Traceback (most recent call last):
File "/home/user/stable-diffusion-webui-1.8.0/stable-diffusion-webui/launch.py", line 48, in <module>
main()
File "/home/user/stable-diffusion-webui-1.8.0/stable-diffusion-webui/launch.py", line 44, in main
start()
File "/home/user/stable-diffusion-webui-1.8.0/stable-diffusion-webui/modules/launch_utils.py", line 465, in start
import webui
File "/home/user/stable-diffusion-webui-1.8.0/stable-diffusion-webui/webui.py", line 13, in <module>
initialize.imports()
File "/home/user/stable-diffusion-webui-1.8.0/stable-diffusion-webui/modules/initialize.py", line 15, in imports
import torch # noqa: F401
File "/home/user/stable-diffusion-webui-1.8.0/stable-diffusion-webui/venv/lib/python3.10/site-packages/torch/__init__.py", line 235, in <module>
from torch._C import * # noqa: F403
ImportError: /usr/local/cuda-12.0/lib64/libcudnn.so.8: file too short
原因
提到的 /usr/local/cuda-12.0/lib64 该文件夹其实指向 /usr/local/cuda-12.0/targets/x86_64-linux/lib/
其中的libcudnn.so.8 字节长度为0,或者指向错误。
解决方法
删掉无效文件,重新建立软链接
sudo rm libcudnn.so.8
sudo ln -s libcudnn.so.8.8.0 libcudnn.so.8