ubuntu16.04/18.04 GPU服务器安装cuda和cudnn

cuda、cudnn 可以直接用安装包进行安装,此时安装的 cuda、cudnn 在anaconda的所有环境中都可以调用。然后在anaconda的虚拟环境中也是可以直接conda install安装,但是在虚拟环境中安装的cuda、cudnn只能在该虚拟环境中调用。

注意:cuda9.0必须要Nivdia 384及以上才可以正常安装,如果不满足版本要求或没有安装英伟达驱动,则需要重新安装驱动。

查看当前服务器上已经安装的cuda、cudnn版本

查看cuda版本:

如果没安装nvcc:cat /usr/local/cuda/version.txt 

安装了nvcc:nvcc -V 

注意:如果在terminal中输入nvcc -V,提示找不到command。提示你 sudo apt-get install nvidia-cuda-toolkit。千万不要这样做!!!!这样做会重新安一套其他版本的cuda,就全乱掉了根本不兼容,千万不要手贱!!!如果手贱运行了这一行,参考解决办法:

1.使用sudo apt-get autoremove nvidia-cuda-toolkit 卸载这个命令安装的这个版本

2.查看/usr/local/cuda/bin下是否有nvcc可执行程序,如果没有说明cuda没有正常安装,需要重新安装,如果有,进入下一步

3.添加环境变量,打开~/.bashrc ,添加环境变量export PATH=$PATH:/usr/local/cuda/bin

4.再在terminal中输入nvcc --version可以看到已经可以显示为8.0版本了

查看cudnn版本:

安装了cudnn:cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 

查看虚拟环境中安装的cuda和cudnn版本(通过导入pytorch进行验证): 

import torch 

print(torch.version.cuda) 

# 9.0.176 

print(torch.backends.cudnn.version()) 

# 7301 

若服务器上已安装到版本不满足要求,可以先卸载当前版本,然后安装新版本。目前不确定是否可以同时安装多个版本的cuda、cudnn,应该是可以的,但是需要反复修改环境变量。 

卸载用安装包安装的cuda、cudnn

卸载cuda(两种方式 uninstall_cuda_10.0.pl 或 cuda-uninstaller,需根据cuda版本决定): 

sudo /usr/local/cuda-10.0/bin/uninstall_cuda_10.0.pl 

sudo /usr/local/cuda-10.1/bin//cuda-uninstaller 

然后删除cuda的目录,注意cuda版本 

sudo rm -rf /usr/local/cuda-10.0/ 

卸载cudnn(如果cuda已经卸载并删除了目录,该步骤可以跳过)

sudo rm -rf /usr/local/cuda/include/cudnn.h 

sudo rm -rf /usr/local/cuda/lib64/libcudnn* 

卸载conda虚拟环境中安装的cuda、cudnn

conda uninstall cudatoolkit 

conda uninstall cudnn 

用安装包进行安装

下载安装包

cuda下载地址: https://developer.nvidia.cn/cuda-toolkit-archive

cudnn下载地址: https://developer.nvidia.com/rdp/cudnn-archive 

cudnn下载需要注册账户并登陆才行 

安装cuda

将所有的安装包都拷贝到服务器上,然后按照下面步骤安装cuda 

需要注意下面,选择不安装英伟达驱动

sudo sh cuda_10.0.130_410.48_linux.run --no-opengl-libs 

  1. Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 410.48? 
  2. (y)es/(n)o/(q)uit: no 

安装完成后,环境变量修改(注意cuda的版本) 

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.0/lib64 

export PATH=$PATH:/usr/local/cuda-10.0/bin 

export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-10.0 

安装完成后,通过上面查看cuda版本的命令查看版本 

安装cudnn

将cudnn压缩包传到服务器,如cudnn-11.0-linux-x64-v8.0.5.39.tgz,然后解压 tar zxvf cudnn-11.0-linux-x64-v8.0.5.39.tgz,输出一个名称是cuda的目录,目录下有三个内容“include”、“lib64”、   

“NVIDIA_SLA_cuDNN_Support.txt”。其中“NVIDIA_SLA_cuDNN_Support.txt”是不需要的。 

sudo cp include/* /usr/local/cuda/include/ 

sudo cp lib64/* /usr/local/cuda/lib64/ 

sudo chmod a+x /usr/local/cuda/include/cudnn.h 

sudo chmod a+x /usr/local/cuda/lib64/libcudnn* 

安装完成后,通过上面查看cudnn版本的命令查看版本 

conda虚拟环境安装

使用conda在虚拟环境中安装cuda和cudnn,可以保证不影响系统默认环境的cuda和cudnn。conda的默认源速度慢且没有cuda版本,因此需要添加国内清华或者中科大的源,如下:

conda config --add channels Index of /anaconda/pkgs/free/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

conda config --add channels Index of /anaconda/pkgs/main/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

conda config --add channels Index of /anaconda/cloud/pytorch/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

conda config --set show_channel_urls yes

注意:在conda虚拟环境下安装cuda和cudnn,很多人会设置镜像源为清华源,阿里源等。但这些源并不是包含所有的版本,需要以下命令确认所支持的版本:

conda search cuda
conda search cudnn

安装cuda

以安装 cuda11.0 为例

conda install cudatoolkit=11.0 -c Index of /anaconda/pkgs/free/linux-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

安装cudnn

以安装 cudnn7.1.2 为例

conda install cudnn=7.1.2 -c Index of /anaconda/pkgs/main/linux-64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

sudo chmod a+x /root/anaconda3/envs/r3det/include/cudnn.h

sudo chmod a+x /root/anaconda3/envs/r3det/lib/libcudnn*

虚拟环境手动安装cuda和cudnn

通过conda安装cuda和cudnn,有的时候找不到对应的cuda版本和对应的cudnn版本,所以类似用安装包安装cuda和cudnn,可以下载cuda和cudnn的安装包,然后在对应的虚拟环境中用conda install安装cuda,手动将cudnn的文件复制到虚拟环境对应的位置就可以了。 

查看虚拟环境中cuda和cudnn安装的位置:【conda虚拟环境安装CUDA路径】_一苇以航丶的博客-CSDN博客_conda 安装cuda

你可能感兴趣的:(服务器配置,服务器,深度学习,运维)