RM新时代网站-首页

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>通信技術(shù)>網(wǎng)絡(luò)優(yōu)化管理>

NVIDIA深度神經(jīng)網(wǎng)絡(luò)加速庫(kù)cuDNN軟件安裝教程

2017年12月08日 10:40 網(wǎng)絡(luò)整理 作者: 用戶評(píng)論(0

為什么需要安裝cudnn

cuDNN的全稱為NVIDIA CUDA? Deep Neural Network library,是NVIDIA專門針對(duì)深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks)中的基礎(chǔ)操作而設(shè)計(jì)基于GPU的加速庫(kù)。cuDNN為深度神經(jīng)網(wǎng)絡(luò)中的標(biāo)準(zhǔn)流程提供了高度優(yōu)化的實(shí)現(xiàn)方式,例如convolution、pooling、normalization以及activation layers的前向以及后向過程。

cuDNN只是NVIDIA深度神經(jīng)網(wǎng)絡(luò)軟件開發(fā)包中的其中一種加速庫(kù)。

深度學(xué)習(xí)框架安裝cuDNN需知

基本上所有的深度學(xué)習(xí)框架都支持cuDNN這一加速工具,例如:Caffe、Caffe2、TensorFlow、Torch、Pytorch、Theano等。

Caffe可以通過修改Makefile.config中的相應(yīng)選項(xiàng)來修改是否在編譯Caffe的過程中編譯cuDNN,如果沒有編譯cuDNN的話,執(zhí)行一些基于Caffe這一深度學(xué)習(xí)框架的程序速度上要慢3-5倍(Caffe官網(wǎng)上說不差多少,明明差很多嘛)。Caffe對(duì)cuDNN的版本不是很嚴(yán)格,只要大于cuDNN 4就可以。

TensorFlow目前的版本r1.2,強(qiáng)行要求裝cuDNN,而且對(duì)版本也有相應(yīng)的限制(cuDNN 5.1)。不過就官方說明看,TensorFlow將在下一個(gè)版本r1.3中加入對(duì)cuDNN 6.0的支持。

Torch通過LuaJit可以自動(dòng)檢測(cè)目前系統(tǒng)中的cuDNN版本來進(jìn)行相應(yīng)的編譯(如沒有cuDNN,也可在進(jìn)行Torch的安裝)。

如何安裝cudnn

首先說一下網(wǎng)上大多數(shù)中文安裝cuDNN教程的錯(cuò)誤方式,這種方式真的坑人無數(shù)。

簡(jiǎn)單地說網(wǎng)上的大多錯(cuò)誤的安裝cuDNN的方式都是將下載后的cuDNN壓縮包解壓。然后再將cudnn的頭文件(cuda/include目錄下的.h文件)復(fù)制到cuda安裝路徑的include路徑下,將cudnn的庫(kù)文件(cuda/lib64目錄下的所有文件)復(fù)制到cuda安裝路徑的lib64路徑下。這種方法如果不重置cuDNN相應(yīng)的符號(hào)鏈接的話是不能成功的安裝cuDNN的。

下面我們說一下正確的安裝cuDNN方式,其實(shí)跟著官方安裝說明進(jìn)行安裝就可以了。

如果這個(gè)壓縮包不是.tgz格式的,把這個(gè)壓縮包重命名為.tgz格式。解壓當(dāng)前的.tgz格式的軟件包到系統(tǒng)中的任意路徑(這個(gè)路徑很重要,以下將該路徑的絕對(duì)路徑簡(jiǎn)稱為/your/path/to/cudnn),解壓后的文件夾名為cuda,文件夾中包含兩個(gè)文件夾:一個(gè)為include,另一個(gè)為lib64。
例如:我將這個(gè)壓縮包解壓在了/usr/local目錄下,那么該文件的絕對(duì)路徑為/usr/local/cuda

將解壓后的文件中的lib64文件夾關(guān)聯(lián)到環(huán)境變量中。這一步很重要。

cd~
sudogedit .bashrc

在彈出的gedit文檔編輯器(.bashrc中)中最后一行加入:

export?LD_LIBRARY_PATH=/your/path/to/cudnn/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中,由于進(jìn)入了系統(tǒng)路徑,因此執(zhí)行該操作時(shí)需要獲取管理員權(quán)限。

打開終端,進(jìn)入/your/path/to/cudnn/include。其中/your/path/to/cudnn/include指的是.tgz解壓后的文件所在路徑中的include文件夾。例如:

cd cuda/include
sudo cp *.h /usr/local/cuda/include/

其中這里的cuda/include對(duì)于我自己的安裝來說就是/your/path/to/cudnn/include。因?yàn)槲覍udnn的.tgz壓縮包解壓到了home的當(dāng)前用戶的路徑下,解壓后的文件夾名為cuda。

之后,再重置cudnn.h文件的讀寫權(quán)限:

sudo chmoda+r /usr/local/cuda/include/cudnn.h

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

非常好我支持^.^

(0) 0%

不好我反對(duì)

(0) 0%

( 發(fā)表人:steve )

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?
      RM新时代网站-首页