Linux安裝不說了。我這裏安裝的是ubuntu14.10html
1: Verify You Have a CUDA-Capable GPUpython
運行如下的操做,而後驗證硬件支持GPU CUDA。僅僅要型號存在於https://developer.nvidia.com/cuda-gpus。就沒問題了linux
$ lspci | grep -i nvidiagit
2: 、Verify You Have aSupported Version of Linuxgithub
$ uname -m && cat /etc/*releaseubuntu
重點是「x86_64」這一項,保證是x86架構。64bit系統瀏覽器
3: Verify the System Has gcc Installed網絡
$ gcc --version架構
沒有的話就先安裝吧,這個是必須的用來編譯CUDA Toolkit,只是Ubuntu 14.10是默認有的app
4: Download the NVIDIA CUDA Toolkit
下載地址:https://developer.nvidia.com/cuda-toolkit
驗證地址:https://developer.nvidia.com/rdp/cuda-rc-checksums
$ md5sum filename
好比:md5sum cuda_7.0.28_linux.run ,這個文件的正確 md5 =312aede1c3d1d3425c8aa67bbb7a55e
5: Handle Conflicting Installation Methods
依據官網介紹,以前安裝的版本號都會有衝突的嫌疑
因此,以前安裝的Toolkit和Drievers就得卸載,屏蔽。等等(因爲我是新系統。沒有安裝過nvidia驅動。因此此步可以省略)
sudo apt-get --purge remove nvidia*
6: Graphical Interface Shutdown
退出GUI,也就是X-Win界面。操做方法是:同一時候按:CTRL+ALT+F1(F2-F6),切換到TTY1-6命令行模式。
關閉桌面服務:
$ sudo stop lightdm
7: Interaction with Nouveau
Nouveau是一個開源的顯卡驅動。Ubuntu14.04 默認安裝了,但是它會影響nVidia驅動的安裝,因此僅僅有請他回老家了,sorry!
$ sudo vi /etc/modprobe.d/nvidia-graphics-drivers.conf
寫入:blacklist nouveau
保存並退出: wq!
檢查:$ cat nvidia-graphics-drivers.conf
$ sudo vi/etc/default/grub
末尾寫入:rdblacklist=nouveau nouveau.modeset=0
保存並退出: wq!
檢查:$ cat /etc/default/grub
8: Installation CUDA 7.0
切換到cuda_7.0.28_linux.run所在的文件夾。而後運行安裝命令:
$ sudo sh cuda_7.0.28_linux.run
這裏會一路問你各類問題,基本上就是Accept-yes-Enter-yes-Enter-yes-Enter, 事實上就是讓你接受協議。而後安裝的默認位置確認等等。recruit就別本身定義安裝位置了。默認纔是天堂。
運行完後出現下面結果:
Driver: Installed requirereboot
Toolkit: installskip
Samples: installskip
看到了嗎,這個CUDA安裝包其實包括了Driver,Toolkit和Samples三部分。第一次安裝時把驅動裝上了,僅僅只是要又一次啓動。又一次啓動了一下,仍是跟上面同樣,退出GUI。又一次運行下面命令:
$ sudo sh cuda_7.0.28_linux.runsu
結果例如如下:
Driver:Installed
Toolkit: Installed in/usr/local/cuda-7.0
Samples: Installed in/home/caffe, butmissing recommended libraries
此次就成功安裝了,但是缺乏了一些推薦的庫。
9: Extra Libraries
安裝一些必要的庫文件,譬如:OpenGL (e.g., Mesa), GLU, GLUT, and X11 (including Xi, Xmu, andGLX).
$ sudo apt-get install freeglut3-dev build-essential libx11-devlibxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
10: 驅動裝完了,可以回到GUI界面了,也可以繼續留這裏玩文本。。
。
$ sudo start lightdm
11:POST-INSTALLATIONACTIONS
(1)環境變量配置
運行sudo vi /etc/profile,在後面加上:
exportPATH=/usr/local/cuda-6.5/bin:$PATH
exportLD_LIBRARY_PATH=/usr/local/cuda-6.5/lib64:$LD_LIBRARY_PATH
(2) Verify the Installation
a.驗證驅動的版本號,事實上主要是保證驅動程序已經安裝正常了
$ cat /proc/driver/nvidia/version
b. Compiling the Examples
$ nvcc -V
這裏安裝完。就可以編譯了。切換文件夾到~/NVIDIA_CUDA-7.0_Samples:
$ cd /home/username/NVIDIA_CUDA-7.0_Samples
$ make
這裏要等很是長時間。。
。
c. Running the Binaries
執行編譯好的文件,好比看看設備的基本信息和帶寬信息:
$ cd bin/x86_64/linux/release
$ ./deviceQuery
$ ./bandwidthTest
假設測試的時候出現說執行版驅動和實際驅動不符,緣由多是因爲後面安裝的nvidia-cuda-toolkit更新了配置文件,因此和原始的Cuda-Samples的配置或者是驅動程序有變化,因此檢測沒法編譯經過。考慮如下的解決方法:
a.卸載現有驅動
$ sudo nvidia-installer --uninstall
b.下載合適版本號的驅動,並安裝:
下載地址:http://www.geforce.cn/drivers
$ sudo sh ./NVIDIA-Linux-x86_65*.run
c. 重裝CUDA Toolkit
$ sudo sh cuda-7.0
Nvidia Cuda安裝結束(這裏我推薦不要手動裝合適NVIDIA驅動。最好是卸載將上述過程再裝一遍。因爲手動裝有可能形成版本號不正確。到時桌面空白的問題-----我是重裝了系統。。。
。
。)
1:BLAS安裝
這裏可以選擇(ATLAS。MKL或者OpenBLAS),我這裏使用MKL,首先下載並安裝英特爾® 數學內核庫 Linux* 版MKL,下載連接是:https://software.intel.com/en-us/intel-education-offerings。 請下載Student版。先申請,而後會馬上收到一個郵件(裏面有安裝序列號),打開照着下載便可了。下載完以後,要把文件解壓到home目錄(或直接把tar.gz文件複製到home目錄,爲了節省空間。安裝完記得把壓縮文件給刪除喔~),或者其它的ext4的文件系統中。
接下來是安裝過程,先受權,而後安裝:
$ tar zxvf parallel_studio_xe_2015.tar.gz (假設你是直接拷貝壓縮文件過來的)
$ chmod a+x parallel_studio_xe_2015 -R
$ sudo ./install_GUI.sh
2:MKL與CUDA的環境設置
1. 新建intel_mkl.conf, 並編輯之:
$ sudo gedit /etc/ld.so.conf.d/intel_mkl.conf
/opt/intel/lib/intel64
/opt/intel/mkl/lib/intel64
2. 新建cuda.conf,並編輯之:
$ sudo gedit /etc/ld.so.conf.d/cuda.conf
/usr/local/cuda/lib64
/lib
3. 完畢lib文件的連接操做,運行:
$ sudo ldconfig –v
1. 下載並編譯OpenCV(官網原版OpenCV:http://opencv.org/), 或者使用本站提供的改動版的安裝包 Install-OpenCV-master(如下的安裝方式使用該包完畢,安裝包改動了dependencies.sh文件並添加了OpenCV 3.0.0的安裝文件,同一時候保留了原來的2.3x和2.4x版)
2. 切換到文件保存的目錄,而後安裝依賴項:
$ sudo sh Ubuntu/dependencies.sh
3. 切換文件夾Ubuntu\3.0\安裝OpenCV3.0.0rc1:
$ sudo sh opencv3_0_0-rc1.sh
保證網絡暢通,因爲軟件需要聯網這裏時間較長。請耐心等待。
。。
。時間很是長!
1. Google Logging Library(glog),下載地址:https://code.google.com/p/google-glog/。而後解壓安裝:
$ tar zxvf glog-0.3.3.tar.gz
$ ./configure
$ make
$ sudo make install
假設沒有權限就chmod a+x glog-0.3.3 -R , 或者索性 chmod 777glog-0.3.3 -R , 裝完以後,這個目錄就可以kill了。
2. 其它依賴項,確保都成功
$ sudo apt-get install -y libprotobuf-dev libleveldb-devlibsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev
$ sudo apt-get install -y libgflags-dev libgoogle-glog-devliblmdb-dev protobuf-compiler
1. 安裝pycaffe必須的一些依賴項:
$ sudo apt-get install -y python-numpy python-scipypython-matplotlib python-sklearn python-skimage python-h5py python-protobufpython-leveldb python-networkx python-nose python-pandas python-gflags Cythonipython
$ sudo apt-get install -y protobuf-c-compilerprotobuf-compiler
2. 安裝配置nVidia cuDNN 加速Caffe模型運算(咱們沒有安裝,因爲install.txt中說是針對CUDA6.5)
a. 安裝cuDNN
該改版本號caffe-master默認支持cudnn-6.5-linux-x64-v2,使用cudnn-6.5-linux-R1會報錯,安裝前請去先官網下載最新的cuDNN。
$ sudo cp cudnn.h /usr/local/include
$ sudo cp libcudnn.so /usr/local/lib
$ sudo cp libcudnn.so.6.5 /usr/local/lib
$ sudo cp libcudnn.so.6.5.48 /usr/local/lib
b. 連接cuDNN的庫文件
$ sudo ln -sf /usr/local/lib/libcudnn.so.6.5.48/usr/local/lib/libcudnn.so.6.5
$ sudo ln -sf /usr/local/lib/libcudnn.so.6.5/usr/local/lib/libcudnn.so
$ sudo ldconfig –v
3:切換到Caffe-master的目錄。生成Makefile.config配置文件。運行:
$ cp Makefile.config.example Makefile.config
4:配置Makefile.config文件(僅列出改動部分)
a. 啓用CUDNN,去掉"#"(眼下caffe-master仍然僅僅支持R1版本號)
USE_CUDNN := 1
b. 啓用GPU,去掉凝視"#"
# CPU_ONLY := 1
c: 啓用Intel ParallelStudio XE 2015 Professional Edition for C++ Linux
BLAS := mkl
5: 配置Makefile文件(實現對OpenCV3.x的支持)
查找「Derive include and lib directories」一節,改動「LIBRARIES +=」的最後一行,添加opencv_imgcodecs
opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs
6: 編譯caffe-master!
。!
"-j8"是使用CPU的多核進行編譯,可以極大地加速編譯的速度,建議使用。
$ make all -j8
$ make test -j8
$ make runtest -j8
建議:在make前。可以用以前的./bandwidthTest等命令測試驅動是否正常!
Caffe默認狀況會安裝在$CAFFE_ROOT,就是解壓到那個文件夾。好比:$ home/username/caffe-master,因此如下的工做。默認已經切換到了該工做文件夾。如下的工做主要是,用於測試Caffe是否工做正常。不作具體評估。
具體設置請參考官網:http://caffe.berkeleyvision.org/gathered/examples/mnist.html
1. 數據預處理
$ sudo shdata/mnist/get_mnist.sh
2. 重建lmdb文件。
Caffe支持三種數據格式輸入網絡,包含Image(.jpg, .png等),leveldb。lmdb。依據本身需要選擇不一樣輸入吧。
$sudo shexamples/mnist/create_mnist.sh
生成mnist-train-lmdb 和 mnist-train-lmdb目錄,這裏包括了lmdb格式的數據集
注:我運行此命令的時候報告說not in gzformat,後來發現是聯網下載的mnist數據有問題。而後我就去網上了下載了mnist數據集,後在ubuntu上手動解壓的,再運行後面的命令。
3. 訓練mnist
$ sudo shexamples/mnist/train_lenet.sh
至此,Caffe安裝的所有步驟完結,如下是一組簡單的數據對照。實驗來源於MNIST數據集,主要是考察一下不一樣系統下CPU和GPU的性能。可以看到明顯的區別了。儘管MNIST數據集很是easy,相信複雜得數據集,區別會更大,Ubuntu+GPU是惟一的選擇了。
測試平臺1:i7-4770K/16G/GTX 770/CUDA 6.5
MNIST Windows8.1 on CPU:620s
MNIST Windows8.1 on GPU:190s
MNIST Ubuntu 14.04 on CPU:270s
MNIST Ubuntu 14.04 on GPU:160s
MNIST Ubuntu 14.04 on GPUwith cuDNN:30s
Cifar10_full on GPUwihtout cuDNN:73m45s = 4428s (Iteration 70000)
Cifar10_full on GPU withcuDNN:20m7s = 1207s (Iteration 70000)
測試平臺2:技嘉P35X v3,i7-4720HQ@2.6G/16G/NVidiaGTX 980 4G
MNIST Ubuntu 15.04 on GPUwith cuDNN:33s
對照測試1:2*E5-2620(12CPUs)/128G/Tesla K20M/CUDA5.5/CentOS 6.4
MNIST CentOS 6.4 on GPU:294s
對照測試2:Tesla K40M/CUDA6.5/ubuntu 14.04
MNIST on GPU with cuDNN:30s
對照測試3:GTX 660/CUDA6.5/ubuntu 14.04
MNIST on GPU with cuDNN:49s
對照試驗1是一個不太公平的測試,畢竟性能差很是大,很是可能不僅僅是由Tesla K20s 和GTX 770帶來的。也多是因爲CentOS或者是CUDA5.5(without cuDNN)的影響,但總體上的結論和Caffe官網的 reference performance numbers 一致。對於普通用戶:GTX的性價比高很是多。
對照試驗2展示了Tesla K40的強大性能,相信對於複雜圖像。它應該有更強勁的表現。
(感謝香港城市大學 Ph.D Jingjing、南京理工大學 Ph.D JinLu、華中科技大學 MS LiuMaolin 提供的測試環境和測試數據。)
假設不需要在python和matlab中使用caffe,則不需要安裝python和matlab
1. 安裝IDE執行環境
選擇一個適合你的IDE執行環境。我是用的是Spyder,因爲它內置了 iPython 環境,Caffe有很多的程序是基於 iPython 環境完畢的。安裝方法很是easy,直接在Ubuntu軟件中心搜索「spyder」就能夠安裝。
2. iPython NoteBook 安裝
另一個比較推薦的方法是使用iPyhthon NoteBook(基於瀏覽器的Python IDE)。特別是適合需要用Python作教程的老師們。可以直接導出.py, .ipynb, html格式。安裝過程例如如下:
$ sudo apt-get install -y ipython-notebook pandoc
啓動(本身主動打開瀏覽器):
$ ipython nootbook
一個簡單的使用iPython NoteBook生成的html的樣例:examples_notebook.html example_notebook.ipynb
3: 環境配置
在Makefile.config文件裏配置caffe對python接口的支持
PYTHON_INCLUDE := /usr/include/python2.7 \
/usr/lib/python2.7/dist-packages/numpy/core/include
PYTHON_LIB := /usr/local/lib
INCLUDE_DIRS := $(PYTHON_INCLUDE)/usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib/usr/lib
4:在caffe-master文件夾下運行$ make pycaffe -j8編譯python
5:在/etc/profile中增長
export PYTHONPATH=/home/hadoop/caffe/caffe-master/python:$PYTHONPATH
這樣就可以在python中import caffe了。
Matlab安裝,我沒實用到。也沒有安裝。若有需要的可以在網上找資料!
1:官網 http://caffe.berkeleyvision.org/installation.html
2:https://ouxinyu.github.io/Blogs/20140723001.html歐新宇的博客
3:http://blog.sciencenet.cn/blog-1583812-841855.htmlUbuntu+CUDA6.5+Caffe安裝配置彙總
4:http://www.haodaima.net/art/2823705Caffe+Ubuntu14.04+CUDA6.5新手安裝配置指南