安装百度飞桨Paddlepaddle-GPU,解决不能在jupyter notebook中使用等问题
解决了cudnn、cuda的问题、jupyter中运行不了的问题。
大三AI课作业要用到百度飞桨,按官网说的装了一下,没想到出一堆问题,整了一夜。ddl赶不上了,摆烂了,先记下问题的解决过程。
我的环境:
- Ubuntu 22.04
- cuda 11.8
- 最终安装的飞桨版本:paddlepaddle-gpu 2.4.1.post117
问题一,用pip安装之后,cuda报错
按官网的
安装之后,执行run_check检查是否安装成功
import paddle
paddle.utils.run_check()
我先是遇到Error: Cannot load cudnn shared library. Cannot invoke method cudnnGetVersion的问题,检查了cuda的版本和环境变量之后,依旧没有解决。在此期间我将cuda更新为了11.8,cudnn更新为了8.6.0,但报同样的错误。
期间,我的~./bashrc多了设环境变量的三两句,之后证明并非无用:
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/extras/CPUTI/lib64
export CUDA_HOME=/usr/local/cuda/bin
export PATH=$PATH:$LD_LIBRARY_PATH:$CUDA_HOME
参考了https://blog.csdn.net/qq451882471/article/details/106967942之后,将.so文件软连接过去,报错变成了
ExternalError: CUBLAS error(7). [Hint: Please search for the error code(7) on website (https://docs.nvidia.com/cuda/cublas/index.html#cublasstatus_t) to get Nvidia’s official solution and advice about CUBLAS Error.] (at /paddle/paddle/phi/kernels/funcs/blas/blas_impl.cu.h:35)
之后不了了之,最后改用conda建立新的虚拟环境来安装飞桨。
conda create -n pp python==3.9
conda activate pp
conda install paddlepaddle-gpu==2.4.1 cudatoolkit=11.7 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/ -c conda-forge
期间解决了conda换源的问题,但依旧比pip慢很多。装好后进python,import paddle说找不到模块,要再次conda activate才行。
显示PaddlePaddle is installed successfully!表示安装成功
问题二,用jupyter notebook,说没有cuda环境变量
在pycharm的jupyter notebook中,运行官网代码,说input出错,运行run_check说LD_LIBRARY_PATH没有设置,但我在安装cuda时已经设过,而且用env也能看见。

查到是jupyter notebook没有继承环境变量,参考了https://github.com/jupyter/notebook/issues/1290,手动在jupyter运行之前的配置脚本里将路径加上,最终解决了问题
生成配置文件:
jupyter notebook --generate-config
查看文件路径,一般是~/.jupyter/jupyter_notebook_config.py
jupyter --config-dir
添加到文件开头:
import os
os.environ['LD_LIBRARY_PATH'] = '/usr/local/cuda/lib64'
再运行jupyter,没有报错了,可以跑模型了
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)