CUDA
CUDA是NVIDIA推出的用于自家GPU的并行计算框架,也就是说CUDA只能在NVIDIA的GPU上运行,而且只有当要解决的计算问题是可以大量并行计算的时候才能发挥CUDA的作用。
cuDNN
cuDNN(CUDA Deep Neural Network library):是NVIDIA打造的针对深度神经网络的加速库,是一个用于深层神经网络的GPU加速库。如果你要用GPU训练模型,cuDNN不是必须的,但是一般会采用这个加速库。
CUDA Driver Version和CUDA Runtime Version的区别
GPU Driver, CUDA 和 PyTorch的版本关系
CUDA Toolkit 安装
- 安装之前首先要确认你需要安装的CUDA和cuDNN的版本
- 首先确定CUDA的版本
- 然后选择一个与之适配cuDNN版本
- root权限同时安装多个版本的cuda,并且进行配置
- 非root权限从已安装的CUDA版本中选择合适的版本,在修改环境变量进行配置
-
切换CUDA的两种方式
- 修改 ~/.bashrc 中CUDA的环境变量(推荐)
- 修改cuda库的软连接(root权限)
-
官网下载目标版本的CUDA
Installer Type 选择 runfile(local),比较方便
下载地址:https://developer.nvidia.com/cuda-toolkit-archive -
安装CUDA安装依赖库(可选,已安装可忽略)
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler sudo apt-get install --no-install-recommends libboost-all-dev sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
-
命令行运行CUDA安装包
cd {dir of cuda installer} bash ./{version of cuda}.run
-
选择accept
-
已经安装了显卡驱动,不要选择安装“Driver”,其他选项默认。
-
选择安装的类型,不要覆盖/usr/local/cuda ,新建一个cuda版本的文件夹/usr/local/cuda-{version}
-
安装成功说明
#对以上的截图进行说明,可见说的很清楚,包括了:1、成功安装的和未选择安装的;2、如何卸载等信息 #整体说明,除了驱动外,Toolkit和Samples已经安装了 Driver: Not Selected Toolkit: Installed in /home/John/Softwares/cuda-10.2/ Samples: Installed in /home/John/Softwares/cuda-samples/ #去核实一遍,刚指定的安装目录下是否存在以下文件 Please make sure that - PATH includes /home/John/Softwares/cuda-10.2/bin - LD_LIBRARY_PATH includes /home/John/Softwares/cuda-10.2/lib64, or, add /home/John/Softwares/cuda-10.2/lib64 to /etc/ld.so.conf and run ldconfig as root #若先想要卸载cuda,执行该命令即可 To uninstall the CUDA Toolkit, run cuda-uninstaller in /home/John/Softwares/cuda-10.2/bin #有一个pdf安装指导文件 Please see CUDA_Installation_Guide_Linux.pdf in /home/John/Softwares/cuda-10.2/doc/pdf for detailed information on setting up CUDA. #因为驱动已经满足要求,所以cuda安装过程中选择了no,并说明了版本至少是440.00 ***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A drriver of version at least 440.00 is required for CUDA 10.2 functionality to work. #若还是想要安装驱动,可以再安装一次.run文件,但加了参数说明只安装驱动 To install the driver using this installer, run the following command, replacing <CudaInstaller> with the name of this run file: sudo <CudaInstaller>.run --silent --driver #安装过程的日志写在了这个.log文件中,若出现安装错误可以看日志,查看出错的步骤在哪 Logfile is /var/log/cuda-installer.log
-
-
-
添加CUDA到环境变量
export PATH=/usr/local/{cuda root}/bin:$PATH export LD_LIBRARY_PATH=/usr/local/{cuda root}/lib64$LD_LIBRARY_PATH
-
测试CUDA安装成功(root管理者操作)
cd /usr/local/{cuda - version}/samples/1_Utilities/deviceQuery sudo make clean #make的前提是新建软连接, 创建一个“cuda”的软连接 ln -s /usr/local{cuda -version} /usr/local/cuda sudo make ./deviceQuery
-
成功,输出Device的情况
Result = PASS
-
失败,情况很多
CUDA driver version is insufficient for CUDA runtime version
-
-
下载 cuDNN Archive (需要登入NVIDIA账号后,下载到本地,然后上传服务器)
https://developer.nvidia.com/rdp/cudnn-archive
-
cuDNN与CUDA的版本关系
- 下载cuDNN的时候,选择对应的版本
-
解压文件
$ tar -xzvf cudnn-11.0-linux-x64-v7.tgz # 解压完后,对文件名进行修改
-
拷贝.h 和 libs文件到对应版本cuda的安装目录下,并给予执行权限:
$ sudo cp {cudnn root}/include/cudnn.h {cuda root}/include $ sudo cp {cudnn root}/lib64/libcudnn* {cuda root}/lib64 $ sudo chmod a+r {cudnn root}/include/cudnn.h {cuda root}/lib64/libcudnn*
-
参考链接: