深度学习服务器装机指南(TITAN V显卡)
基本配置:
系统:ubuntu 16.04
显卡:TITAN V
- 安装xfce图形界面替换ubuntu自带界面
1.1离线安装
(1)通过apt-get下载所需软件包; apt-cache search XXX (查找XXX有哪些软件包),找到XXX 软件,然后执行apt-get -d install XXX,执行完后,XXX的依赖包就会下载保存在 /var/cache/apt/archives里面; 1.根目录/下新建一个文件夹 mkdir AAA 2.将下载的deb包拷贝到上述新建的文件夹下 cp -r /var/cache/apt/archives /AAA 3.修改文件夹的权限,可读可写可执行 chmod 777 -R /AAA/ 4.建立deb包的依赖关系 dpkg-scanpackages /AAA/ /dev/null |gzip >/AAA/Packages.gz -r 如果出现错误:sudo:dpkg-scanpackages: command not found 则需要安装dpkg-dev工具: apt-getinstall dpkg-dev 5.将生成的Packages.gz包复制到和deb同目录下 cp /AAA/Packages.gz /AAA/archives/Packages.gz 6.打包成压缩包,以备后用 tar cvzf AAA.tar.gz /AAA/ 保存AAA.tar.gz文件到U盘或服务器
(2)在另外一台没有网络的Ubuntu上离线安装 1.插入U盘或光盘,将AAA.tar.gz复制到根目录下,解压 tar -xvf AAA.tar.gz 2.将安装包所在和源路径添加到系统源source.list #备份一下 cp /etc/apt/sources.list /etc/apt/sources.list.bak #清空源文件 echo > /etc/apt/sources.list #添加本地源路径进去 vi /etc/apt/sources.list #插入下列语句 deb file:/AAA/ archives/ 3.更新系统源 apt-get update 4.离线安装 此时,在没有网络的情况下,我们就可以安装我们之前下载的AAA软件了 apt-get install AAA PS : 1:在update andinstall过程中可能会报错,就是因为文件夹路径需要做下调整,现在路径是/ AAA/,那就再复制一份/AAA/所有内容至/AAA/AAA/下面即可; 2:其他所有包安装都可以以这样方式制作离线源;
|
1.2在线安装
sudo apt-get install xubuntu-desktop
|
- 安装Nvidia GPU驱动
- 首先下载pip和git
sudo apt-get install git #安装git sudo apt-get install python-pip #安装python2的pip sudo apt-get install python3-pip #安装python3的pip apt-get install openssh-server #安装ssh服务 |
- 更新kernel版本
1.查看内核 uname -a |
- 禁用默认带有的nouveau
# sudo vim /etc/modprobe.d/blacklist.conf (数字是内核版本) 在文件最后添加 blacklist nouveau options nouveau modeset=0
|
- 更新initramfs image
终端输入:sudo update-initramfs -u |
- 查看nouveau是否已经禁用
终端输入:lsmod | grep nouveau #如果没有显示相关的内容,说明已禁用(需要重启电脑) |
|
- 安装显卡驱动 (https://www.nvidia.cn/Download/index.aspx?lang=cn)
# sudo apt-get remove --purge nvidia-*(需要清除干净) # sudo apt-get remove --purge xserver-xorg-video-nouveau (删除旧的驱动)
#sudo /etc/init.d/lightdm stop 关闭x server服务
退出图形界面 control+alt + F2
# cd 到驱动所在的目录 # chmod +x nvidia-driver-local-repo-ubuntu1604-387.34_1.0-1_amd64 必须 root: su # dkpg -i nvidia-driver-local-repo-ubuntu1604-387.34_1.0-1_amd64#
sudo /etc/init.d/lightdm restart 开启x server服务
进入图形界面 control+alt + F7 |
- 重启
# reboot |
- 查看GPU信息
# nvidia-smi |
- 安装CUDA(这里我们使用CUDA-9.0版本)
- 网址:https://developer.nvidia.com/cuda-90-download-archive
- cd 到CUDA所在的目录
# cd /home/bgl/download |
- 赋予权限
# chmod +x cuda_9.0.176_384.81_linux.run |
- 运行 run文件安装
# sh cuda_9.0.176_384.81_linux.run |
- 安装选项
Do you accept the previously read EULA? (accept/decline/quit): accept(接受最终用户许可协议)
Install NVIDIA Accelerated Graphics Driver for cuda_8.0.61_375.26? ((y)es/(n)o/(q)uit): n (不安装Nvidia驱动,步骤1时已经安装) Install the CUDA 8.0 Toolkit? ((y)es/(n)o/(q)uit): y(安装CUDA 8.0 Toolkit) 如果问openGL库 n不装了 如果问你run nvidia-xconfig y Enter Toolkit Location [ default is /usr/local/cuda-8.0 ]:(回车键,使用默认安装路径) Do you want to install a symbolic link at /usr/local/cuda? ((y)es/(n)o/(q)uit): y(安装符号链接) Install the CUDA 8.0 Samples? ((y)es/(n)o/(q)uit): y(安装例程) Enter CUDA Samples Location 默认 |
- 安装完之后,修改/etc/profile配置文件,在最后添加以下两行
export PATH=/usr/local/cuda-9.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64$LD_LIBRARY_PATH |
- 在~/.bashrc 文件中添加以下代码
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64:/usr/local/cuda-9.0/extras/CUPTI/lib64:$LD_LIBRARY_PATH export CUDA_HOME=/usr/local/cuda-9.0 export PATH=/usr/local/cuda-9.0/bin:$PATH
|
- 安装必要的一些库
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
|
- 验证是否安装成功
# nvcc -V 若安装成功显示(需要重启机器才能看到) nvcc: NVIDIA (R) Cuda compiler driver |
3、安装cuDNN v7 (对应cuda 9.0)
cd /home/bgl/download |
|
4、安装caffe
(1)安装必要的库
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 libatlas-base-dev sudo apt-get install python-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
安装openblas # git clone https://github.com/xianyi/OpenBLAS.git # cd OpenBLAS # make -j # make PREFIX=/usr/local/openblas install
安装lmdb # pip install lmdb # pip3 install lmdb |
(2)git 下载caffe源码
git clone https://github.com/BVLC/caffe.git
|
(3)进入caffe目录,然后执行
for req in $(cat requirements.txt); do pip install $req; done
|
- 拷贝文件
cp Makefile.config.example Makefile.config
|
- 修改Makefile.config 文件里的信息
USE_CUDNN := 1 #使用cuda进行加速 CUDA_DIR := /usr/local/cuda-9.0 # cuda头文件及库目录 BLAS := open #使用openblas BLAS_INCLUDE := /usr/local/openblas/include #设置头文件路径 BLAS_LIB := /usr/local/openblas/lib #设置动态库路径 PYTHON_INCLUDE := /usr/local/include/python2.7m \ /usr/local/lib/python2.7/site-packages/numpy/core/include/numpy PYTHON_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/hdf5/serial/ 设置其它依赖库动态库路径 删除CUDA_ARCH := 的第一和第二行 -gencode arch=compute_20,code=sm_20 \ 过时了 删除 -gencode arch=compute_20,code=sm_21 \ 过时了 删除
|
- 开始编译
make all -j8 make pycaffe make test -j8 make runtest -j8
|
- 修改环境变量
vim ~/.bashrc #打开配置文件,添加如下 export PYTHONPATH=/home/bgl/caffe/python:$PYTHONPATH source ~/.bashrc #生效
安装python-opencv sudo apt-get install python-opencv 安装flask sudo apt-get install flask==0.10.1 安装 gevent sudo apt-get install gevent==1.1.0 安装h5py sudo apt-get install h5py 安装tensorflow sudo apt-get install tensorflow==1.12.0 安装requests sudo apt-get install requests 安装leveldb sudo apt-get install leveldb |
- 验证
打开python交互界面进行如下操作
>>import caffe
>>
附件:
absl-py==0.7.1
adium-theme-ubuntu==0.3.4
astor==0.7.1
backports.functools-lru-cache==1.5
backports.shutil-get-terminal-size==1.0.0
backports.weakref==1.0.post1
certifi==2019.3.9
chardet==3.0.4
Click==7.0
cloudpickle==0.8.0
cycler==0.10.0
Cython==0.29.6
dask==1.1.4
decorator==4.4.0
defusedxml==0.4.1
easydict==1.9
enum34==1.1.6
Flask==0.10.1
Flask-SocketIO==3.3.2
Flask-WTF==0.14.2
freeze==1.0.10
funcsigs==1.0.2
futures==3.2.0
gast==0.2.2
gevent==1.1.0
greenlet==0.4.15
grpcio==1.19.0
h5py==2.9.0
idna==2.8
ipython==5.8.0
ipython-genutils==0.2.0
itsdangerous==1.1.0
Jinja2==2.10
Keras==2.2.4
Keras-Applications==1.0.7
Keras-Preprocessing==1.0.9
kiwisolver==1.0.1
leveldb==0.194
lmdb==0.94
Magic-file-extensions==0.2
Markdown==3.0.1
MarkupSafe==1.1.1
matplotlib==1.5.2
mock==2.0.0
networkx==2.2
nose==1.3.7
numpy==1.16.2
opencv-python==4.0.0.21
pandas==0.24.2
pathlib2==2.3.3
pbr==5.1.3
pexpect==4.6.0
pickleshare==0.7.5
Pillow==5.4.1
prompt-toolkit==1.0.15
protobuf==3.7.0
psutil==3.4.2
ptyprocess==0.6.0
pydot==1.0.29
Pygments==2.3.1
pygobject==3.20.0
pyliblzma==0.5.3
pyparsing==1.5.7
Pyste==0.9.10
python-dateutil==2.5.0
python-engineio==3.5.0
python-gflags==3.1.2
python-socketio==3.1.2
pytz==2018.9
PyWavelets==1.0.2
PyYAML==5.1
requests==2.21.0
scandir==1.10.0
scikit-fmm==2019.1.30
scikit-image==0.14.2
scipy==1.2.1
simplegeneric==0.8.1
six==1.12.0
SOAPpy==0.12.22
subprocess32==3.5.3
tensorboard==1.12.2
tensorflow==1.12.0
termcolor==1.1.0
toolz==0.9.0
traitlets==4.3.2
unity-lens-photos==1.0
urllib3==1.24.1
wcwidth==0.1.7
Werkzeug==0.15.1
wicd==1.7.4
wstools==0.4.3
WTForms==2.2.1
Python3中也需要安装keras,opencv等包