centos7.0 tesla k80 caffe 安装

centos7.0 tesla k80 caffe 安装

官方安装步骤:

General dependencies

sudo yum install protobuf-devel leveldb-devel snappy-devel opencv-devel boost-devel hdf5-devel

Remaining dependencies, recent OS

sudo yum install gflags-devel glog-devel lmdb-devel

Remaining dependencies, if not found

# glog
wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/google-glog/glog-0.3.3.tar.gz
tar zxvf glog-0.3.3.tar.gz
cd glog-0.3.3
./configure
make && make install
# gflags
wget https://github.com/schuhschuh/gflags/archive/master.zip
unzip master.zip
cd gflags-master
mkdir build && cd build
export CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1
make && make install
# lmdb
git clone https://github.com/LMDB/lmdb
cd lmdb/libraries/liblmdb
make && make install

一般经过以上步骤,有一些库安装不了,需要手动安装:

opencv-devel

$ sudo yum -y install cmake pkgconfig gtk2-devel python-devel numpy tbb-devel libpng-devel
$ wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.10/opencv-2.4.10.zip
$ unzip opencv-2.4.10.zip
$ cd opencv-2.4.10
$ mkdir build
$ cd build
$ cmake ../ -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_EXAMPLES=ON -DBUILD_NEW_PYTHON_SUPPORT=ON -DINSTALL_PYTHON_EXAMPLES=ON
$ make -j 2
$ sudo make install

问题一

/home/usrname/opencv-3.0.0/modules/cudalegacy/src/graphcuts.cpp:120:54: error: ‘NppiGraphcutState’ has not been declared
     typedef NppStatus (*init_func_t)(NppiSize oSize, NppiGraphcutState** ppStat
                                                      ^
/home/usrname/opencv-3.0.0/modules/cudalegacy/src/graphcuts.cpp:135:18: error: ‘NppiGraphcutState’ does not name a type
         operator NppiGraphcutState*()
                  ^
/home/usrname/opencv-3.0.0/modules/cudalegacy/src/graphcuts.cpp:141:9: error: ‘NppiGraphcutState’ does not name a type
         NppiGraphcutState* pState;


解决方案:需要修改一处源码:

在graphcuts.cpp中将
#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) 
改为
#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) || (CUDART_VERSION >= 8000)

问题二

nvcc fatal   : Unsupported gpu architecture 'compute_11'  
CMake Error at cuda_compile_generated_matrix_operations.cu.o.cmake:206 (message):  
  Error generating  
/home/smie/Documents/opencv2.4.11/build/modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/./cuda_compile_gene  

rated_matrix_operations.cu.o  
make[2]: ***  
[modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/./cuda_compile_generated_matrix_operations.cu.o] Error 1  
make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs....  


使用以下命令解决

$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D CUDA_GENERATION=Kepler ..

HDF5

点击库下载地址
Currently, the SWMR feature can only be tested on UNIX platforms. The SWMR testing is disabled on Windows.

PLEASE be aware: On UNIX platforms the HDF5 tests must be run on a local file system or a parallel file system running GPFS or Lustre in order for the SWMR tests to complete properly. For example:

    cd LocalFSpath
    mkdir build
    cd build
    /path_to_HDF5_source/configure ...
    make
    make check
    make install

boost-devel

$ wget -O boost_1_55_0.tar.bz2 http://downloads.sourceforge.net/project/boost/boost/1.55.0/boost_1_55_0.tar.bz2?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fboost%2Ffiles%2Fboost%2F1.55.0%2F&ts=1385953406&use_mirror=softlayer-ams

$ tar jxvf  boost_1_55_0.tar.bz2
$ cd boost_1_55_0
$ ./bootstrap.sh
$ ./b2
$ sudo ./b2 install

glog-devel

$ sudo wget https://codeload.github.com/google/glog/zip/master
$ unzip glog-master.zip
$ cd glog-master
$ ./configure
$ make -j4
$ sudo make install

protobuf

$ wget -O protobuf.zip https://github.com/google/protobuf/archive/master.zip

$ unzip protobuf.zip
$ cd protobuf-master
$ ./autogen.sh
$ make && make check
$ sudo make install

leveldb-devel

$ sudo git clone https://github.com/google/leveldb.git
$ make
$ sudo cp -r include/leveldb /usr/local/include
$ sudo cp ./out-shared/libleveldb.so /usr/local/lib

openblas

$ git clone https://github.com/xianyi/OpenBLAS.git
$ cd OpenBLAS
$ make FC=gfortran (如果没有安装gfortran,执行sudo apt-get install gfortran)(centos是yum install gcc-gfortran)
$ sudo make PREFIX=/usr/local/install
$ ln -s /opt/OpenBLAS/lib/libopenblas.so  /usr/lib/libblas.so.3
$ ln -s /opt/OpenBLAS/lib/liblapack.so.3 /usr/lib/liblapack.so.3

安装依赖库后编译caffe

$ sudo cp Makefile.config.example Makefile.config
# Adjust Makefile.config (for example, if using Anaconda Python, # or if cuDNN is desired)
$ sudo make all
$ sudo make test
$ sudo make runtest

如果是新版的caffe会报以下错误:/

/usr/bin/ld: cannot find -lcblas
/usr/bin/ld: cannot find -latlas。


解决方法:

sudo vim Makefile.config

修改以下代码:
BLAS := atlas (修改前)
BLAS := open  (修改后)

BLAS_INCLUDE := /usr/local/include/openblas (添加)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值