必威体育Betway必威体育官网
当前位置:首页 > IT技术

最正确的姿势安装cudnn,网上大多数教程都太坑了

时间:2019-06-13 16:43:09来源:IT技术作者:seo实验室小编阅读:80次「手机版」
 

cudnn

Linux!Linux!Linux!!!

为什么需要安装cudnn

cuDNN的全称为NVIDIA CUDA® Deep Neural Network library,是NVIDIA专门针对深度神经网络(Deep Neural Networks)中的基础操作而设计基于GPU的加速库。cuDNN为深度神经网络中的标准流程提供了高度优化的实现方式,例如convolution、pooling、normalization以及activation layers的前向以及后向过程。

cuDNN只是NVIDIA深度神经网络软件开发包中的其中一种加速库。想了解NVIDIA深度神经网络加速库中的其他包请戳链接https://developer.nvidia.com/deep-learning-software。

各深度学习框架安装cuDNN需知

基本上所有的深度学习框架都支持cuDNN这一加速工具,例如:Caffe、Caffe2、TensorFlow、Torch、Pytorch、Theano等。

Caffe可以通过修改Makefile.config中的相应选项来修改是否在编译Caffe的过程中编译cuDNN,如果没有编译cuDNN的话,执行一些基于Caffe这一深度学习框架的程序速度上要慢3-5倍(Caffe官网上说不差多少,明明差很多嘛)。Caffe对cuDNN的版本不是很严格,只要大于cuDNN 4就可以。

TensorFlow目前的版本r1.2,强行要求装cuDNN,而且对版本也有相应的限制(cuDNN 5.1)。不过就官方说明看,TensorFlow将在下一个版本r1.3中加入对cuDNN 6.0的支持。

Torch通过LuaJit可以自动检测目前系统中的cuDNN版本来进行相应的编译(如没有cuDNN,也可在进行Torch的安装)。

如何安装cudnn

首先说一下网上大多数中文安装cuDNN教程的错误方式,这种方式真的坑人无数

简单地说网上的大多错误的安装cuDNN的方式都是将下载后的cuDNN压缩包解压。然后再将cudnn的头文件(cuda/include目录下的.h文件)复制到cuda安装路径的include路径下,将cudnn的库文件(cuda/lib64目录下的所有文件)复制到cuda安装路径的lib64路径下。这种方法如果不重置cuDNN相应的符号链接的话是不能成功的安装cuDNN的。

下面我们说一下正确的安装cuDNN方式,其实跟着官方安装说明进行安装就可以了。

  1. 从https://developer.nvidia.com/cudnn上下载cudnn相应版本的压缩包(可能需要注册或登录)。

  2. 如果这个压缩包不是.tgz格式的,把这个压缩包重命名为.tgz格式。解压当前的.tgz格式的软件包到系统中的任意路径(这个路径很重要,以下将该路径的绝对路径简称为/your/path/to/cudnn),解压后的文件夹名为cuda,文件夹中包含两个文件夹:一个为include,另一个为lib64。

    例如:我将这个压缩包解压在了/usr/local目录下,那么该文件的绝对路径为/usr/local/cuda

tar -zvxf archive_name.tar.gz -C /usr/local
  1. 将解压后的文件中的lib64文件夹关联到环境变量中。这一步很重要。
   cd ~
   sudo gedit .bashrc

在弹出的gedit文档编辑器(.bashrc中)中最后一行加入:

   export LD_LIBRARY_PATH=/your/path/to/cuda/lib64:$LD_LIBRARY_PATH

其中/your/path/to/cudnn/lib64是指.tgz解压后的文件所在路径中的lib64文件夹。

保存更改的文件后,紧接着:

   source .bashrc

重启一下Terminal(终端),该步骤可以成功的配置cuDNN的Lib文件。

配置cuDNN的最后一步就是将解压后的cuDNN文件夹(一般该文件名为cuda)中的include文件夹(/your/path/to/cudnn/include)中的cudnn.h文件拷贝到/usr/local/cuda/include中,由于进入了系统路径,因此执行该操作时需要获取管理员权限。

打开终端,进入/your/path/to/cudnn/include。其中/your/path/to/cudnn/include指的是.tgz解压后的文件所在路径中的include文件夹。例如:

   cd /YOUR/PATH/TO/cuda/include
   sudo cp *.h /usr/local/cuda/include/

其中这里的cuda/include对于我自己的安装来说就是/your/path/to/cudnn/include。因为我将cudnn的.tgz压缩包解压到了home的当前用户的路径下,解压后的文件夹名为cuda。

之后,再重置cudnn.h文件的读写权限:

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

至此,cuDNN的配置就全部安装完成了。

另外:

查看cuda版本的方法:

cat /usr/local/cuda/version.txt

查看cudnn版本的方法:

cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

相关阅读

Ubuntu下如何用命令行运行deb安装包

如果ubuntu要安装新软件,已有deb安装包(例如:iptux.deb),但是无法登录到桌面环境。那该怎么安装?答案是:使用dpkg命令。dpkg命令常用格式

gateone服务器安装 基本使用

概述服务器配置gateone服务器安装系统环境准备gateone安装gateone验证gateone嵌入Web应用基本嵌入方式进阶服务器配置 项目 g

Homebrew安装brew:command not found,及could not symli

一 什么是Homebrew首先,点击这里是homebrew官网,我们可以看到官方给出的定义是The missing package manager for macOS,大体可以翻译

Linux中使用rpm命令安装rpm包

安装软件包命令,参数指明了( v 展示正在安装的文件信息   1 #rpm -i example.rpm 安装 example.rpm 包; 2 #rpm -iv example.rpm

weblogic 安装部署详解

0x01 weblogic下载安装去Oracle官网下载Weblogic 10.3.6,选择Generic版本,各版本选择下载地址:http://www.oracle.com/technetwo

分享到:

栏目导航

推荐阅读

热门阅读