主要參考:
這三個算是比較新的,綜合起來完成HP Z820 上Caffe環境配置
環境: Ubuntu 14.04 desktop, CUDA 7.5
Basics
主要是一部分准備工作
sudo apt-get update sudo apt-get upgrade sudo apt-get install build-essential sudo apt-get autoremove
安裝git
sudo apt-get install git
Nvidia Drivers
說明:
- 現在的顯卡驅動安裝,CUDA安裝不需要關閉圖形界面也可以實現;
- 也不像很多博客所說的那樣,轉cuda之前不能更新,否則有可能會崩潰之類的;
- Nvidia Drivers的安裝可以通過ubuntu自帶的”軟件和更新“里的附加驅動實現;
- 或者按照所提供網址里面的方法實現驅動安裝;
- 另外一種說法是現在CUDA集成驅動,在關閉圖形界面的情況下安裝CUDA可以自動把驅動也裝好,這個可能通過在線安裝,順帶安裝依賴項實現,離線安裝包可能較小;
- 推薦352,而不是最新的361.42,最新的不一定最合適
查看顯卡型號:
lspci | grep -i nvidia
在線安裝:
sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update sudo apt-get install nvidia-352
或者官網下載離安裝包,安裝
或者按照我所說的使用Ubuntu自帶的軟件和跟新選擇合適的驅動,更簡單;
重啟系統:
sudo shutdown -r now
查看驅動版本:
cat /proc/driver/nvidia/version
CUDA
同樣下載離線安裝包,這里使用CUDA 7.5版本:
sudo dpkg -i cuda-repo-ubuntu1404*amd64.deb sudo apt-get update sudo apt-get install cuda
添加路徑:
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc source ~/.bashrc
檢查CUDA版本:
nvcc -V
重啟系統:
sudo shutdown -r now
cuDNN
最新版本是
cuDNN V5,但是經嘗試,
V5在編譯的過程中有問題,推薦
cuDNN V4 for Linux
跳轉到cuDNN所在路徑,解壓安裝:
cd ~/Downloads/ tar xvf cudnn*.tgz cd cuda sudo cp */*.h /usr/local/cuda/include/ sudo cp */libcudnn* /usr/local/cuda/lib64/ sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
這里其實就是復制相關文件到cuda目錄,奇怪為啥cuda不集成cuDNN,也有可能已經自帶,未做驗證;
鏈接cuDNN庫文件,不知是否必須:
sudo ln -sf /usr/local/lib/libcudnn.so.4.0.7 /usr/local/lib/libcudnn.so.4 sudo ln -sf /usr/local/lib/libcudnn.so.4 /usr/local/lib/libcudnn.so
檢查:
nvidia-smi
OpenBLAS
cuDNN和OpenBLAS只安裝一個就可以完成caffe的編譯工作,可選操作
mkdir ~/git cd ~/git git clone https://github.com/xianyi/OpenBLAS.git cd OpenBLAS make FC=gfortran -j $(($(nproc) + 1)) sudo make PREFIX=/usr/local install
添加路徑:
echo 'export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
Common Tools
- 關於相關python依賴項,可以參照所給出的網址嘗試,也可以直接安裝Anaconda2一步到位,只是注意添加額外的環境變量:
- 當然也可以不裝Anaconda2直接安裝;
- 跑一下,稍作檢查,確保依賴項都在;
sudo apt-get install -y libfreetype6-dev libpng12-dev pip install -U matplotlib ipython[all] jupyter pandas scikit-image
還有一些caffe的依賴包:
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler sudo apt-get install --no-install-recommends libboost-all-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
OpenCV
推薦安裝,很多時候是需要用到的:
下載安裝包,切換到文件保存的文件夾,安裝依賴項:
sudo sh Ubuntu/dependencies.sh
進入Ubuntu\3.0\安裝OpenCV 3.0.0:
sudo sh opencv3_0_0.sh
如果成功安裝應該不會有什么錯誤提示:
使用一個有用的命令查看版本:
pkg-config --modversion opencv
Caffe
下載安裝包:
cd ~/git git clone https://github.com/BVLC/caffe.git cd caffe cp Makefile.config.example Makefile.config
主要是新建了一個git文件夾,下載caffe安裝包到git路徑里面:
最后一條命令是復制一個配置文件,源文件留作備份,我們要修改這個配置文件,打開后修改;
sudo gedit /caffe/Makefile.config USE_CUDNN := 1 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/lib/x86_64-linux-gnu/hdf5/serial/include LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial # 默認啟用OpenBLAS PYTHON_LIB := /usr/local/lib # pythn庫 MATLAB_DIR := /usr/local/MATLAB/R2014a # Matlab安裝路徑,用於鏈接Matlab OPENCV_VERSION =3 # OpenCV
僅僅列出修改部分,如果使用Anaconda配置文件中有相關修改,只需要取消注釋就可以了,並修改路徑為自己Anaconda安裝路徑;
編譯caffe:
make all -j16 make test -j16 make runtest -j16
添加“-16”為使用多核進行編譯,速度更快;
編譯Pythn 和 Matlab用到的caffe
make pycaffe -j16 make matcaffe -j16
測試詳見第二個網址末尾: )