服务器的使用

在完成大作业时,由于数据集庞大,本机电脑的硬件配置不足以在规定时间内完成任务,因此需要租借远端服务器,借助服务器主机更强大的gpu及其它硬件来完成任务。本文就是详细介绍如何在服务器上执行自己的代码。

租借服务器

首先,需要在腾讯云、阿里云和AutoDL等平台租借服务器。这里推荐AutoDL,价格相对便宜。但本次作业使用了腾讯云的折扣,因此以腾讯云为例。不过各种平台基本大同小异。

控制台

购买后第一件事可以先浏览一下控制台,建议先为服务器设置密码。

如果后续需要重置实例(即服务器)等操作也可以来此界面执行。

连接服务器

服务器的操作原理就是主机与远端服务器建立连接后,从主机发送命令控制远端服务器。因此需要先建立连接。
建立连接主要通过ssh命令来实现:

1
ssh username@ip

具体操作为在Xshell(windows自带命令行也可以,但有弊端,下文阐述)输入以上命令。
用户名和密码需要在实例中寻找。
腾讯云中的ip地址为红框部分,但ID并不是username,在腾讯云的说明文档中解释ubuntu系统的默认用户名为ubuntu

执行完上述命令后输入密码,注意,在windows自带命令行中输入密码时并不会显示输入位数,因此需要盲输。

完成后显示连接成功,并且命令行前缀会变为:

搭建环境

市面上的服务器一般均已配置好conda环境,因此只需创建虚拟环境和配置相关包即可,windows并无其它区别。

注意先使用如下命令查看gpu版本,然后安装对应版本的第三方库。

1
nvidia-smi

导入导出文件

首先使用cd命令进入所需文件夹。

1
2
3
cd                  //进入根目录
cd foldername //进入foldername文件夹内
cd .. //进入父级目录

或使用mkdir创建文件夹。
1
mkdir foldername

再使用rz从本地导入至远端或sz从远端导入本地。
1
2
rz                  //导入,调用后在Xshell中弹出窗口,选择文件即可
sz filename //导出

注意,如果在windows自带命令行中使用rzsz,会出现乱码,因此建议使用Xshell等。

运行文件

运行文件主要是以下五个命令:

1
2
3
4
nohup python -u xxx.py > xxx.log 2>&1 & //后台运行程序,即运行xxx.py并将输入写入xxx.log
ps -ef | grep python //查看正在运行的后台程序
tail -f xxx.log //实时查看xxx.log
kill -9 xxxxx //关闭编号为xxxxx的程序(nohup命令执行后会为程序分配一个编号)

这里以python为例,其它代码同理。

---------------------本文结束---------------------