转自:http://blog.csdn.net/langb2014/article/details/51579491
之前在装有caffe的基础上,换CUDA7.5不成功,然后终于找到github上一个教程,一定要按里面的流程安装.把市面上用到的深度工具都装在ubuntu14.04上.有问题请留言.
Basic
1、首选装好系统运行下面的代码:(如果已经安装了nvidia显卡容易出现问题,我出错后,重装了系统)
sudo apt-get update
sudo apt-get install build-essential
sudo apt-get autoremove
2、安装git
sudo apt-get install git
NvidiaDrivers
1、找机子的显卡
lspci | grep -i nvidia
2、自己下载Nvidia-352.41.run或在线安装(这里容易出现没有公钥的问题,解决方案请参考:http://blog.csdn.net/u013066730/article/details/51614088)
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-352
3、重启
sudo shutdown -r now
4、nvidia检查
cat /proc/driver/nvidia/version
cuda7.5
1、下载CUDA7.5(下载.deb文件,放置根目录下,我的是/home/s)(这里使用联网下载的方式太慢了,我直接用了.run文件安装,具体方式参考这里)
sudo dpkg -i cuda-repo-ubuntu1404*amd64.deb
sudo apt-get update
sudo apt-get install cuda
2、添加CUDA环境
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
②添加lib路径,
在/etc/ld.so.conf.d/新建文件cuda.conf,并编辑
cd /etc/ld.so.conf.d
sudo touch cuda.conf
sudo gedit cuda.conf
caffe运行的时候需要cuda的库,所以需要配置以下,在桌面新建一个文件 caffe.conf,然后在文件中输入:
/usr/local/cuda-6.5/lib64
执行下列命令使之立刻生效
sudo ldconfig
这部分从其他地方抄过来的,自己没有测试:
/usr/local/cuda/lib64
然后保存,退出,打开终端并切换到桌面,输入以下语句:
$sudo cp caffe.conf /etc/ld.so.conf.d/
然后更新配置:
$sudo ldconfig
到这里,cuda算是配置好了,接下来就是配置cudnn加速gpu了
3、检查CUDA版本
nvcc -V
4、重启
sudo shutdown -r now
Checking your CUDA Installation (Optional)
1、编译cuda的sample:
/usr/local/cuda/bin/cuda-install-samples-7.5.sh ~/cuda-samples
cd ~/cuda-samples/NVIDIA*Samples
make -j $(($(nproc) + 1))
2、查看显卡里面的信息
bin/x86_64/linux/release/deviceQuery
cudnn
1、安装cudnn_v5
cd ~/Downloads/
tar xvf cudnn*.tgz
cd cuda
sudo cp */*.h /usr/local/cuda/include/
sudo cp */libcudnn* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
如果出现一下问题:/sbin/ldconfig.real: /usr/local/cuda/lib64/libcudnn.so.4 不是符号连接
那么需要重新创建软连接。
cd /usr/local/cuda/lib64
sudo rm libcudnn.so libcudnn.so.7
sudo ln -s libcudnn.so.7.1.4 libcudnn.so.7
sudo ln -s libcudnn.so.7 libcudnn.so
Check
1、终端查看
nvidia-smi
Tensorflow
1、先下载v0.8版的GPU支持
sudo apt-get install python-pip python-dev
2、如果中途安装不了可以先下载那个网址东西,下载好了,然后安装,中途会有几个包的numpy、six、protobuf、wheel下载安装比较慢或者下载不了,可以单独安装。(一共有这几个包:tensorflow,numpy ,protobuf ,wheel, six ,setuptools)
sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.8.0-cp27-none-linux_x86_64.whl
3、测试Tensorflow
python
>>> import tensorflow as tf
>>> exit()
成功的话会出现以下信息:
>>> import tensorflow as tf
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcublas.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcudnn.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcufft.so locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:105] successfully opened CUDA library libcurand.so locally
4、我碰到的一个问题"AttributeError: NewBase is_abstract, ImportError: libcudart.so.7.5"
解决:是因为six版本问题。
sudo pip install six --upgrade --target="/usr/lib/python2.7/dist-packages"
5、推荐IDE调试工具
pyCharm免费的社区版(community release)不支持远程调试,百度下载然后到bin里面,运行pycharm安装文件就可以了。
安装atlas(如果装了这个就不需要装下面的OpenBLAS了)
sudo apt-get install libatlas-base-dev
OpenBLAS
1、先下载git,然后安装OpenBLAS
mkdir ~/git
cd ~/git
git clone https://github.com/xianyi/OpenBLAS.git
cd OpenBLAS
sudo apt-get install gfortran
make FC=gfortran -j $(($(nproc) + 1))
sudo make PREFIX=/usr/local install
2、添加lib库的变量路径
echo 'export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
Common Tools
1、安装来自Scipy的普通tools
sudo apt-get install -y libfreetype6-dev libpng12-dev
pip install -U matplotlib ipython[all] jupyter pandas scikit-image
2、如果安装matplotlib时无法安装,按照下面方法:
先下载:here
然后减压matplotlib-1.5.0,并进入matplotlib-1.5.0里面
最后运行
python setup.py build
python setup.py install
Caffe
1、caffe相信大家都很熟悉了,下面是一些基础依赖库
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 python-skimage ipython python-pil python-h5py ipython python-gflags python-yaml
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
2、克隆caffe
cd ~/git
git clone https://github.com/BVLC/caffe.git
cd caffe
cp Makefile.config.example Makefile.config
3、如果安装了cuDNN然后把Makefile文件的USE_CUDNN := 1注释去掉
sed -i 's/# USE_CUDNN := 1/USE_CUDNN := 1/' Makefile.config
4、如果安装了OpenBLAS,修改BLAS参数
sed -i 's/BLAS := atlas/BLAS := open/' Makefile.config
5、开启python接口
# Uncomment to support layers written in Python (will link against Python libs)
WITH_PYTHON_LAYER := 1
6、开启matlab接口
MATLAB_DIR := /usr/local/MATLAB/MATLAB_Production_Server/R2015a
# MATLAB_DIR := /Applications/MATLAB_R2012b.app
7、如果你装了3.0的opencv需要开启这个接口
OPENCV_VERSION := 3
8、安装需求build和测试caffe,编译PyCaffe
sudo pip install -r python/requirements.txt
make all -j $(($(nproc) + 1))
make test -j $(($(nproc) + 1))
make runtest -j $(($(nproc) + 1))
make pycaffe -j $(($(nproc) + 1))
9、添加caffe的环境变量
echo 'export CAFFE_ROOT=$(pwd)' >> ~/.bashrc
echo 'export PYTHONPATH=$CAFFE_ROOT/python:$PYTHONPATH' >> ~/.bashrc
source ~/.bashrc
10、测试caffe接口
ipython
>>> import caffe
>>> exit()
Theano
1、安装Theano
sudo apt-get install python-numpy python-scipy python-dev python-pip python-nose g++ python-pygments python-sphinx python-nose
sudo pip install Theano
2、测试接口
python
>>> import theano
>>> exit()
Keras
1、这个编译器(关于Theano和Tensorflow)不是很熟悉,顺便安装一下试试。默认是Theano,如果想换Tensorflow,可以按照here.
sudo pip install keras
Torch
1、这个是facebook的深度框架
git clone https://github.com/torch/distro.git ~/git/torch --recursive
cd torch; bash install-deps;
./install.sh
2、添加环境变量
source ~/.bashrc
3、推荐IDE工具eclipse,安装相应的插件(Lua Development Tools)
首先安装eclipse c/c++的开发版,然后在官网搜索Lua,看到LDT就点进去,找到Existing Eclipse installation,按照官网指示安装插件,就ok了。
Mxnet
mxnet是cxxnet的下一代,目前实现了cxxnet所有功能,但借鉴了minerva/torch7/theano,加入更多新的功能。
- ndarray编程接口,类似matlab/numpy.ndarray/torch.tensor。独有优势在于通过背后的engine可以在性能上和内存使用上更优
- symbolic接口。这个可以使得快速构建一个神经网络,和自动求导。
- 更多binding 目前支持比较好的是python,马上会有julia和R
- 更加方便的多卡和多机运行
- 性能上更优。目前mxnet比cxxnet快40%,而且gpu内存使用少了一半。
目前mxnet有更多的binding,更好的文档,和更多的应用(language model、语音,机器翻译,视频)。
1、安装依赖库
sudo apt-get update
sudo apt-get install -y build-essential git libatlas-base-dev libopencv-dev
2、安装mxnet
将mxnet/目录里找到mxnet/make/子目录,把该目录下的config.mk复制到mxnet/目录,用文本编辑器打开,找到并修改以下两行:
USE_CUDA = 1
USE_CUDA_PATH = /usr/local/cuda
git clone --recursive https://github.com/dmlc/mxnet
cd mxnet; make -j$($(nproc)+1
X2Go
1、X2GO是一个远程控制桌面,下面是安装教程
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:x2go/stable
sudo apt-get update
sudo apt-get install x2goserver x2goserver-xsession
2、X2Go 不支持Unity desktop environment (the default in Ubuntu
sudo apt-get update
sudo apt-get install -y xfce4 xfce4-goodies xubuntu-desktop
3、找使用机子的IP
hostname -I