CUDA and cuDNN 配置

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版本中选择合适的版本,在修改环境变量进行配置
  1. 切换CUDA的两种方式

    1. 修改 ~/.bashrc 中CUDA的环境变量(推荐)
    2. 修改cuda库的软连接(root权限)
  2. 官网下载目标版本的CUDA

    Installer Type 选择 runfile(local),比较方便

    下载地址:https://developer.nvidia.com/cuda-toolkit-archive
  3. 安装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
    
  4. 命令行运行CUDA安装包

    cd {dir of cuda installer}
    bash ./{version of cuda}.run
    
    1. 选择accept

    2. 已经安装了显卡驱动,不要选择安装“Driver”,其他选项默认。

    3. 选择安装的类型,不要覆盖/usr/local/cuda ,新建一个cuda版本的文件夹/usr/local/cuda-{version}

      1. 安装成功说明

        #对以上的截图进行说明,可见说的很清楚,包括了: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
        
  5. 添加CUDA到环境变量

    export  PATH=/usr/local/{cuda root}/bin:$PATH
    export  LD_LIBRARY_PATH=/usr/local/{cuda root}/lib64$LD_LIBRARY_PATH
    
  6. 测试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
    
    1. 成功,输出Device的情况

      Result = PASS
      

    2. 失败,情况很多

      CUDA driver version is insufficient for CUDA runtime version
      
  7. 下载 cuDNN Archive (需要登入NVIDIA账号后,下载到本地,然后上传服务器)

    https://developer.nvidia.com/rdp/cudnn-archive

    1. cuDNN与CUDA的版本关系

      1. 下载cuDNN的时候,选择对应的版本
    2. 解压文件

      $ tar -xzvf cudnn-11.0-linux-x64-v7.tgz # 解压完后,对文件名进行修改
      
    3. 拷贝.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*
      

参考链接:

https://www.jianshu.com/p/eb5335708f2a

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值