1.工具准备
可以下载一个xshell或secureCRT或者其他shell工具,通过ssh方式连接服务器,然后通过本地电脑终端控制服务器。连接方式输入主机(Host),和端口号(一般是22)就行了。如下图
连接成功后就可以在本地通过shell工具控制服务器了。如下图
再准备一个工具filezilla将本地计算机里面的代码传输到服务器上去。整个流程也很简单,先连接服务器,然后上传指定文件,都是图形化界面操作,这里就不细说。
2.连接服务器后先安装运行代码需要的依赖包,一般深度学习代码可以直接安装一个anaconda。
2.1安装anacondacn
参考这篇博文:安装anaconda
2.2 安装后可能出现conda找不到问题
参考这篇博文:配置环境变量即可未找到conda配置环境变量
成功后输入下面命令即可成功查看conda版本:
conda --version
3 运行代码
3.1 建议建立一个虚拟环境,在虚拟环境中跑代码,不同代码不同的虚拟环境,能避免包冲突。
创建虚拟环境(conda_name为自起虚拟环境名,x.x 为创建的python版本号)
conda create -n codea_name python=x.x
激活环境(也就是进入你建立的的虚拟环境中,之后跑代码将在虚拟环境中进行)
conda activate conda_name
//conda_name为自定义的名字
安装包:进入到你需要运行的代码中,cd进入到requirements.txt文件中,批量安装requirements.txt中的依赖包
pip install-r requirements.txt
运行代码
python train.py
可能出现Module Not Found的情况
如果运行的py文件中需要引用同级目录下其他py文件中的类或函数,需要改变py文件中的系统路径(该路径报错的包上一级文件夹,需要绝对路径通过pwd命令可以查看,如
/home/lh/FederatedLearning/pFedHN-main
)。不然会报Module NOT Found。在文件首添加下面两句代码:
import sys
sys.path.append('/home/lh/FederatedLearning/pFedHN-main')
参考:Conda 创建虚拟环境并安装依赖包集合 requirements.txt
3.2 使用screen命令退出服务器连接后保持代码一直运行
创建screen窗口 screen_name为自定义的窗口名字
screen-S screen_name
查看screen窗口
screen-ls
进入screen窗口
screen-r screen_name
退出screen窗口(后台依然在运行)
快捷键 CTRL+A+D
结束当前的screen窗口
exit
参考:screen命令
4 Google免费Colab服务器云资源
如果没有服务器资源,可以使用Google提供的免费Colab服务器资源,运行方式和jupyternotebook很相似。
介绍几种常用命令
查看服务器资源
!nvidia-smi
挂载云盘
# 挂载Google云盘
from google.colab import drive
drive.mount('/content/drive')
切换到项目目录下
# 切换到要运行的项目目录下import os
os.chdir("/content/drive/MyDrive/lab/pFedHN-main")
显示当前目录文件
# 显示当前目录文件!ls
运行代码
!python ./experiments/pfedhn/trainer.py
具体使用colab请看下面链接:
使用GOOGLE COLAB运行深度学习项目
5 致谢
浩瀚的知识中相遇是缘分,感谢阅读,希望能对你有所启发,谢谢!
版权归原作者 --believe 所有, 如有侵权,请联系我们删除。