這裏,已經完成了caffe的安裝,若沒有安裝,在相應的網站上下載安裝,可以參考 http://blog.csdn.net/thystar/article/details/50158487
不要修改Makefile.config
1.CUDA安裝
下載:https://developer.nvidia.com/cuda-downloads
選擇與系統向匹配的版本,我下在的是cuda7,5; 下載頁面上有安裝命令,下載完成後將命令窗口轉換到文件所在目錄下,將命令逐個考到命令行中
sudo dpkg -i cuda-repo-ubuntu1404_7.5-18_amd64.deb
sudo apt<span class="cmsy-10">-</span>get update
cuda Tookit
sudo apt-get install cuda
安裝完成之後,需要配置環境變量
export PATH=/usr/local/cuda-7.5/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib:/usr/local/cuda-7.5/lib64:$LD_LIBRARY_PATH
安裝完成後,測試samples
編譯samples文件
cuda-install-samples-7.5.sh ~
cd ~/NVIDIA_CUDA-7.5_Samples
make all
這個需要花挺長時間,當然也可以單獨編譯
編譯完成後在該文件夾下進入release目錄
cd bin/x86_64/linux/release/
./deviceQuery
如果出現如下界面,則安裝 成功:
./deviceQuery Starting...
CUDA Device Query (Runtime API) version (CUDART static linking)
Detected 1 CUDA Capable device(s)
Device 0: "GeForce GT 740"
CUDA Driver Version / Runtime Version 7.5 / 7.5
CUDA Capability Major/Minor version number: 3.0
Total amount of global memory: 1023 MBytes (1073020928 bytes)
( 2) Multiprocessors, (192) CUDA Cores/MP: 384 CUDA Cores
GPU Max Clock rate: 1058 MHz (1.06 GHz)
Memory Clock rate: 2500 Mhz
Memory Bus Width: 128-bit
L2 Cache Size: 262144 bytes
Maximum Texture Dimension Size (x,y,z) 1D=(65536), 2D=(65536, 65536), 3D=(4096, 4096, 4096)
Maximum Layered 1D Texture Size, (num) layers 1D=(16384), 2048 layers
Maximum Layered 2D Texture Size, (num) layers 2D=(16384, 16384), 2048 layers
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 49152 bytes
Total number of registers available per block: 65536
Warp size: 32
Maximum number of threads per multiprocessor: 2048
Maximum number of threads per block: 1024
Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
Max dimension size of a grid size (x,y,z): (2147483647, 65535, 65535)
Maximum memory pitch: 2147483647 bytes
Texture alignment: 512 bytes
Concurrent copy and kernel execution: Yes with 1 copy engine(s)
Run time limit on kernels: Yes
Integrated GPU sharing Host Memory: No
Support host page-locked memory mapping: Yes
Alignment requirement for Surfaces: Yes
Device has ECC support: Disabled
Device supports Unified Addressing (UVA): Yes
Device PCI Domain ID / Bus ID / location ID: 0 / 1 / 0
Compute Mode:
< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 7.5, CUDA Runtime Version = 7.5, NumDevs = 1, Device0 = GeForce GT 740
Result = PASS
配置caffe
在這裏,把caffe根目錄下Makefile.config裏面的cuda_dir需要改成自己安裝的文件目錄:
CUDA_DIR := /usr/local/cuda-7.5
如果之前將CPU_ONLY=1使能的,需要在這句前加#編譯caffe
make all
make test
make runtest
在這裏,可能會出現這種錯誤:
error while loading shared libraries: libcudart.so.7.5: cannot open shared object file: No such file or directory.
解決方法
sudo cp /usr/local/cuda-7.5/lib64/libcudart.so.7.5 /usr/local/lib/libcudart.so.7.5 && sudo ldconfig
sudo cp /usr/local/cuda-7.5/lib64/libcublas.so.7.5 /usr/local/lib/libcublas.so.7.5 && sudo ldconfig
sudo cp /usr/local/cuda-7.5/lib64/libcurand.so.7.5 /usr/local/lib/libcurand.so.7.5 && sudo ldconfig
然後再編譯出錯那句。
我的這樣就可以了
可以測試一下mnist數據
2. caffe python接口
首先,需要修改Makefile.config下的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
運行代碼需要的依賴項
依然在caffe根目錄下運行:
sudo pip install -r ./python/requirements.txt
完成後,運行:
make pycaffe
最後,需要添加路徑
運行
sudo gedit ~/.bashrc
在最後添加
export PYTHONPATH=/home/sindyz/caffe-master/python:$PYTHONPATH
export PYTHONPATH=/usr/local/lib/python2.7/dist-packages/:$PYTHONPATH
保存並關閉,打開新的命令窗口運行
python
import caffe
在spyder中運行
import caffe
如果出錯,在添加路徑窗口中添加
/home/sindyz/caffe-master/python
/usr/local/lib/python2.7/dist-packages/
兩個路徑。在文件目錄中選擇添加即可。
另外,在安裝過程中可能會有的問題是。
安裝cv的路徑在usr/lib/python/dist-packages下面,而這個目錄下的numpy是1.8的,anaconda2的numpy是1.10的,這樣,如果我將use/lib添加到環境變量下面,numpy會有版本衝突而報錯。我的解決方法是直接把cv文件放到anaconda2下面。如下:
用sudo apt-get install python-opencv安裝python opencv的話,在usr/lib的python包路徑下會由cv.py, cv.so兩個文件,如果import cv2提示找不到cv包的話,把這兩個文件直接拷貝到anaconda2/lib的python包目錄下面就好了。