从零开始搭建一台深度学习服务器及环境配置
服务器硬件 2019.12.12
实验室需求,我找的配置,反正不用我花钱独享一台服务器
受到货后不太满意的是超微主板
CPU | E5-2678 v3 |
---|---|
主板 | 超微X10DAI |
GPU | 耕升RTX2080Ti |
内存 | 32G |
硬盘 | 4T |
SSD | 256G |
电源 | 850W |
系统安装
windows10 ,由于是实验室项目的服务器,有共用需求所以选择了双系统
- 我先安装了windows再安装ubuntu
windows的安装很简单
/home目录要足够大,用于存放用户数据
ubuntu18.04LTS ,有以下几点注意事项 - 深度学习数据量比较大,会占用很大的空间
/根目录必须要大,各种环境安装的空间占用会消耗大量空间
/home目录要足够大,用于存放用户数据
我不做很多的分区处理,只分出四个主要分区,这样其他分区系统可以自己根据需求调整
之前我在自己电脑交换空间和根目录不够用还要后期扩容搞得很麻烦。
根目录(相当于windows的C盘) | 128G |
---|---|
efi分区 | 500M |
swap交换空间 | 32G |
edi分区 | 500M |
/home分区 | 3T |
环境配置–现有最新版本
- 确定自己的硬件型号:
- 系统:ubuntu18.04LTS
GPU:RTX2080ti
一. 安装NVIDIA驱动
- 禁用nouveau,安装NVIDIA需要把系统自带的驱动禁用:
- 打开文件
sudo gedit /etc/modprobe.d/blacklist.conf
- 在末尾添加
blacklist nouveau
option nouveau modeset=0
- 保存文件并关闭
- 执行生效命令:
sudo update-initramfs -u
- 重启电脑:
sudo reboot
- 检查是否禁用成功:
lsmod | grep nouveau
如果没有输出代表禁用成功2.查看支持的NVIDIA驱动版本
sudo ubuntu-drivers devices
我的显卡硬件是RTX2080ti,可以看到支持的驱动版本为430/435,推荐版本为435
3.安装NVIDIA驱动- 自动安装(推荐版本)这是我比较后最为方便的安装方法
sudo ubuntu-drivers autoinstall
- 进度完成后查看是否安装成功
nvidia-smi
出现以下结果表示驱动安装成功
二. 安装cuda
- 到官网下载最新的cuda版本 NVIDIA官网 👈
根据我们的系统选择相应的版本,然后下面就会出现安装指南
根据指南输入下载命令
wget http://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run
下载完成后输入安装命令:
sudo sh cuda_10.2.89_440.33.01_linux.run
这边有个坑就是我们安装的推荐驱动并不对应最新的cuda版本
需要根据nvidia-smi上显示的cuda-version
比如我这边驱动版本对应cuda-10.1但是官网默认已经到10.2了,这导致我下载后驱动与cuda对应不上,失败了。重新下载cuda-10.1
- 执行run后会跳出操作对话,选择continue继续安装,取消nvidia-driver的安装因为我们已经安装过了,然后accept接受安装。
- 安装完成后修改环境变量
sudo vim ~/.banshrc
- 在末尾添加cuda的安装路径//根据自己的cuda版本修改
export PATH=/usr/local/cuda-10.1/binKaTeX parse error: Expected '}', got 'EOF' at end of input: {PATH:+:PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64KaTeX parse error: Expected '}', got 'EOF' at end of input: …LIBRARY_PATH:+:{LD_LIBRARY_PATH}}
- 生效环境变量
source ~/.bashrc
- 查看安装成功
nvcc -V
三. 安装cudnn
到官网下载对应版本的cudnn👇
——————————— cudnn官网——————————————
比如上图☝我找的cudnn forCUDA10.1 ▶ cudnn library for Linux
四个包都要下载,第一个是cudnn的库,剩下几个是开发支持包
-
下载完成,cd下载目录并解压
tar -zxvf cudnn-10.1-linux-x64-v7.6.5.32.tgz
-
把cudnn的几个文件cp到根目录里
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
-
链接另外三个deb包
sudo dpkg -i libcudnn7_7.6.5.32-1+cuda10.1_amd64.deb
udo dpkg -i libcudnn7-dev_7.6.5.32-1+cuda10.1_amd64.deb
sudo dpkg -i libcudnn7-doc_7.6.5.32-1+cuda10.1_amd64.deb
- 这样就安装完成啦,我们跑一下mnist测试一下吧
cp -r /usr/src/cudnn_samples_v7/ ~
cd ~/cudnn_samples_v7/mnistCUDNN
make clean && make
./mnistCUDNN
四. Docker CE 安装:docker是一个非常好用的工具
我忘记了我写过深度学习环境搭建的分享了😀
看了比较多的安装教程,分享几个以供参考:
https://blog.csdn.net/qq_19307465/article/details/84453901
这边主要的坑在于官方key的添加和镜像下载会因服务器是国外的而受影响:打开手机热点可解决或linux下的ssr
五: