Ubuntu16.04环境下安装CUDA、cudnn、Caffe、Tensorflow、pytorch

【主题】Ubuntu16.04环境下安装CUDAcudnnCaffeTensorflowpytorch

【环境】

笔记本:

笔记本:惠普 Pavilion NoteBook

系统环境:Ubuntu16.04+Win10 64位双系统

显卡:NVIDIA  GT 940MX

CUDA版本:8.0.44

CUDnn版本:5.1.10

【安装全过程】

由于未来要在深度学习领域搬砖,入门小白花了三四天终于搭好了环境,第一次写博客来记录这些令人窒息的操作!!大哭保持微笑继续写下去微笑……

装好了Ubuntu16.04双系统后,参考博客http://blog.csdn.net/windforever2014/article/details/52440392安装完显卡驱动后重启Ubuntu,出现循环登录的问题,进不去Ubuntu的桌面了,于是选择了重装系统后再次安装显卡驱动,然而在[软件和更新]——[附加驱动]这一项显示“没有检测到可用的驱动”,于是CTRL+alt+T打开Terminal,键入以下命令解决(需联网):

sudo apt-get upgdate

sudo apt-get upgrade

在翻看了许多博客后,受博客http://www.linuxdiyf.com/linux/31512.html启发,决定直接从CUDA入手,因为在装CUDA的时候直接能装显卡驱动。参考博客http://m.blog.csdn.net/sunpeng19960715/article/details/54835148,成功装上CUDAN卡驱动。详细过程如下:

一、安装CUDA

1. 安装一些依赖项

sudo apt-get update

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler

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

sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev

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

sudo apt-get install git cmake build-essential

 

2. 安装好之后需要禁用nouveau,创建/etc/modprobe.d/blacklist-nouveau.conf,写入:

blacklist nouveau option nouveau modeset=0

然后执行

sudo update-initramfs -u

 

3.配置一些基本的环境变量

gedit  ~/.bashrc

加入:

export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH

export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH 

 

4.下载CUDA ,进入https://developer.nvidia.com/cuda-downloads下载合适的cuda版本,我下载的是cuda_8.0.44_linux.run

5.安装CUDA

下载完成后重启电脑,在出现登录界面时,登录tty1,Ctrl + Alt + F1,在文本模式中登录。

关闭桌面服务

sudo service lightdm stop

注意:这步对于安装Nvidia驱动至关重要。

进入下载cuda文件的目录执行:

sudo sh cuda-8.0.44_linux.run --no-opengl-libs

如果不加no-opengl-libs应该是会出现循环登录问题

安装过程中完全按照它的指引就可以了,先输入accept,然后一连串的yes就可以。

然后重启,这个时候没有循环登录问题,正常进入桌面。

6.修改环境配置

gedit  ~/.bashrc

加上:

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

export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

7.测试CUDAsamples

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

sudo make

./deviceQuery

二、配置cuDNN

1.首先在官网https://developer.nvidia.com/rdp/cudnn-download下载cuDNN,我安装的版本是cudnn-8.0-linux-x64-v5.1.tgz

2.下载cuDNN5.1之后进行解压,cd进入cuDNN5.1解压之后的cuda/include目录,在命令行进行如下操作:

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

再将cd进入lib64目录下的动态文件进行复制和链接:

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.10 libcudnn.so.5 #生成软衔接

sudo ln -s libcudnn.so.5 libcudnn.so #生成软链接

注意:5.1.10的位置应改为自己对应的版本号。

三、安装Caffe

可以先安装pythonpip工具:

sudo apt-get install python-pip

1.GitHub上下载Caffe-master并解压保存到/home下。

2.因为make指令只能make Makefile.config文件,而Makefile.config.examplecaffe给出的makefile例子,因此,首先将Makefile.config.example的内容复制到Makefile.config

cd  ‘/home/blueclean/caffe-master’ 

sudo cp Makefile.config.example Makefile.config

3.打开并修改配置文件:

sudo gedit Makefile.config #打开Makefile.config文件

a. #USE_CUDNN := 1修改成:USE_CUDNN := 1

b.  重要的一项 :

# Whatever else you find you need goes here.下面的

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

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

修改为:

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

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial       

这是因为ubuntu16.04的文件包含位置发生了变化,尤其是需要用到的hdf5的位置,所以需要更改这一路径.

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include后面打上一个空格 然后添加/usr/include/hdf5/serial 如果没有这一句可能会报一个找不到hdf5.h的错误

PYTHON_INCLUDE := /usr/include/python2.7 \

/usr/lib/python2.7/dist-packages/numpy/core/include先不做更改。

可能出现的问题:

①make过程中出现比如 string.h memcywas not declared in this scope的错误是由于gcc编译器版本太新,解决方法是打开makefile搜索并替换

NVCCFLAGS += -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)

NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)

保存退出

make过程中还会报一个ld找不到libhdf5 libhdf5_hl的链接问题,这个原因可能也是因为hdf5的问题,首先看/usr/lib/x86_64-linux-gnu 目录下有没有libhdf5.solibhdf5_hl.so,如果有的话,查看属性是否有正确的链接(正常情况下应该是没有这两个文件),然后右键在终端中打开

sudo ln libhdf5_serial.so.10.1.0 libhdf5.so

sudo ln libhdf5_serial_hl.so.10.0.2 libhdf5_hl.so

10.1.010.0.2可能不同电脑安装版本不同,注意看当前目录下存在的文件,然后

sudo ldconfig #生效

3.编译

caffe目录下编译:

make all -j4

make pycaffe

如果编译没报错正常的话,基本就没问题了。测试python打开

cd /home/user/caffe/python

python

import caffe

如果不报错就说明编译成功,若报错No module called ……”,直接sudo pip install **这个包就可以了。

四.安装Tensorflow

cdcaffe目录下,官网上的方法是:

sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu_1.2.0-cp27-none-linux_x86_64.wh

但是我的总是报错error404,因此重新下载了一个Tensorflow合适版本的whl文件,我下载的是TensorFlow1.2.1,直接

sudo pip install tensorflow_gpu-1.2.1-cp27-none-linux_x86_64.whl

然后在python下:

import tensorflow

没有报错就安装成功了。

五、安装pytorch

sudo pip install http://download.pytorch.org/whl/cu80/torch-0.2.0.post3-cp27-cp27mu-manylinux1-x86_64.whl

sudo pip install torchvision

 

OK啦!那我很棒棒哒……

大哭PS:

我的Ubuntu16.04装好了但是一直显示不出wifi也不能连接,只能连有线,在Ubuntu下无法打开Windows下的磁盘内容,希望各位大神能给出一个亲测有效的方法!!!!

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值