您的位置:首页 > 编程语言 > Python开发

caffe中cuda7.5的配置及python接口的使用--ubuntu14.04

2016-01-09 18:20 701 查看
这里,已经完成了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包目录下面就好了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: