深度学习远程服务器配置

  在深度学习的科研任务中,很多模型的运行都会用到 GPU 和显存,如果个人计算机的配置有限,我们通常会在单位提供的算力更高、性能更好的服务器上跑大型的模型代码。当然,在正式使用服务器之前,需要向服务器的管理员申请个人账号,然后在自己的工作目录下进行深度学习的环境配置。

1. 服务器安装 Anaconda

  我们配置深度学习的 Python 环境时,一般会用到 Anaconda 包管理工具(里面自带 Python 和很多模块),可以在清华的镜像网站 https://repo.anaconda.com/archive/index.html 上下载对应版本的 Anaconda 进行安装。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hejI7u7g-1645891100958)(C:\Users\17209\AppData\Roaming\Typora\typora-user-images\image-20220226204610495.png)]

由于服务器大多都是 Linux 操作系统,所以这里选择安装的是 2020.11 发布的 Anaconda3-2020.11-Linux-x86_64.sh,然后再将软件包通过软件传输工具(推荐Xftp5)发送到服务器的个人目录下。

在终端命令下输入安装指令:bash Anaconda3-2020.11-Linux-x86_64.sh

当然也可以直接通过 bash 指令完成下载和安装:

  • 下载:wget https://repo.continuum.io/archive/+下载的Anaconda版本
  • 安装:bash 下载的Anaconda版本
wget https://repo.anaconda.com/archive/Anaconda3-2020.11-Linux-x86_64.sh
bash Anaconda3-2020.11-Linux-x86_64.sh

配置PATH环境变量:在终端输入命令 vi .bashrc 进行环境配置

****

在文件末尾添加:export PATH=/home/trainingl/anaconda3/bin:$PATH,注意这里 /home/trainingl/anaconda3/bin 是我的实际安装路径。

测试环境,查看版本:服务器上 Anaconda 安装完成之后,可以在终端中输入 python,查看当前版本

2. 配置清华镜像源

  在使用服务器环境下的 Linux 操作系统时,难免会下载很多本地没有的包,而 Linux 使用的下载源服务器在国外,下载速度相对国内会慢很多,日常使用的阿里云和腾讯云等国内服务器厂商,镜像源都默认为自己相关的镜像源,所以在使用时下载应用的速度很快。这里我选择了清华镜像源进行配置。

添加清华镜像包管理【顺序执行】:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

查看已添加的源:conda config --show-sources

3. 创建和管理虚拟环境

首先我们要搞清楚为什么要创建虚拟环境?虚拟环境又是一个什么概念?

  从实际的科研背景下,我们可能会面临很多不同的任务,而这些任务对 Python 的环境要求不一致,并且可能某些包或库在版本上会起冲突,比如做深度学习任务有时会用到 PyTorch,而有时会用到 TensorFlow,我们希望这两个库能在两个独立的 Python 环境下运行该多好啊!所以 Anaconda 推出虚拟环境的包管理工具,我们可以通过 conda 命令在 env 目录下创建不同的虚拟环境,这些虚拟环境下可以分别安装适应不同任务的 Python 包或模块,这些环境可以随意切换使用,而且不会产生冲突。

1、查看当前系统所有的conda环境:conda env list

从结果中可以看到有两个虚拟环境,其中的 base 是一个基础环境,是安装 Anaconda 自动生成的一个基本环境,而另一个名称为 train 的则是我创建的一个虚拟环境。

2、创建虚拟环境:conda create -n envName python=3.7

说明:在安装虚拟环境时会附带的安装一些基础的库文件.

3、激活虚拟环境:source activate envName

4、退出虚拟环境:source activate

注意:退出虚拟环境时不要加名称参数,直接 source activate.

5、删除虚拟环境:conda remove -n your_env_name(虚拟环境名称) --all

6、删除虚拟环境下不需要的包:conda remove --name your_env_name package_name

7、进入已有的虚拟环境,查看安装了那些包:conda list

4. 安装 PyTorch 深度学习框架

  在安装 PyTorch 深度学习框架时,首先需要知道当前服务器的 CUDA 版本。当然在服务器的 CPU 环境下是无法找到的,所以需要用户切换到 GPU 环境下,一般学校的服务器会有多张显卡,但需要根据显卡的使用权进入对应的 gpu 环境,输入指令 nvcc -V 查看当前 CUDA 版本

可以看到当前 CUDA 版本是 9.0,考虑到后面会安装PyG,所以这里我安装的是 PyTorch1.7.1 和 CUDA 10.1的。根据该版本在 PyTorch官网 上寻找对应的安装命令:

注意:安装对应的版本的 PyTorch 时,一定要切换到对应的虚拟环境下。另外有的学校服务器只能在 cpu 环境下才能联网,而 gpu 环境处于无网环境即仅用于计算,所以在 gpu 环境通过 nvcc -V 查看 CUDA 版本后,及时切换到 cpu 环境下。

需要经过比较长的等待时间,然后测试是否安装成功。将 cpu 切换到 gpu 环境下,进入 gpu 环境一定要进入安装 torch 的虚拟环境下进行测试。

import torch
print(torch.cuda.is_available())

可以发现 pytorch 1.7 安装成功并且 CUDA 能正常使用。

Logo

更多推荐