1. 程式人生 > >Ubuntu16.04 +cuda8.0+cudnn+caffe+theano+tensorflow配置明細

Ubuntu16.04 +cuda8.0+cudnn+caffe+theano+tensorflow配置明細

歡迎關注我的部落格:http://blog.csdn.net/hit2015spring和http://www.cnblogs.com/xujianqing

本文主要是介紹在ubuntu16.04下,怎麼配置當下流行的深度學習框架,cuda8.0+cudnn+caffe+theano+tensorflow

安裝英偉達顯示卡驅動

首先去官網上檢視適合你GPU的驅動

sudo add-apt-repository ppa:graphics-drivers/ppa

sudo apt-get update

sudo apt-get install nvidia-375(375是你查到的版本號)

sudo apt-get install mesa-common-dev

sudo apt-get install freeglut3-dev

執行完上述後,重啟(reboot)。

重啟後輸入

nvidia-smi

如果出現了你的GPU列表,則說明驅動安裝成功了。另外也可以通過,或者輸入

nvidia-settings

出現

  1. 配置cuda

在cuda所在目錄開啟terminal依次輸入以下指令:

sudo dpkg -i cuda-repo-ubuntu1604-8-0-rc_8.0.27-1_amd64​.deb

sudo apt-get update

sudo apt-get install cuda​

ubuntu的gcc編譯器是5.4.0,然而cuda8.0不支援5.0以上的編譯器,因此需要降級,把編譯器版本降到4.9:

在terminal中執行:

sudo apt-get install gcc -4.9 gcc-5 g++-4.9 g++-5

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 20

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 10

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 20

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 10

sudo update-alternatives --install /usr/bin/cc cc /usr/bin/gcc 30

sudo update-alternatives --set cc /usr/bin/gcc

sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++ 30

sudo update-alternatives --set c++ /usr/bin/g++

配置cuda8.0之後主要加上的一個環境變數宣告,在檔案~/.bashrc之後加上

gedit ~/.bashrc

export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}

export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

然後設定環境變數和動態連結庫,在命令列輸入

sudo gedit /etc/profile

在開啟的檔案裡面加上(注意等號兩邊不能有空格)

export PATH=/usr/local/cuda/bin:$PATH

儲存之後,建立連結檔案

sudo gedit /etc/ld.so.conf.d/cuda.conf

在開啟的檔案中新增如下語句:

/usr/local/cuda/lib64

儲存退出執行命令列:

sudo ldconfig

使連結立即生效。

2、測試cuda的Samples

命令列輸入(注意cuda-8.0是要相對應自己的cuda版本)

cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery

make

sudo ./deviceQuery

返回GPU的資訊則表示配置成功

3、使用cudnn

上官網下載對應的cudnn

下載完cudnn後,命令列輸入檔案所在的資料夾 (ubuntu為本機使用者名稱)

cd home/ubuntu/Downloads/

tar zxvf cudnn-8.0-linux-x64-v5.1.tgz #解壓檔案

cd進入cudnn5.1解壓之後的include目錄,在命令列進行如下操作:

sudo cp cudnn.h /usr/local/cuda/include/ #複製標頭檔案

再cd進入lib64目錄下的動態檔案進行復制和連結:(5.1.5為對應版本具體可修改)

sudo cp lib* /usr/local/cuda/lib64/ #複製動態連結庫

cd /usr/local/cuda/lib64/

sudo rm -rf libcudnn.so libcudnn.so.5 #刪除原有動態檔案

sudo ln -s libcudnn.so.5.1.5 libcudnn.so.5 #生成軟銜接

sudo ln -s libcudnn.so.5 libcudnn.so #生成軟連結

4、安裝opencv3.1.0

從官網上下載opencv3.1.0

http://opencv.org/downloads.html

並將其解壓到你要安裝的位置,(下載的位置還是在home/ubuntu、Downloads資料夾下)

首先安裝Ubuntu系統需要的依賴項,雖然我也不知道有些依賴項是幹啥的,但是隻管裝就行,也不會佔據很多空間的。

sudo apt-get install --assume-yes libopencv-dev build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev libtbb-dev libqt4-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip

然後安裝OpenCV需要的一些依賴項,一些檔案編碼解碼之類的東東。

sudo apt-get install build-essential cmake git

sudo apt-get install ffmpeg libopencv-dev libgtk-3-dev python-numpy python3-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libv4l-dev libtbb-dev qtbase5-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip

在終端中cd到opencv資料夾下(解壓的那個資料夾),然後

mkdir build #新建一個build資料夾,編譯的工程都在這個資料夾裡

cd build/

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON -DCUDA_NVCC_FLAGS="-D_FORCE_INLINES" ..(後面兩點不要忘記)

cmake成功後,會出現如下結果,提示配置和生成成功:

-- Configuring done

-- Generating done

-- Build files have been written to: /home/ise/software/opencv-3.1.0/build

由於CUDA 8.0不支援OpenCV的 GraphCut 演算法,可能出現以下錯誤:

/home/usrname/opencv-3.1.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.1.0/modules/cudalegacy/src/graphcuts.cpp:135:18: error: 'NppiGraphcutState' does not name a type

operator NppiGraphcutState*()

^

/home/usrname/opencv-3.1.0/modules/cudalegacy/src/graphcuts.cpp:141:9: error: 'NppiGraphcutState' does not name a type

NppiGraphcutState* pState;

.......

進入opencv-3.1.0/modules/cudalegacy/src/目錄,修改graphcuts.cpp檔案,將:

#include "precomp.hpp"

#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)

改為

#include "precomp.hpp"

#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) || (CUDART_VERSION >= 8000)

然後make編譯就可以了

make -j8

上面是將opencv編譯成功,但是並沒有安裝到我們的系統中,有很多的設定都沒有寫入到系統中,因此還要進行install。

sudo make install

sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'

sudo ldconfig

重啟系統,重啟系統後cd到build資料夾下:

sudo apt-get install checkinstall

sudo checkinstall

然後按照提示安裝就可以了。

使用checkinstall的目的是為了更好的管理我安裝的opencv,因為opencv的安裝很麻煩,解除安裝更麻煩,其安裝的時候修改了一大堆的檔案,當我想使用別的版本的opencv時,將當前版本的opencv解除安裝就是一件頭疼的事情,因此需要使用checkinstall來管理我的安裝。

執行了checkinstall後,會在build檔案下生成一個以backup開頭的.tgz的備份檔案和一個以build開頭的.deb安裝檔案,當你想解除安裝當前的opencv時,直接執行dpkg -r build即可。

5、配置caffe環境

切換編譯器

選擇g++ 5.0以上的對應編號

sudo update-alternatives --config g++

sudo update-alternatives --config gcc

安裝依賴庫

sudo add-apt-repository universe

sudo apt-get update -y

sudo apt-get install cmake -y

# General Dependencies

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev \

libhdf5-serial-dev protobuf-compiler -y

sudo apt-get install --no-install-recommends libboost-all-dev -y

# BLAS

sudo apt-get install libatlas-base-dev -y

# Remaining Dependencies

sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev -y

sudo apt-get install python-dev python-numpy –y

sudo apt-get install -y python-pip

sudo apt-get install -y python-dev

sudo apt-get install -y python-numpy python-scipy

編譯 Caffe,cd到要安裝caffe的位置

git clone https://github.com/BVLC/caffe.git

cd caffe

cp Makefile.config.example Makefile.config

修改Makefile.config:

替換

改為

r = f()

else:

先安裝anaconda

上面的地址下載 該包預設在downloads裡面

cd /home/username/Downloads

sudo bash Anaconda2-4.2.0-Linux-x86_64.sh

配置環境變數

gedit /etc/profile

末尾添上,我是一路yes下來,所以安在了root下,你可以自己選路徑,這時候的環境變數要改

export PATH=/root/anaconda2/bin:$PATH

重啟

開啟終端

python

安裝成功

2、建立conda環境 名字叫tensorflow

conda create -n tensorflow python=2.7

source activate tensorflow #使能該環境

#下面這句話只能下載給CPU用的tensorflow

conda install -c conda-forge tensorflow

利用pip來下載給GPU用的tensorflow

export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.11.0-cp27-none-linux_x86_64.whl

下載安裝

pip install --ignore-installed --upgrade $TF_BINARY_URL

安裝IPython

conda install ipython

關掉該環境

source deactivate

測試安裝是否正確

source activate tensorflow

python

輸入

import tensorflow as tf

import numpy as np

# Create 100 phony x, y data points in NumPy, y = x * 0.1 + 0.3

x_data = np.random.rand(100).astype(np.float32)

y_data = x_data * 0.1 + 0.3

# Try to find values for W and b that compute y_data = W * x_data + b

# (We know that W should be 0.1 and b 0.3, but TensorFlow will

# figure that out for us.)

W = tf.Variable(tf.random_uniform([1], -1.0, 1.0))

b = tf.Variable(tf.zeros([1]))

y = W * x_data + b

# Minimize the mean squared errors.

loss = tf.reduce_mean(tf.square(y - y_data))

optimizer = tf.train.GradientDescentOptimizer(0.5)

train = optimizer.minimize(loss)

# Before starting, initialize the variables. We will 'run' this first.

init = tf.initialize_all_variables()

# Launch the graph.

sess = tf.Session()

sess.run(init)

# Fit the line.

for step in range(201):

sess.run(train)

if step % 20 == 0:

print(step, sess.run(W), sess.run(b))

# Learns best fit is W: [0.1], b: [0.3]

OK

8、Caffe配置錯誤

問題:找不到Python.h

解決:給anaconda新增環境變數

gedit ~/.banshrc

新增

export PATH=/root/anaconda2/bin:$PATH

export PYTHONPATH=/path/to/caffe/python:$PATH

修改Makefile.config

在終端輸入

locate Python.h

gedit Makefile.config

在INCLUDE_DIRS 和LIBRARY_DIRS後面添上

/root/anaconda2/include/python2.7

啟用

ANACONDA_HOME := $(HOME)/anaconda2

PYTHON_ INCLUDE =$(ANACONDA_HOME)/include\

,把前面的#去掉,那三行都去掉#,並在註釋上面,

註釋這兩句PYTHON_INCLUDE := /usr/include/python2.7\

/usr/lib/python2.7…………..

如果編譯的時候發現有錯,回來改完之後又得重新編譯一遍pycaffe,於是出現如下錯誤

make: Nothing to be done for 'pycaffe'

則在終端輸入

sudo make clean

修改完後再

sudo make pycaffe

這裡要從make –j8 all那一步開始編譯

編譯完後,顯示

然後 cd python進入該目錄

python

import caffe

若此時提示錯誤:

Traceback (most recent call last)

File

ImportError: /home/../anaconda2/lib/python2.7/site-packages/zmq/backend/cython/../../../../.././libstdc++.so.6: versionGLIBCXX_3.4.21' not found

解決:

cd ..

pip install protobuf

sudo apt-get install python-protobuf

coda install libgcc

相關推薦

Ubuntu16.04 +cuda8.0+cudnn+caffe+theano+tensorflow配置明細

歡迎關注我的部落格:http://blog.csdn.net/hit2015spring和http://www.cnblogs.com/xujianqing 本文主要是介紹在ubuntu16.04下,怎麼配置當下流行的深度學習框架,cuda8.0+cudnn+caffe+theano+tensorflow 安

[問題彙總]ubuntu16.04+cuda8.0+cudnn+opencv3.2+caffe+tensorflow+SS搭建

未完待續。。。 ubuntu16.04安裝: 採用映象解壓U盤安裝,在官網下載映象包後解壓拷貝至U盤中,在電腦BIOS設定U盤啟動 顯示卡驅動 NVIDIA MX150驅動安裝(以小米筆記本為例) 安裝完ubuntu kylin16.04後

ubuntu16.04+cuda8.0+cudnn+opencv3.0+caffe

一.ubuntu16.04安裝 開機F12進入BIOS的裝置啟動選單,選擇U盤啟動。 安裝型別,選擇其他選項,進行分割槽。 Swap:邏輯分割槽,20GB 空間起始位置 交換空間 /boot(引導分割槽):10G 邏輯分割槽 空間起始位置 Ex

深度學習環境搭建:linux下 Ubuntu16.04+cuda8.0+cudnn+anaconda+tensorflow配置遠端訪問jupyter notebook

本文主要介紹了linux系統下深度學習系統的搭建,主要的安裝思路如下: linux系統安裝: 首先安裝當下熱門的linux作業系統Ubuntu16.04,系統下載的連結如下: (一)顯示卡驅動安裝:

深度學習(TensorFlow)環境搭建:(三)Ubuntu16.04+CUDA8.0+cuDNN7+Anaconda4.4+Python3.6+TensorFlow1.3

缺失 應該 否則 wid -c 方式 *** 也不能 collected   緊接著上一篇的文章《深度學習(TensorFlow)環境搭建:(二)Ubuntu16.04+1080Ti顯卡驅動》,這篇文章,主要講解如何安裝CUDA+CUDNN,不過前提是我們是已經把NVID

Ubuntu16.04 CUDA8.0+caffe+gpu執行環境配置

完成win10+ubuntu 16.04雙系統的安裝後,開始在ubuntu16.04系統上安裝nVidia驅動,配置cuda,cudnn執行環境,並完成caffe成功配置+MNIST資料庫測試。現在寫下部落格記錄安裝配置過程,以及對配置過程中遇到的錯誤提供解決辦法,避免今後再配置caffe時又踩

(自用)Ubuntu16.04+cuda8.0+caffe配置及採坑

電腦配置 OS:Ubuntu16.04 CPU:E5 2630 v4 (2.2GHz * 10) Memory:DDR4 2600 RECC 16G*4 GPU:NVIDIA Titan XP *2 安裝過程 1.安裝相關依賴項 sudo a

Ubuntu16.04 cuda8.0+cudnn6.0+python3.5 配置tensorflow-gpu 1.4.0

機子情況 win10+ubuntu16.04雙系統 cpu:intel i7-7700 gpu:GTXI060 6G EVGA 在ubuntu16.04上想配置GPU版的tensorflow 備註: 我原來系統是win10,後來用u盤製作啟動盤安裝了ubuntu16.04

caffe--ubuntu16.04+cuda8.0+opencv3.0+python2.7(Anaconda)+matlab(桌上型電腦,獨顯為GTXNVIDIA1060)AN3.4.

配置前提:桌上型電腦已經安裝上win10,GTX1060顯示卡 1.安裝Ubuntu16.04 剛開始一直是按照以前的方法使用軟通牒刻錄到u盤,但發現每次進入u盤啟動的時候都提示boot failed,以為系統沒有燒錄好,又刻錄了幾遍還是這樣,網上說是Ubuntu16.04

ubuntu16.04 cuda9.0 cudnn Tensorflow GPU 1.10.0

Ubuntu14.04升級到Ubuntu16.04 檢視目前版本 lsb_release -a apt-get update && apt-get dist-upgrade reboot do-release-upgrade lsb_releas

Ubuntu16.04+cuda8.0+caffe安裝教程

1、安裝nvidia驅動 執行如下語句,安裝 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update sudo apt-get install nvidia-367 s

ubuntu16.04+cuda8.0+caffe安裝

參照文章 沒裝opencv \matlab\cudnn 安裝caffe之前 安裝 Protocol Buffers: cd ~ git clone https://github.com/google/protobuf.git sudo apt-get insta

ubuntu16.04 cuda8.0 caffe 編譯時遇到 caffe fatal error: cublas_v2.h 沒有那個檔案或目錄

caffe 配置參考 http://blog.csdn.net/leo_xu06/article/details/53010900 make caffe的過程中碰過  ./include/caffe/util/device_alternate.hpp:34:23: fata

ubuntu16.04+cuda8.0+cudnn5.1+caffe 安裝(基於獨立主機&整合顯示卡>X1080Ti)

最近開始配置自己的深度學習主機,由於之前只在筆記本上和單顯示卡主機上安裝過,所以可以說是zero經驗,以至於很多問題不瞭解都當成了bug,故為了方便以後的自己以及大眾,特在此寫下post一篇。(由於可能會有很多的問題我沒有遇到但各位可能遇到,故在文末貼出其他的安裝連結,請自

ubuntu16.04+cuda8.0+cudnn6+tensorflow安裝

然後就先把cuda9.0解除安裝了, sudo apt-get --purge remove cuda 準備重灌,後來覺得實在麻煩,不如直接重灌系統,再來一次。。。 裝NVIDIA驅動384.69 裝cuda8.0 在cuda_8.0.

配置YOLO2(ubuntu16.04+cuda8.0+opencv3.1.0

href seconds make fun put ges jre 成功 下載 要求已經安裝好了CUDA 8.0 以及OpenCV3.1.0 YOLO官方網站 配置darknet git clone https://github.com/pjreddie/dark

Ubuntu16.04+CUDA8.0+cuDNN5.1+Python2.7+TensorFlow1.2.0環境搭建

選擇 per orf stop lis option amd64 pan repo 軟件版本說明:我選的Linux系統是Ubuntu16.04,CUDA用的8.0,Ubuntu16.04+CUDA8.0+cuDNN5.1+Python2.7只支持TensorFlow1.3.

Ubuntu16.04+Cuda8.0+cuDNN6配置py-faster rcnn(轉)

原部落格地址:https://blog.csdn.net/meccaendless/article/details/79557162 0前言Faster R-CNN是任少卿2015年底推出的目標檢測演算法 ,時至今日依舊還是Object Detection領域最好方法之一,基於該框架後續推出了 R-FCN,

ubuntu16.04+cuda8.0+cudnn6.0_error while loading shared libraries: libcudnn.so.6

配置:ubuntu16.04+cuda8.0+cudnn6.0 完整問題描述:error while loading shared libraries: libcudnn.so.6: cannot open shared object file: No such file or directo

搞定ubuntu16.04+cuda8.0+cudnn6.0+tensorflow1.4.0

吐血,裝cuda和cudnn搞了兩天…… 記錄一下: 首先!!各位小白不要上去就直接裝!!!!! 一定要看好對應版本!!!! 有的cuda版本和tensorflow的版本不相容,有的NVIDIA驅動和cuda之間不相容 先多看一些部落格之類的,觀察與自己ubun