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

news/2024/10/18 5:39:40/

基于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后,软件会自动进行安装
  • 安装完毕后查看Anaconda和conda版本信息:anaconda -V和conda -V,查看到Anaconda的版本为1.7.2,conda的版本为4.5.11
  • 使用指令:conda info也能查看到详细信息:

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

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

解决办法:

  • 在安装完成后立即更新conda:conda update conda

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
  • 安装结束

(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
  • 执行:sudo ./vectorAdd
  • 安装完成

(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
  • 安装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/
  • 安装pytorch1.1.0:conda install pytorch==1.1.0 torchvision==0.3.0 cudatoolkit=9.0 -c pytorch
  • 通过一个测试用例测试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)
  • 安装成功

(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
  • 选择cuDNN Library for Linux:
  • 下载完毕后通过Xftp等软件将其传到服务器中
  • 解压缩:tar -xzvf cudnn-9.0-linux-x64-v7.6.5.32.tgz,完成后会在目录中生成cuda文件夹
  • 复制相关文件:
    • 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版本

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
  • 查看Apache2服务器运行情况:sudo systemctl status apache2

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

http://www.ppmy.cn/news/829122.html

相关文章

2018杭州云栖大会 - 容器区块链分享预告

Clouder lab容器专场-Kubernetes on 容器服务-助力企业提升生产力 [ 会议时间:2018.09.20 AM会议地点:E2-5 ] 阿里云作为CNCF的白金会员,阿里云容器服务也是全球首批通过Kubernetes一致性认证的平台,支撑了国内外数千家…

[分享]实用的软件

分享是一种感恩,分享是一种美德 下面我将会贴上这些软件的官方的地址,不过某些软件没有官方的, 我会发上我上传的链接给你们下载,其实对于某些软件, 建议最好还是直接百度搜。。。 1. 迅雷白金会员获取器下载地址:http…

详解智能设备的6大迅雷长途下载办法

跟着科技进步和经济生活的提高,咱们联网运用的智能设备现已越来越多。你有幻想过一个场景,即是当遇到一个好文件的时分,你只需求手指轻松一点,就能完结遥控散布在不一样当地的电脑、手机、平板电脑、智能电视、盒子、路由器等等智…

颠覆传统下载体验 QNAP迅雷系列NAS重磅登场

2014年4月8日--- 威联通科技欢庆品牌10周年,惊喜亮相迅雷系列NAS, 此为QNAP与迅雷官方联合开发设计NAS内置迅雷APP,,即QNAP迅雷系列NAS。主打机款为: TS-212P, TS-112P, TS-120,TS-420,TS-269L;不仅支持添加…

迅雷tips

1.BT任务不能导出到下载列表 因为这是bt文件,不能导出。 2.可以在文件-》导入未完成下载中 导入文件(但是不能批量导入) 3.远程控制下载:电脑绑定迅雷账号后,可以使用手机控制下载任务,但是不能添加任务&am…

spring 自带的校验框架使用

引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId></dependency>编写规则 开启校验

骨传导蓝牙耳机怎么用,列举出几款表现不错的骨传导耳机

骨传导耳机&#xff0c;听上去就很高端科技感十足对不对&#xff1f;它可是通过头部的骨迷路传递声音的&#xff0c;不像传统的耳机那样直接通过耳膜振动来传递声音。这可是一种真正的迭代啊&#xff01;你可能在想&#xff0c;这和入耳式耳机有什么区别呢&#xff1f;简单&…

优化linux系统中的服务

需求介绍&#xff1a; 公司服务器上安装的linux系统&#xff0c;由于默认启动的程序较多&#xff0c;系统运行缓慢&#xff0c;所以需要管理员对系统服务进行优化&#xff0c;减少一些不必要的自动启动的服务&#xff0c;并设置系统开机后直接进入字符模式 实验操作&#xff1a…