前几天师兄发了实验室的服务器IP地址,让我自己配好环境,我整个人一头雾水,经过上网搜索各种资料后,花费一个下午终于弄好了,现在在这记录一下,以防以后忘记,也提供给有需要的小伙伴。
0.获取服务器信息
咱在本地写好的深度学习代码通常会用实验室的服务器来跑(因为服务器配置要高很多,除非导师经费有限不提供服务器hhh...),首先需要知道服务器的基本信息,包括系统是linux还是windows还是Mac,IP地址、用户名、端口号、密码是多少,这些实验室都会提供给你,如果是自己去租用服务器的话平台也会提供滴。
我是linux系统,所以之后我都需要使用linux命令来操控服务器,linux命令不用特地去学,网上一搜就是了~
1.远程连接软件
获取了服务器的信息后,需要一个远程连接软件,用来在本地控制在远端的服务器。
我使用的是MobaXterm。
安装好后,点击上方功能栏的session,再选择ssh连接方式:
依次填入IP地址,用户名和端口:
然后根据提示输入密码就可以啦,连接的时候可能会有一段比较长时间的黑屏,连接成功后的画面显示是这样:
2.检查python是否安装
一般来说,给到你的服务器都是已经安装好python的了,尤其是linux系统通常本身自带python,但是如果服务器是windows系统的话,最好判断一下系统有没有安装python,没有的话就要自行安装。
可以在MobaXterm的终端输入python3来看系统是否已经安装了python,比如我的服务器就已经安装了python3.8:
3.检查cuda版本
一般来说,给到你的服务器是已经安装好cuda的了,不过我们需要查看一下cuda的版本,以便后续选择合适的pytorch版本进行安装。
输入nvcc -V来查看cuda的版本,比如我的cuda是10.1版本:
4.安装anaconda
如同在本地电脑上安装anaconda一样,服务器上安装anaconda也能方便我们对不同的深度学习环境进行管理。
4.1 下载anaconda安装包
在anaconda官网上根据服务器的系统查看自己需要的版本,比如我选择的是linux-x86_64,发布日期选择最新的(anaconda选最新版本的是没关系的,不像后面pytorch不能随便选最新的)
然后在终端中输入:
wget https://repo.anaconda.com/archive/Anaconda3-2024.06-1-Linux-x86_64.sh
其中,wget是用来下载网络文件的linux命令,https://repo.anaconda.com/archive/ 是网址,Anaconda3-2024.06-1-Linux-x86_64.sh 表示自己选择的版本。
下载好后,可以在MobaXterm左侧看到这个安装包:(code文件夹是我自己上传的代码文件夹,anaconda3文件夹是anaconda安装好后才会出现的,这一步还不会出现)
4.2 安装anaconda
依次输入:
chmod +x Anaconda3-2024.06-1-Linux-x86_64.sh
bash Anaconda3-2024.06-1-Linux-x86_64.sh
前一句是用来给安装包添加可执行权限,后一句是执行安装命令。
接着按照提示安装即可。
安装完毕后,重新打开终端,或者重新加载shell配置(输入如下代码:)
source ~/.bashrc # 重新加载shell配置
即可进入conda的base环境:
以后登录服务器也可以用该代码进入conda的base环境,如果想退出base环境的话输入下面代码即可(从某一conda环境退出至base环境也是用该代码)。对这部分不熟悉的童鞋可以去了解一下conda常用命令。
conda deactivate
4.3 检测安装是否成功
依次输入:
anaconda -V
conda -V
若出现版本信息,即安装成功
5.在conda环境中安装pytorch
5.1 查看合适的pytorch版本
根据在【3.检查cuda版本】步骤中获取到的cuda版本,来选择适合的pytorch版本。注意!!!输入nvcc --version命令获取的是服务器已经安装好的cuda版本,输入nvidia-smi命令获取的则是服务器能够安装的最高的cuda版本。比如我服务器已经安装好的cuda是10.1,而能够安装的最高的cuda是12.0。一定是根据已经安装好的cuda版本去选择合适的pytorch版本!不然后面会不兼容。
在PyTorch官网上找到所有的版本,按下图依次点击找到,也可直接点此链接https://pytorch.org/get-started/previous-versions/:
点进去后一直往下滑,直到看到自己的cuda版本,比如我是cuda10.1,我是Linux系统,我要通过conda安装Pytorch,所以我应该看这里:
这里告诉我我能够安装的pytorch版本是1.7.1,torchvision(pytorch的计算机视觉相关库)版本是0.8.2,torchaudio(pytorch的音频相关库)版本是0.7.2。
然后根据【pytorch版本-python版本对应表】(这个在网上可以搜到,我随便截了一张放在下面)去获取一会儿咱们conda虚拟环境能使用的python版本:
我能安装的pytorch版本是1.7.1,对应的我能安装的python版本就是3.6~3.9之间,最新的3.11版本是不能用的。
5.2 创建conda虚拟环境并安装pytorch
创建并激活一个名为env1的虚拟环境,python的版本根据上一步获得的信息应该在3.6~3.9之间选择,这里我选择3.8,在终端依次输入:
conda create -n env1 python=3.8 # 创建环境
conda activate env1 # 激活环境
接着把5.1步骤中在pytorch官网上看到的命令复制到MobaXterm的终端(在终端点击鼠标右键后可以选择粘贴):
conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 cudatoolkit=10.1 -c pytorch
耐心等待即可
5.3 检测安装是否成功
输入python3,进入到python编辑,然后依次输入以下代码:
import torch
torch.__version__ # torch版本
torch.cuda.is_available() # cuda是否可用
查看到以下结果说明安装成功!
6. 上传代码并运行
在MobaXterm的SFTP选项卡(橙色地球图标)中可以点击上传图标来上传代码文件:
不过一般上传的都是一个代码文件夹,此时可以直接把本地的代码文件夹拖拽到上图的文件列表区域,底下便会出现上传进度条:
上传结束后,在终端输入 cd + 文件夹名(我的文件夹名为code) 进入该文件夹,然后再运行代码的主文件(我的代码主文件是main.py):
如果出现报错,可能是因为没有安装需要的库所致,根据提示安装即可,尽量选择conda install的命令而不是pip install的命令来安装,具体原因见全面总结 pip install 与 conda install 的使用区别_pytorch安装pip和conda的区别-CSDN博客
好了,到这里深度学习服务器环境的配置就结束啦~~~以后就可以愉快地使用实验室的服务器啦!