百度AI studio配置cuda +cudnn(详细教程)

从无搭建GPU环境经验,尝试一天终于完成,原来一轮训练需要15个小时GPU20多分钟。

1.注册 百度的AI studio平台,完成任务(两三分钟)可以获得100小时的GPU

https://aistudio.baidu.com/    (创建项目,上传数据集,启动项目很快就能学会使用)

 启动环境进入终端

 2.开始配置cuda cudnn

少走弯路:直接看坑

先确定cuda 版本,再选择对应版本的cudnn 和 tf;

查看显卡驱动:nvidia-smi 

 查看驱动对应的cuda版本 https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html

 注:显卡驱动是向下兼容的,平台的驱动是396,无法安装cuda10;所以选择cuda9.

2.选择cudnn 版本 https://tensorflow.google.cn/install/source#linux

 注:最终选择 cudnn 7 好 tf-1.12.0;  

3.安装

3.1 下载 cudnn 

cudnn地址:https://developer.nvidia.com/rdp/cudnn-archive  需要注册登录

cudnn 需要和linux系统版本对应 查看linux版本

 

 3.2 下载cudnn 之后改个短的名字通过studio 平台中的项目上传数据集

如果项目已经创建可以选择修改上传数据集

 

3.3 上传之后的数据在~/data目录下,然后进入aistudio 平台终端 下载cuda9.0

wget https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run

新建一个目录 : mkdir cuda-9.0

安装cuda :  sh cuda_9.0.176_linux-run --silent --toolkit --toolkitpath=$HOME/cuda-9.0

3.4 安装cudnn 

mkdir -p extract/DEBIAN
dpkg -X ./xxx.deb extract
dpkg -e ./xxx.deb extract/DEBIAN

cp extract/usr/include/x86_64-linux-gnu/cudnn_v7.h  cuda-9.0/include/
cp extract/usr/lib/x86_64-linux-gnu/libcudnn*  cuda-9.0/lib64/

配置环境

vi ~/.bashrc

export PATH=/home/aistudio/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/home/aistudio/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_HOME=/home/aistudio/cuda-9.0

source  ~/.bashrc

3.5新建虚拟环境

conda create -n env_name python=3.6

source activate env_name

3.6 安装 tensorflow-gpu

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow-gpu==1.12.0

3.7 执行

chmod a+r ~/cuda-9.0/include/cudnn.h
chmod a+r ~/cuda-9.0/lib64/libcudnn*

3.8 测试

 4.可能会遇到的问题

4.1 libcudnn.so.版本: cannot open shared object file: No such file or directory

原因之一是由于cudnn 和cuda版本不兼容导致解决办法根据前面描述确定好对应的版本重新安装

原因二环境变量的问题

4.2 cudaErrorCudartUnloading CUDA: CUDA driver version is insufficient for CUDA runtime version

显卡驱动和cuda版本兼容问题 见前。解决办法其一:降低cuda到适用版本重新安装。其二:升级驱动(没尝试)

4.3 如果安装keras 报错

AttributeError: module 'tensorflow.python.keras.backend' has no attribute 'get_graph'

keras和tf版本兼容问题 查看 https://docs.floydhub.com/guides/environments/

5.其他

卸载cuda

cuda-9.0/bin/uninstall_cuda_9.0.pl

卸载 cudnn

sudo rm -rf ~/cuda-9.0/include/cudnn_v7.h
sudo rm -rf ~/cuda-9.0/lib64/libcudnn*

参考https://blog.csdn.net/firesolider/article/details/105023062

猜你喜欢

转载自www.cnblogs.com/pergrand/p/12803742.html