基于Ubuntu18.04下深度学习服务器搭建

基于Ubuntu18.04下深度学习服务器搭建

目录:

  1. 基于Ubuntu18.04下深度学习服务器搭建
    1. 主要模块组成
    2. Anaconda安装
    3. CUDA安装
    4. pytorch安装
    5. CuDNN安装
  2. 其他常用指令
    1. 查看系统发行信息
    2. 查看系统位数
    3. 为用户分配sudo权限
    4. 安装Apache服务器并启用防火墙控制
    5. 新建用户
    6. 查看、安装、卸载、更新GPU显卡驱动
    7. 安装jdk1.8

一、基于Ubuntu18.04下深度学习服务器搭建

1、主要模块组成

  • GPU显卡驱动安装:高效执行复杂的数学和几何计算
  • Anaconda安装:一个开源的Python发行版本,conda可用于快速安装不同版本的软件包及其依赖包,Anaconda包含conda、Python、Numpy、Pandas等包
  • CUDA安装:通用并行计算架构,执行device端的Kernel程序,解决大量并行化的问题,有效利用GPU芯片上的大量执行单元
  • cuDNN安装:用于深度神经网络的GPU加速库
  • pytorch安装:基于自动求导系统构建神经网络,为张量计算(如Numpy)提供强大的GPU加速

2、Anaconda安装

(1)安装过程:

  • 使用清华镜像下载安装包:sudo wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh
  • 执行脚本文件:sh Anaconda3-5.3.1-Linux-x86_64.sh​​​​​​,按照提示输入回车或yes后,软件会自动进行安装
    • 基于Ubuntu18.04下深度学习服务器搭建_第1张图片
  • 安装完毕后查看Anaconda和conda版本信息:anaconda -V和conda -V,查看到Anaconda的版本为1.7.2,conda的版本为4.5.11
  • 使用指令:conda info也能查看到详细信息:
    • 基于Ubuntu18.04下深度学习服务器搭建_第2张图片

(2)安装过程遇到的问题以及解决办法:

a)报错信息:conda报错from conda.cli import main ModuleNotFoundError: No module named 'conda'

解决办法:

  • 在安装完成后立即更新conda:conda update conda
  • 基于Ubuntu18.04下深度学习服务器搭建_第3张图片

3、CUDA安装

  • 为了兼容大部分TensorFlow中的模块,服务器上安装CUDA9.0版本,但尝试过11.1版本的CUDA安装,下面分别记录两个版本的Cuda的安装过程:

(1)11.1版本CUDA安装:

  • 执行指令:wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-ubuntu1804.pin
  • 将文件移动到etc目录:sudo mv cuda-ubuntu1804.pin /etc/apt/preferences.d/cuda-repository-pin-600
  • 接下来执行指令:wget https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda-repo-ubuntu1804-11-1-local_11.1.0-455.23.05-1_amd64.deb,但不建议wget下载,而采用迅雷通过白金会员复制链接进行下载,下载完成后,将其通过Xftp等软件传输到服务器上
  • 添加公钥:sudo apt-key add /var/cuda-repo-ubuntu1804-11-1-local/7fa2af80.pub
  • 安装deb软件包:sudo dpkg -i cuda-repo-ubuntu1804-11-1-local_11.1.0-455.23.05-1_amd64.deb
  • 更新软件包索引列表:sudo apt-get update
  • 安装aptitude:sudo apt-get install aptitude
  • 通过aptitude安装cuda:sudo aptitude install cuda
  • 安装完成后修改环境变量,sudo vim /etc/profile,为PATH变量新增 /usr/local/cuda-11.1/bin
  • 使环境变量立即生效:source /etc/profile
  • 安装nvcc编译器:apt-get install nvcc
  • 通过nvcc -V查看Cuda版本,查看到Cuda版本为11.1
    • 基于Ubuntu18.04下深度学习服务器搭建_第4张图片
  • 安装结束

(2)9.0版本CUDA安装:

  • 用迅雷下载https://developer.nvidia.com/compute/cuda/9.0/Prod/local_installers/cuda_9.0.176_384.81_linux-run后,将其通过xftp传输到服务器
  • 赋予执行权限:chmod +x cuda_9.0.176_384.81_linux-run
  • 安装Cuda:sudo ./cuda_9.0.176_384.81_linux-run --override
  • 修改环境变量:
    • 在 PATH中加入usr/local/cuda-9.0/bin
    • 在LD_LIBRARY_PATH加入/usr/local/cuda-9.0/lib64
  • 使环境变量立即生效:source /etc/profile
  • 通过nvcc -V查看Cuda版本,查看到Cuda版本为9.0:
  • 或者通过查看version.txt文件查看Cuda版本:cat /usr/local/cuda-9.0/version.txt
  • 进入Sample目录,任意找到一个示例:cd /usr/local/cuda-9.0/samples/0_Simple/vectorAdd
  • 编译:sudo make
    • 基于Ubuntu18.04下深度学习服务器搭建_第5张图片
  • 执行:sudo ./vectorAdd
    • 基于Ubuntu18.04下深度学习服务器搭建_第6张图片
  • 安装完成

(3)安装过程遇到的问题以及解决办法:

a)Ubuntu中如何卸载掉原来版本的Cuda?

解决办法:

  • 执行指令:sudo apt-get autoremove --purge cuda
  • 然后修改环境变量中的PATH变量,删除cuda bin目录。
  • 使环境变量立即生效:source /etc/profile

b)报错信息:The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly.If you know that the kernel source packages are installed and set up correctly, you may pass the location of the kernel source with the '--kernel-source-path' flag.

解决办法:

  • 执行指令:sudo apt install dkms

c)报错信息:An incomplete installation of libglvnd was found. Do you want to install a full copy of libglvnd? This will overwrite any existing libglvnd libraries. (Answer: Abort installation.)

解决办法:

  • 执行指令:sudo apt purge nvidia*

d)报错信息:dlopen("libOpenGL.so.0") failed: libOpenGL.so.0: cannot open shared object file: No such file or directoryAn incomplete installation of libglvnd was found. Do you want to install a full copy of libglvnd? This will overwrite any existing libglvnd libraries. (Answer: Abort installation.)

解决办法:

  • 在安装过程中,提示:Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81?(y)es/(n)o/(q)uit: 的时候,输入:no

e)报错信息:To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-9.0/bin PATH includes /usr/local/cuda-9.0/bin-   LD_LIBRARY_PATH includes /usr/local/cuda-9.0/lib64, or, add /usr/local/cuda-9.0/lib64 to /etc/ld.so.conf and run ldconfig as root

解决办法:

  • 执行指令:sudo vim /etc/profile
  • 修改环境变量:
    • 在 PATH中加入usr/local/cuda-9.0/bin
    • 在LD_LIBRARY_PATH加入/usr/local/cuda-9.0/lib64
  • 使环境变量立即生效:source /etc/profile

f)报错信息:在对sample目录下的文件进行编译时报错:/usr/local/cuda-9.0/bin/..//include/crt/host_config.h:119:2: error: #error -- unsupported GNU version! gcc versions later than 6 are not supported!

解决办法:

  • 查看GCC版本:gcc -v,发现版本为7.5.0
    • 基于Ubuntu18.04下深度学习服务器搭建_第7张图片
  • 安装gcc和g++6版本:sudo apt-get install gcc-6,sudo apt-get install g++-6
  • 创建软链接:sudo ln -s /usr/bin/gcc-6 /usr/local/cuda-9.0/bin/gcc和sudo ln -s /usr/bin/g++-6 /usr/local/cuda-9.0/bin/g++
    • ​​​​

4、pytorch安装

(1)安装过程:

  • 查看CUDA9.0版本下对应的pytorch版本:https://pytorch.org/get-started/previous-versions/
    • 基于Ubuntu18.04下深度学习服务器搭建_第8张图片
  • 安装pytorch1.1.0:conda install pytorch==1.1.0 torchvision==0.3.0 cudatoolkit=9.0 -c pytorch
    • 基于Ubuntu18.04下深度学习服务器搭建_第9张图片
  • 通过一个测试用例测试pytorch是否可用:
    • import torch
    • x = torch.rand(4, 3) #构建一个随机初始化的4 * 3的矩阵x
    • print(x) #打印矩阵x的信息
    • y = torch.rand(4, 3) #构建一个随机初始化的4 * 3的矩阵y
    • print(x) #打印矩阵y的信息
    • if torch.cuda.is_available(): #当cuda可用时
    •     x = x.cuda()
    •     y = y.cuda()
    •     print(x + y)
    • 基于Ubuntu18.04下深度学习服务器搭建_第10张图片
  • 安装成功

(2)安装过程遇到的问题以及解决办法:

a)报错信息:在使用pip进行安装时:pip install torch===1.1.0 torchvision===0.3.0 -f https://download.pytorch.org/whl/torch_stable.html,发现报错:Could not find a version that satisfies the requirement torch==1.1.0 

解决办法:

  • 在谷歌和百度搜索解决方案,尝试了多次,无果,无奈选择conda进行安装conda install pytorch==1.1.0 torchvision==0.3.0 cudatoolkit=9.0 -c pytorch

5、CuDNN安装

(1)安装过程:

  • 进入cuDNN的下载页面:https://developer.nvidia.com/rdp/cudnn-download,注册并填写完问卷后,找到适合自己的CUDA版本的cuDNN(本测试服务器中适合的版本为7.6.5),通过迅雷进行下载:https://developer.nvidia.com/compute/machine-learning/cudnn/secure/7.6.5.32/Production/9.0_20191031/cudnn-9.0-linux-x64-v7.6.5.32.tgz基于Ubuntu18.04下深度学习服务器搭建_第11张图片
  • 选择cuDNN Library for Linux:基于Ubuntu18.04下深度学习服务器搭建_第12张图片
  • 下载完毕后通过Xftp等软件将其传到服务器中
    • 基于Ubuntu18.04下深度学习服务器搭建_第13张图片
  • 解压缩:tar -xzvf cudnn-9.0-linux-x64-v7.6.5.32.tgz,完成后会在目录中生成cuda文件夹
    • 基于Ubuntu18.04下深度学习服务器搭建_第14张图片
  • 复制相关文件:
    • sudo cp /home/Dengqy/cuda/include/cudnn.h /usr/local/cuda-9.0/include/
    • sudo cp /home/Dengqy/cuda/lib64/libcudnn* /usr/local/cuda-9.0/lib64/
    • sudo chmod a+r /usr/local/cuda-9.0/include/cudnn.h /usr/local/cuda-9.0/lib64/libcudnn*
  • 安装完成

二、其他常用指令

1、查看系统发行信息:

lsb_release -a,查看到系统为ubuntu18.04版本

基于Ubuntu18.04下深度学习服务器搭建_第15张图片

2、查看系统位数:

uname -a,查看到系统为x86_64,即64位

3、为用户分配sudo权限:

  • 非必需步骤:
    • apt-get install sudo
      • groupadd sudo
      • vim /etc/sudoers
      • %sudo ALL=(ALL:ALL) ALL
      • cat /etc/group
    • 必需步骤:gpasswd -a Dengqy sudo 或usermod -a -G sudo Dengqy

4、安装Apache服务器并启用防火墙控制:

  • 安装Apache服务器:sudo apt install apache2
  • 查看版本:apache2 –version
  • 查看ufw应用配置文件列表:sudo ufw app list
  • 打开防火墙80端口:sudo ufw allow 'Apache'
  • 打开SSH22端口:sudo ufw allow 'OpenSSH'
  • 开启防火墙:sudo ufw enable
  • 查看防火墙状况:sudo ufw status
    • 基于Ubuntu18.04下深度学习服务器搭建_第16张图片
  • 查看Apache2服务器运行情况:sudo systemctl status apache2
    • 基于Ubuntu18.04下深度学习服务器搭建_第17张图片

5、新建用户:

  • useradd Dengqy –m
  • passwd Dengqy:设置密码
  • usermod -s /bin/bash 账号名称
  • chmod 750 Dengqy
  • chown [-R] 账号名称:用户组名称 文件或目录

6、查看、安装、卸载、更新GPU显卡驱动:

  • 查看驱动:sudo dpkg --list | grep nvidia-*
  • 卸载驱动:
    • sudo apt-get remove nvidia-*
    • sudo apt-get autoremove
  • sudo add-apt-repository ppa:graphics-drivers/ppa
  • sudo apt update
  • 将驱动更新为450驱动:sudo apt install nvidia-driver-450
  • nvidia系统管理界面查看GPU显卡情况:nvidia-smi

7、安装jdk1.8:

  • 下载jdk包到本地,然后通过Xftp等软件传输到服务器
  • 解压缩到指令目录java8:sudo tar -xvzf jdk-8u92-linux-x64.gz -C /usr/local/java8/
  • 解压缩安装完成后修改环境变量,sudo vim /etc/profile:
    • export JAVA_HOME=/usr/local/java8/jdk1.8.0_92
    • export PATH=${JAVA_HOME}/bin:${PATH}
  • 使环境变量立即生效:source /etc/profile
  • 查看jdk版本信息:java -version
    • 基于Ubuntu18.04下深度学习服务器搭建_第18张图片

你可能感兴趣的:(人工智能,深度学习,pytorch,cuDNN,cuda,anaconda)