1. 程式人生 > >(2018/4/7更新資源連結)Ubuntu14.04上配置caffe經驗總結(含GPU)

(2018/4/7更新資源連結)Ubuntu14.04上配置caffe經驗總結(含GPU)

-----------------2016/10/27更新-----------------------------

參考連結,感謝原作者!http://blog.csdn.net/enjoyyl/article/details/47397505http://blog.sina.com.cn/s/blog_51fad6900102wlmx.html
筆者在雙系統ubuntu14.04下成功安裝了cuda,現重新整理安裝cuda步驟,及cuDNN安裝步驟一、安裝cuda1.安裝元資料庫,更新apt-get,並且安裝CUDA
$ sudo dpkg --install cuda-repo--..deb 
$ sudo apt-get update 
$ sudo apt-get install cuda

2.重啟系統來載入NVIDIA驅動
$ sudo reboot

3.通過修改PATH和LD_LIBRARY_PATH變數建立開發環境
$ export PATH=/usr/local/cuda-7.5/bin:$PATH 
$ export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:$LD_LIBRARY_PATH

4.安裝一個samples的可寫拷貝,然後建立並且執行nbody例子
$ cuda-install-samples-7.5.sh ~ 
$ cd ~/NVIDIA_CUDA-Samples_7.5/5_Simulations/nbody 
$ make 
$ ./nbody
如得到以下介面,則表示cuda以及顯示卡驅動都安裝完成了。

二、安裝cuDNN1.解壓:cd到“cudnn-7.0-linux-x64-v3.0-rc.tgz”所在目錄,將檔案解壓,如下:
gzip -d cudnn-7.0-linux-x64-v3.0-rc.tgz
tar xf cudnn-7.0-linux-x64-v3.0-rc.tar

2.copy檔案至CUDA安裝目錄:解壓後,在你的目錄下生成一個“cuda”資料夾,對於cuDNN6.5的版本解壓後生成“cudnn-6.5-linux-x64-v2”檔案。使用如下命令copy,注意第二個有個-a引數,否則,拷貝過去的檔案失去了連結。(cd 到 cuda 所在目錄)
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp -a cuda/lib64/libcudnn* /usr/local/cuda/lib64
這時,cuDNN安裝完成。

-----------------2016/10/24更新----------------------------

有個問題,虛擬機器不支援顯示卡,之前沒意識到。。。所以要裝cuda用GPU的童鞋還是裝個雙系統吧~

-------------------原帖分割線------------------------------

致謝:

本文參考以下連結,它們給予我巨大幫助!非常感謝原作者!

http://blog.csdn.net/ubunfans/article/details/47724341

http://www.2cto.com/os/201608/535727.html

http://blog.csdn.net/anycell/article/details/6655421

http://m.blog.csdn.net/article/details?id=46388241

這篇文章,我旨在做一個總結,把我這次成功安裝的流程羅列出以便我以後安裝有個參考。當然,如果能幫助到更多人,那就再好不過了。

本文所需資料百度雲連結:https://pan.baidu.com/s/1A6eKt3TOiE_opoti6nUYug 密碼: 8xfa

一、版本及說明

版本:linux系統:Vmware下的 Ubuntu14.04(64位) 

虛擬機器分配記憶體:8G

虛擬機器分配儲存:40G

說明:筆者一開始是打算安裝GPU版本的caffe,但是無奈,安裝CUDA SAMPLE後跑“./deviceQuery”命令總是出現錯誤,暫時沒法解決,所以決定先不用GPU,先配置出CPU版本,以後再試GPU版。那這樣的話,我經過多次按照GPU的帖子和CPU的帖子出錯後,突發奇想(也是被逼的。。),一開始是參考僅CPU的帖子,然後出問題了,轉而用GPU的方法,CUDA安裝失敗,然後再在GPU方法中嵌入CPU方法,可以說是 誤打誤撞 終於完成。所以,總結出來,以防忘記,整合細節如下。

二、安裝

1、安裝caffe

      (1)下載caffe

# sudo git clone https://github.com/BVLC/caffe.git

      (2)安裝第三方庫

# sudo apt-get install libatlas-base-dev
# sudo apt-get install libprotobuf-dev
# sudo apt-get install libleveldb-dev
# sudo apt-get install libsnappy-dev
# sudo apt-get install libopencv-dev
# sudo apt-get install libboost-all-dev
# sudo apt-get install libhdf5-serial-dev
# sudo apt-get install libgflags-dev
# sudo apt-get install libgoogle-glog-dev
# sudo apt-get install liblmdb-dev
# sudo apt-get install protobuf-compiler

2、安裝opencv
# cd caffe
# sudo git clone https://github.com/jayrambhia/Install-OpenCV
# cd Install-OpenCV/Ubuntu
# sudo sh dependencies.sh
# cd 2.4
# sudo sh opencv2_4_10.sh

3、編譯caffe

cd caffe    //開啟到剛剛git下來的caffe
cp Makefile.config.example Makefile.config //make指令只能make Makefile.config
sudo gedit Makefile.config      //開啟Makefile.config檔案

然後我們把:#CPU_ONLY:=1,那一行的註釋符號去掉:CPU_ONLY:=1。修改時,執行以下語句:
# sudo vi /etc/Makefile.config
注意vi命令的使用方法,(:wq)儲存退出。

4、測試 caffe(執行caffe程式時,必須cd 到 caffe目錄下)

下載mnist資料:

# cd caffe
# sudo sh data/mnist/get_mnist.sh
# sudo sh examples/mnist/create_mnist.sh

執行時,沒有GPU,則需要修改配置檔案lenet_solver.prototxt:
# sudo vi examples/mnist/lenet_solver.prototxt

將最後一行的solver_mode:GPU改為solver_mode:CPU

配置好後,就可以運行了

# sudo sh examples/mnist/train_lenet.sh

註釋:第 4 步我都做了,但是以下這兩步 我並沒有成功,然後直接轉到下面的步驟!
# sudo sh examples/mnist/create_mnist.sh
# sudo sh examples/mnist/train_lenet.sh

-----------------------------------------------------我是安裝CUDA分割線-----------------------------------------------------

注意: 以下幾步是安裝CUDA相關的步驟,筆者這裡想試圖使用GPU但是安裝失敗了,但是此次配置caffe確有經過此幾步,而且更重要的是,下面步驟有幾步操作原貼是沒有的我整合了百度的結果,因此肯定要記錄下來。

那其實,我覺得單純CPU應該不需要這幾步,因為不太懂,就先按我的原步驟記錄下來為妙...

5、使用GPU所要做的步驟

  (1)安裝CUDA 7.0(地址在上面的百度雲分享裡)

切換到下載的deb所在目錄(方法:cd deb所在目錄)我這裡是直接放到主資料夾下。然後執行下列命令:

sudo dpkg -i cuda-repo-ubuntu1404-7-0-local_7.0-28_amd64.deb  
sudo apt-get update  
sudo apt-get install cuda  

//原貼這裡 sudo reboot 重啟 但是 筆者每次重啟後會出現一個問題,就是重新登入的時候 密碼正確,然而還是進不了桌面...多次求助無解,有知道的童鞋求告知,謝謝!

//因此,筆者這裡並沒有重啟。當然,筆者這裡沒用到CUDA,因此重不重啟其實不所謂啦~~

  (2)安裝cuDNN

下載cudnn-7.0-linux-x64-v4.0-rc.tgz(在最上面的網盤裡有)下好後放在home下:

tar -zxvf cudnn-7.0-linux-x64-v4.0-rc.tgz  
cd cuda  
sudo cp lib64/lib* /usr/local/cuda/lib64/  
sudo cp include/cudnn.h /usr/local/cuda/include/ 
更新軟連線
cd /usr/local/cuda/lib64/
sudo chmod +r libcudnn.so.4.0.4
sudo ln -sf libcudnn.so.4.0.4 libcudnn.so.4
sudo ln -sf libcudnn.so.4 libcudnn.so
sudo ldconfig

 (3)設定環境變數

在/etc/profile中新增CUDA環境變數:

sudo gedit /etc/profile
增加以下兩條:
PATH=/usr/local/cuda/bin:$PATH  
export PATH
儲存(輸入":wq" 回車)後,執行下列命令使環境變數立即生效:
source /etc/profile

*同時需要新增lib庫路徑: 在 /etc/ld.so.conf.d/加入檔案cuda.conf,  內容:/usr/local/cuda/lib64

這一步得:

①獲取root許可權:

sudo passwd://建立密碼,輸入兩遍

su//進入root許可權,輸入之前建立的密碼

②在ld.so.conf.d下建立檔案:
touch cuda.conf
③在cuda.conf中寫入內容:
echo "/usr/local/cuda/lib64" >> /etc/ld.so.conf.d/cuda.conf

儲存後,執行下列命令使之立刻生效:(筆者這一步出來問題。。)

sudo ldconfig
    (4)安裝CUDA SAMPLE
cd /usr/local/cuda/samples
sudo make all -j4//-j4表示四核

全部編譯完成後:
cd /usr/local/cuda/samples/bin/x86_64/linux/release
./deviceQuery
成功最後會有PASS   我FAIL了- -  

強註釋:那其實到這都是要用GPU時的操作,筆者這裡沒用GPU,所以這幾步就是個過場,所以出了錯誤也沒多大關係。先寫到這裡,後續搞明白了再更。

-------------------------------以上為cuda安裝步驟-----------------------------------------------

6、安裝caffe所需要的python環境 Anaconda

    (1)下載連結一樣,在文章之前的連結裡。

切換到檔案所在目錄(與前面一樣,具體不再詳細說明。,執行:

bash Anaconda2-4.2.0-Linux-x86_64.sh//這個過程預設就好
   (2)新增Anaconda Library Path
在/etc/ld.so.conf.d最後加入以下路徑(NOTE:下邊的username要替換)
/home/username/anaconda2/lib
我是用3(3)方法寫入的,同樣寫入到cuda.conf   (3)在~/.bashrc最後新增下邊路徑[plain] view plain copy print?在CODE上檢視程式碼片派生到我的程式碼片
  1. export LD_LIBRARY_PATH="/home/username/anaconda/lib:$LD_LIBRARY_PATH"
注:這一步我也木弄好,所以就複製貼上過來了,求輕拍。。。

7、最後!編譯:成敗在此一舉!

cd caffe
make all -j4
make test -j4
make runtest

筆者終於成功了,雖然僅僅是CPU,還是蠻高興!一步一步來嘛!發張成功圖,祝ubuntu下配置caffe的童鞋都能速度成功!