Ubuntu18.04配置深度学习环境 cuda9.0+cudnn7.05+anaconda3.5.3

一、安装显卡驱动

1. 删除旧驱动

打开配置文件, 修改这个文件:

 sudo vim /etc/modprobe.d/blacklist.conf  

在文件的后面添禁止配置的内容:
输入i(进行insert),在最后粘贴

    blacklist nouveau 
    options nouveau modeset=0

esc
输入 :wq

更新配置文件,

sudo update-initramfs -u

重启系统

 lsmod | grep no                           //如果没有任何输出证明禁止nouveau驱动成功。或者显示效果变差。

2. 安装新驱动

在选择应用的界面中打开:软件和更新,附加驱动,选择上面390。根据自己需要选择。
在这里插入图片描述

nvidia-smi

输出驱动型号和显卡信息。

3. 安装cuda9.0

3.1. gcc7.3降级为gcc5.0

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

2.将gcc5与gcc7.3设置到gcc的候选中,之后就可以切换gcc版本.

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 100
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 100

可以切换

sudo update-alternatives --config gcc
sudo update-alternatives --config g++

3.2 下载cuda9.0+cudnn7.05
cuda9.0
选 linux-- x86-64-- Ubuntu-- 16.04–runfile(local)
https://developer.nvidia.com/cuda-90-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1604&target_type=runfilelocal

在这里插入图片描述
在安装的时候不要重复安装显卡驱动。

cudnn7.05
选cudnn7.05 for cuda 9.0 for linux
https://developer.nvidia.com/rdp/cudnn-archive
在这里插入图片描述

3.3. 安装 cuda

先装这个

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

修改环境变量

vim ~/.bashrc    //添加2,3行内容
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
source ~/.bashrc  //使能环境变量

查看环境变量

echo $PATH

3.4. 测试
第一步进入到sample目录下的1_Utilities/deciveQuery打开terminal
第二步,执行make命令
sudo make
# 第三步
./deviceQuery

显示

Detected 1 CUDA Capable device(s)

Device 0: "GeForce GTX 1070"
  CUDA Driver Version / Runtime Version      9.1 / 9.0

即正常。

其他例子同样,鼠标拖动产生波纹,好玩。

在这里插入图片描述

在运行时,打开

nvidia-smi

可以看到占用GPU%

4.cuDnn v7 安装

4.1 解压和文件复制
打开到include目录,在命令行进行如下操作:

sudo cp cudnn.h /usr/local/cuda-9.0/include/ #复制头文件

再cd进入lib64目录下的动态文件进行复制和链接:(7.0.5为对应版本具体可修改)

sudo cp lib* /usr/local/cuda/lib64/ #复制动态链接库
cd /usr/local/cuda/lib64/

sudo rm -rf libcudnn.so libcudnn.so.7 #删除原有动态文件
sudo ln -s libcudnn.so.7.0.5 libcudnn.so.7 #生成软衔接
sudo ln -s libcudnn.so.7 libcudnn.so #生成软链接

4.2测试
下载cudnn的三个deb在这里插入图片描述
依次安装

sudo dpkg -i libcudnn7_7.0.5.15-1+cuda9.0_amd64.deb 
sudo dpkg -i libcudnn7-dev_7.0.5.15-1+cuda9.0_amd64.deb 
sudo dpkg -i libcudnn7-doc_7.0.5.15-1+cuda9.0_amd64.deb

把测试例子放在外边可编辑分区,运行

cp -r /usr/src/cudnn_samples_v7/ $HOME
cd $HOME/cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN

最终如果有提示信息:“Test passed! ”,则说明安装成功。

5.anaconda3.5.3

注意:强烈推荐安装python 3.6版本的。python3.7对应的tensorflow keras 等还不支持。但是下载了高版本的也可以降Python版本,后面会说。
本人下载的版本是:Anaconda3-5.3.0-Linux-x86_64.sh(最新,python3.7)

anaconda2官网下载地址:https://www.anaconda.com/download/#linux

anaconda2清华源下载地址:https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/(试了还不如官网快。。不知为何)

安装
注意:此处加上sudo 才能避免在自选安装路径新建文件夹的时候,新建成功。(默认是/home,但自己要安装/usr/local/anaconda3 中,根据个人需求。我是因为/usr固态,/home只用来备份文件)

sudo bash Anaconda3-5.3.0-Linux-x86_64.sh

改了目录之后,还有个vs code,这个如果需要编译C++的就选择yes.

到环境变量一步发现系统默认位置不对,选择no。自己添加:

增加环境变量并查看、

vim ~/.bashrc 
最后添加:
export PATH="/usr/local/anaconda3/bin:$PATH"
 source ~/.bashrc


echo $PATH

此时可以注销下用户,
测试:

python
conda
anaconda -V

打开Jupyter Notebook

 ipython notebook

打开spyder

/usr/local/anaconda3/bin/spyder

设置spyder桌面快捷方式

1、在桌面打开终端,输入sudo vim spyder.desktop
vim 编辑。
i,粘贴如下代码:

[Desktop Entry]
Type=Application
Version=1.0
Name=Spyder
GenericName=Spyder
Icon=/usr/local/anaconda3/share/icons/spyder3.png
Exec=/usr/local/anaconda3/bin/spyder %F
Terminal=true
Categories=Development;Science;IDE;Qt;

其中Icon 和Exec的前半部分目录,根据自己下载位置更改。
teminal 选择true.

:wq

退出。

sudo chmod 777 spyder.desktop

双击选择trust就可以运行

打开anaconda-navigator

anaconda-navigator

在这里插入图片描述

但发现Python3.7不支持tensorflow\keras等。

所以对Python降版本3.6。

6.pyhton3.7->3.6

使用命令conda install python=3.6

但首先要提高conda 权限。否则报错。

sudo chown -R xxx:xxx /usr/local/anaconda3

其中xxx为当前用户名
后面为安装位置。

随后再执行

conda install python=3.6

即可。

输入python
可以看到版本降低。

7. tensorflow

anaconda search -t conda tensorflow-gpu

8. opencv

下载包,解压
下载依赖项
建立build 文件夹
sudo cmake

sudo make install

9 安装caffe

对于Ubuntu17.04以上,直接
sudo apt install caffe-cuda

9.1 依赖项

sudo apt-get install libprotobuf-dev libleveldb-devlibsnappy-dev libopencv-dev
sudo apt-get install libhdf5-serial-devprotobuf-compiler
sudo apt-get install --no-install-recommendslibboost-all-dev
sudo apt-get install libopenblas-dev liblapack-devlibatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-devliblmdb-dev

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

9.2更改"Makefile.config"文件中的包含目录

将第5行注释去除

USE_CUDNN:= 1

将第21行注释去除

OPENCV_VERSION := 3

将第37和38行注释或者删除

compute_20\compute_21 两行删除

将Python2环境注销,换成Anaconda3下的Python环境

将第51行BLAS:= atlas注销,换成BLAS := open

将PYTHON_LIB:= /usr/lib注释

取消PYTHON_LIB:= $(ANACONDA_HOME)/lib的注释

hdf5

INCLUDE_DIRS:=$(PYTHON_INCLUDE) /usr/local/include

然后在后面加上"serial"的包含目录,即:

INCLUDE_DIRS:=$(PYTHON_INCLUDE) /usr/local/include/usr/include/hdf5/serial/

接着需要更改相应的"Makefile"文件,找到

LIBRARIES +=glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5

更改最后两项为:

LIBRARIES +=glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

ref

环境变量查看和更改
https://blog.csdn.net/white_idiot/article/details/78253004
环境配置
https://blog.csdn.net/white_idiot/article/details/78253004

caffe 安装
https://blog.csdn.net/CAU_Ayao/article/details/80578600

猜你喜欢

转载自blog.csdn.net/qq_35608277/article/details/83113863