Abstract

本《 cuDNN 7.6.5安装指南》提供了有关如何在Linux,Mac OS X和Microsoft Windows系统上安装和检查cuDNN的正确操作的分步说明.

有关先前发布的cuDNN安装文档,请参阅cuDNN存档 .

1. Overview

NVIDIA CUDA深度神经网络库(cuDNN)是GPU加速的用于深度神经网络的原语库. cuDNN为标准例程提供了高度优化的实现,例如前向和后向卷积,池化,规范化和激活层. cuDNN是NVIDIA Deep Learning SDK的一部分.

全球的深度学习研究人员和框架开发人员都依赖cuDNN来实现高性能GPU加速. 它使他们可以专注于训练神经网络和开发软件应用程序,而不必花时间在底层GPU性能调整上. cuDNN加速了广泛使用的深度学习框架,并免费提供给NVIDIA开发人员计划的成员.

2. Installing cuDNN On Linux

2.1. Prerequisites

在安装cuDNN之前,请确保满足以下要求.
  • 计算能力为3.0或更高的GPU. 要了解系统上GPU的计算能力,请参阅: CUDA GPU .

  • 有关OS,CUDA,CUDA驱动程序和NVIDIA硬件的最新兼容软件版本,请参阅cuDNN支持列表 .

2.1.1. Installing NVIDIA Graphics Drivers

在Linux系统上安装最新的NVIDIA图形驱动程序.

  1. 转到: NVIDIA下载驱动程序
  2. 从下拉菜单中选择GPU和OS版本.
  3. 如该页面所示下载并安装NVIDIA图形驱动程序. 有关更多信息,请选择" 其他信息"选项卡以获取有关安装驱动程序的分步说明.
  4. 重新启动系统,以确保图形驱动程序生效.

2.1.2. Installing The CUDA Toolkit For Linux

请参阅以下有关在Linux上安装CUDA的说明,包括CUDA驱动程序和工具包: 《针对Linux的NVIDIA CUDA安装指南》 .

2.2. Downloading cuDNN For Linux

为了下载cuDNN,请确保您已注册NVIDIA开发人员计划 .

  1. 转到: NVIDIA cuDNN主页 .
  2. Click Download.
  3. 完成简短调查,然后单击" 提交" .
  4. 接受条款和条件. cuDNN显示的可用下载版本列表.
  5. 选择要安装的cuDNN版本. 显示可用资源列表.

2.3. Installing cuDNN On Linux

以下步骤描述了如何构建cuDNN依赖程序. 选择满足您环境需求的安装方法. 例如,tar文件安装适用于所有Linux平台,而debian安装软件包适用于Ubuntu 14.04、16.04和18.04.

在以下部分中:
  • 您的CUDA目录路径称为/ usr / local / cuda /
  • 您的cuDNN下载路径称为<cudnnpath>

2.3.1. Installing From A Tar File

  1. 导航到包含cuDNN Tar文件的<cudnnpath>目录.
  2. 解压缩cuDNN包.
    $ tar -xzvf cudnn-10.2-linux-x64-v7.6.5.32.tgz
  3. 将以下文件复制到CUDA Toolkit目录中,然后更改文件权限.
    $ sudo cp cuda/include/cudnn.h /usr/local/cuda/include
    $ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
    $ sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

2.3.2. Installing From A Debian File

  1. 导航到包含cuDNN Debian文件的<cudnnpath>目录.
  2. 安装运行时库,例如:
    sudo dpkg -i libcudnn7_7.6.5.32-1+cuda10.2_amd64.deb
  3. 安装开发人员库,例如:
    sudo dpkg -i libcudnn7-dev_7.6.5.32-1+cuda10.2_amd64.deb
  4. 安装代码示例和《 cuDNN库用户指南》,例如:
    sudo dpkg -i libcudnn7-doc_7.6.5.32-1+cuda10.2_amd64.deb

2.3.3. Installing From An RPM File

  1. 将rpm软件包libcudnn * .rpm下载到本地路径.
  2. 从本地路径安装rpm软件包. 这将安装cuDNN库.
    rpm -ivh libcudnn7-*.x86_64.rpm
    rpm -ivh libcudnn7-devel-*.x86_64.rpm
    rpm -ivh libcudnn7-doc-*.x86_64.rpm
    

2.4. Verifying The cuDNN Install On Linux

要验证cuDNN是否已安装并正常运行,请编译位于debian文件中/ usr / src / cudnn_samples_v7目录中的mnistCUDNN示例.

  1. 将cuDNN示例复制到可写路径.
    $cp -r /usr/src/cudnn_samples_v7/ $HOME
  2. 转到可写路径.
    $ cd  $HOME/cudnn_samples_v7/mnistCUDNN
  3. 编译mnistCUDNN示例.
    $make clean && make
  4. 运行mnistCUDNN示例.
    $ ./mnistCUDNN
    如果cuDNN已正确安装并在Linux系统上运行,您将看到类似以下的消息:
      通过测试! 

2.5. Upgrading From v6 To v7

cuDNN v7可以与cuDNN的早期版本共存,例如v5或v6.

2.6. Troubleshooting

加入NVIDIA开发者论坛 ,发表问题并关注讨论.

3. Installing cuDNN On Mac OS X

3.1. Prerequisites

Ensure you meet the following requirements before you install cuDNN.
  • 计算能力为3.0或更高的GPU. 要了解系统上GPU的计算能力,请参阅: CUDA GPU .
  • 有关OS,CUDA,CUDA驱动程序和NVIDIA硬件的最新兼容软件版本,请参阅cuDNN支持列表 .

3.1.1. Installing NVIDIA Graphics Drivers

在Mac OS X系统上安装最新的NVIDIA图形驱动程序.

  1. 转到: NVIDIA下载驱动程序
  2. Select the GPU and OS version from the drop down menus.
  3. 下载并安装NVIDIA图形驱动程序396或更高版本. 有关更多信息,请选择" 其他信息"选项卡以获取有关安装驱动程序的分步说明.
  4. 重新启动系统,以确保图形驱动程序生效.

3.1.2. Installing The CUDA Toolkit For Mac OS X

请参阅以下说明,以在Mac OS X上安装CUDA,包括CUDA驱动程序和工具包: 《用于Mac OS X的NVIDIA CUDA安装指南》 .

3.2. Downloading cuDNN For Mac OS X

为了下载cuDNN,请确保您已注册NVIDIA开发人员计划 .

  1. 转到: NVIDIA cuDNN主页 .
  2. Click Download.
  3. 完成简短调查,然后单击" 提交" .
  4. 接受条款和条件. cuDNN显示的可用下载版本列表.
  5. Select the cuDNN version to want to install. A list of available resources displays.
  6. 将cuDNN存档提取到您选择的目录中.

4. Installing cuDNN On Windows

4.1. Prerequisites

在安装cuDNN之前,请确保满足以下要求.
  • 计算能力为3.0或更高的GPU. 要了解系统上GPU的计算能力,请参阅: CUDA GPU .
  • 有关OS,CUDA,CUDA驱动程序和NVIDIA硬件的最新兼容软件版本,请参阅cuDNN支持列表 .

4.1.1. Installing NVIDIA Graphic Drivers

在Windows系统上安装最新的NVIDIA图形驱动程序.
  1. 转到: NVIDIA下载驱动程序
  2. 从下拉菜单中选择GPU和OS版本.
  3. 如该网页所示下载并安装NVIDIA驱动程序. 有关更多信息,请选择" 其他信息"选项卡以获取有关安装驱动程序的分步说明.
  4. 重新启动系统,以确保图形驱动程序生效.

4.1.2. Installing The CUDA Toolkit For Windows

请参阅以下有关在Windows上安装CUDA的说明,包括CUDA驱动程序和工具包: Windows的《 NVIDIA CUDA安装指南》 .

4.2. Downloading cuDNN For Windows

为了下载cuDNN,请确保您已注册NVIDIA开发人员计划 .

  1. 转到: NVIDIA cuDNN主页 .
  2. Click Download.
  3. 完成简短调查,然后单击" 提交" .
  4. 接受条款和条件. cuDNN显示的可用下载版本列表.
  5. 选择要安装的cuDNN版本. 显示可用资源列表.
  6. 将cuDNN存档提取到您选择的目录中.

4.3. Installing cuDNN On Windows

以下步骤描述了如何构建cuDNN依赖程序. 在以下各节中,以CUDA v9.0为例:
  • 您的CUDA目录路径称为C:\ Program Files \ NVIDIA GPU Computing Toolkit \ CUDA \ v10.2
  • 您的cuDNN目录路径称为<installpath>
  1. 导航到包含cuDNN的<installpath>目录.
  2. 解压缩cuDNN包.
    cudnn-10.2-windows7-x64-v7.6.5.32.zip
    or
    cudnn-10.2-windows10-x64-v7.6.5.32.zip
  3. 将以下文件复制到CUDA Toolkit目录中.
    1. Copy <installpath>\cuda\bin\cudnn64_7.6.5.32.dll to C:\ Program Files \ NVIDIA GPU计算工具包\ CUDA \ v10.2 \ bin.
    2. Copy <安装路径> \ cuda \ include \ cudnn.h to C:\ Program Files \ NVIDIA GPU计算工具包\ CUDA \ v10.2 \ include.
    3. Copy <installpath>\cuda\lib\x64\cudnn.lib to C:\ Program Files \ NVIDIA GPU计算工具包\ CUDA \ v10.2 \ lib \ x64.
  4. 设置以下环境变量以指向cuDNN的位置. 要访问$(CUDA_PATH)环境变量的值,请执行以下步骤:
    1. 从" 开始"菜单中打开命令提示符.
    2. 输入 Run并按Enter .
    3. 发出control sysdm.cpl命令.
    4. 选择窗口顶部的" 高级"选项卡.
    5. 单击窗口底部的环境变量 .
    6. Ensure the following values are set:
      Variable Name: CUDA_PATH 
      Variable Value: C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2
      
  5. 在您的Visual Studio项目中包括cudnn.lib .
    1. 打开Visual Studio项目,然后右键单击项目名称.
    2. Click 链接器>输入>其他依赖项.
    3. 添加cudnn.lib并单击" 确定" .

4.4. Upgrading From v6 To v7

cuDNN v7可以与cuDNN的早期版本共存,例如v5或v6.

4.5. Troubleshooting

加入NVIDIA开发者论坛 ,发表问题并关注讨论.

5. Cross-compiling cuDNN Samples

本节介绍如何交叉编译cuDNN示例.

5.1. NVIDIA DRIVE OS Linux

请按照以下步骤在NVIDIA DRIVE OS Linux上交叉编译cuDNN示例.

5.1.1. Installing The CUDA Toolkit For DRIVE OS

  1. 下载CUDA for Ubuntu软件包: cuda * ubuntu * _amd64.deb
  2. 下载交叉编译包: cuda * -cross-aarch64 * _all.deb
  3. 执行以下命令:
      须藤dpkg -i cuda * ubuntu * _amd64.deb 
      须藤dpkg -i cuda * ubuntu * _amd64.deb 
      sudo apt-get更新 
      须藤apt-get install cuda-toolkit-10-2 -y 
      须藤apt-get install cuda-cross-aarch64 * -y 

5.1.2. Installing cuDNN For DRIVE OS

  1. 为您首选的CUDA工具包版本下载cuDNN Ubuntu软件包: * libcudnn7-cross-aarch64 _ *.deb
  2. 下载交叉编译包: libcudnn7-devel-cross-aarch64 _ *.deb
  3. 执行以下命令:
      须藤dpkg -i * libcudnn7-cross-aarch64 _ *.deb 
      须藤dpkg -i libcudnn7-dev-cross-aarch64 _ *.deb 

5.1.3. Cross-compiling cuDNN Samples For DRIVE OS

cudnn_samples_v7目录复制到您的主目录:

$ cp -r /usr/src/cudnn_samples_v7 $HOME
对于每个样本,执行以下命令:
  $ cd $ HOME / cudnn_samples_v7 /(每个示例) 
  $ make TARGET_ARCH = aarch64 
 

5.2. QNX

请按照以下步骤在QNX上交叉编译cuDNN示例:

5.2.1. Installing The CUDA Toolkit For QNX

  1. 下载CUDA for Ubuntu软件包: cuda * ubuntu * _amd64.deb
  2. 下载交叉编译包: cuda * -cross-aarch64 * _all.deb
  3. 执行以下命令:
      须藤dpkg -i cuda * ubuntu * _amd64.deb 
      须藤dpkg -i cuda * -cross-aarch64 * _all.deb 
      sudo apt-get更新 
      须藤apt-get install cuda-toolkit-10-2 -y 
      须藤apt-get install cuda-cross-qnx -y 

5.2.2. Installing cuDNN For QNX

  1. 为您首选的CUDA工具包版本下载cuDNN Ubuntu软件包: * libcudnn7-cross-aarch64 _ *.deb
  2. 下载交叉编译包: libcudnn7-devel-cross-aarch64 _ *.deb
  3. 执行以下命令:
      须藤dpkg -i * libcudnn7-cross-aarch64 _ *.deb 
      须藤dpkg -i libcudnn7-dev-cross-aarch64 _ *.deb 

5.2.3. Set The Environment Variables

要设置环境变量,请发出以下命令:
  导出CUDA_PATH = {PATH} / install / cuda / 
  导出QNX_HOST = {PATH} / host / linux / x86_64 
  导出QNX_TARGET = {PATH} / target / qnx7 

5.2.4. Cross-compiling cuDNN Samples For QNX

cudnn_samples_v7目录复制到您的主目录:

$ cp -r /usr/src/cudnn_samples_v7 $HOME
对于每个样本,执行以下命令:
  $ cd $ HOME / cudnn_samples_v7 /(每个示例) 
  $ make TARGET_OS = QNX TARGET_ARCH = aarch64 HOST_COMPILER = {设置您的交叉编译器的完整路径}  
  (例如:make TARGET_OS = QNX TARGET_ARCH = aarch64 HOST_COMPILER = $ QNX_HOST / usr / bin / aarch64-unknown-nto-qnx7.0.0-g ++) 

6. Package Manager Installation

软件包管理器的安装与系统的软件包管理器对接.

使用RPM或Deb时,下载的存档是一个存储库. 该存储库不包含实际的安装软件包,仅包含有关在哪里可以在线找到实际的安装软件包的信息. 程序包管理器使用此信息来下载安装程序包并进行安装.

如果实际的安装软件包可在线获得,则软件包管理器将自动下载并安装它们. 否则,程序包管理器将在系统上安装包含安装程序包的本地存储库.

无论存储库是在线可用还是本地安装,安装过程都是相同的,并且由多个步骤组成. 见下文.

6.1. Network Installation

6.1.1. Ubuntu

  1. 下载并安装存储库:
      sudo dpkg -i \ http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/nvidia-machine-learning-repo-ubuntu1604_1.0.0-1_amd64.deb 

    上面的代码将在线安装包含有关适当cuDNN库信息的资源库. 执行以下步骤以安装cuDNN库.

  2. 执行以下步骤来安装cuDNN库:

    sudo apt-get update && sudo apt-get install libcudnn7-dev
    sudo apt-get install libcudnn7=[cudnn_version+cuda_version]
    sudo apt-get install libcudnn7-dev=[cudnn_version+cuda_version]
    
    例如,对于CUDA 10.2和cuDNN 7.6.5:
      须藤apt-get install libcudnn7 = 7.6.5.32-1 + cuda10.2 
      须藤apt-get install libcudnn7-dev = 7.6.5.32-1 + cuda10.2 

6.1.2. RHEL

  1. 下载并安装存储库:
      rpm -ivh http://developer.download.nvidia.com/compute/machine-learning/repos/rhel7/x86_64/nvidia-machine-learning-repo-rhel7-1.0.0-1.x86_64.rpm 
  2. 安装cuDNN软件包:
    1. 对于最新版本:
        须藤百胜安装libcudnn7 
        须藤yum安装libcudnn7-dev 
       
    2. 对于其他版本:
        sudo yum install libcudnn7 = [cudnn_version + cuda_version] 
        sudo yum install libcudnn7-dev = [cudnn_version + cuda_version]
      
      例如,对于CUDA 10.2和cuDNN 7.6.5:
        须藤yum install libcudnn7 = 7.6.5.32-1 + cuda10.2 
        须藤yum install libcudnn7-dev = 7.6.5.32-1 + cuda10.2
      

Notices

Notice

本指南中的信息以及本指南中引用的NVIDIA文档中包含的所有其他信息均按"原样"提供.NVIDIA对产品信息不作任何明示,暗示,法定或其他形式的保证,并且明确地拒绝所有声明.对于特定目的的非侵权,适销性和适用性的默示担保. 尽管客户可能出于任何原因造成任何损害,但根据NVIDIA产品销售条款和条件,NVIDIA对本指南中所述产品对客户的累计和累积责任应受到限制.

THE NVIDIA PRODUCT DESCRIBED IN THIS GUIDE IS NOT FAULT TOLERANT AND IS NOT DESIGNED, MANUFACTURED OR INTENDED FOR USE IN CONNECTION WITH THE DESIGN, CONSTRUCTION, MAINTENANCE, AND/OR OPERATION OF ANY SYSTEM WHERE THE USE OR A FAILURE OF SUCH SYSTEM COULD RESULT IN A SITUATION THAT THREATENS THE SAFETY OF HUMAN LIFE OR SEVERE PHYSICAL HARM OR PROPERTY DAMAGE (INCLUDING, FOR EXAMPLE, USE IN CONNECTION WITH ANY NUCLEAR, AVIONICS, LIFE SUPPORT OR OTHER LIFE CRITICAL APPLICATION). NVIDIA EXPRESSLY DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY OF FITNESS FOR SUCH HIGH RISK USES. NVIDIA SHALL NOT BE LIABLE TO CUSTOMER OR ANY THIRD PARTY, IN WHOLE OR IN PART, FOR ANY CLAIMS OR DAMAGES ARISING FROM SUCH HIGH RISK USES.

NVIDIA不作任何陈述或保证,未经进一步测试或修改,本指南中描述的产品将适用于任何指定用途. NVIDIA不一定要测试每个产品的所有参数. 客户应独自负责确保产品适合并适合客户计划的应用程序,并对应用程序进行必要的测试,以避免应用程序或产品的默认设置. 客户产品设计中的缺陷可能会影响NVIDIA产品的质量和可靠性,并可能导致本指南所含条件之外的其他或不同的条件和/或要求. NVIDIA不承担与基于以下原因或由以下原因引起的任何默认,损坏,费用或问题有关的任何责任:(i)以与本指南相反的任何方式使用NVIDIA产品,或(ii)客户产品设计.

除了让客户与产品一起使用本指南中的信息的权利外,NVIDIA在此指南中不授予任何明示或暗示的其他许可. 仅当NVIDIA书面批准复制,未经修改且具有所有相关条件,限制和声明时,才允许复制本指南中的信息.

Trademarks

NVIDIA,NVIDIA徽标以及cuBLAS,CUDA,cuDNN,DALI,DIGITS,DGX,DGX-1,DGX-2,DGX Station,DLProf,Jetson,Kepler,Maxwell,NCCL,Nsight Compute,Nsight Systems,NvCaffe,PerfWorks, Pascal,SDK Manager,Tegra,TensorRT,TensorRT推理服务器,Tesla,TF-TRT和Volta是NVIDIA Corporation在美国和其他国家/地区的商标和/或注册商标. 其他公司名称和产品名称可能是与它们相关的相应公司的商标.


by  ICOPY.SITE