目录
官网登录网址:
AC
官方操作细节参考链接如下,有需要的自取:
Notebook · 计算服务
了解常用的E-shell命令
1. squeue: 查看目前提交作业的信息
2. salloc :抢占计算资源命令
salloc -p wzhdtest -N 1 -n 8 --gres=dcu:1
(部分地区有绑卡机制,比如乌镇,核数和卡数的比=8:1)
注:
(1) salloc之后如果需要使用dcu ,则需要ssh到相应的计算节点,比如我这里的计算节点是b03r4n14,我就需要ssh b03r4n14
(2) 使用salloc方式时需要保持E-Shell页面常开启,否则此终端对应的作业将出现结束。若有长时间或者后台计算需求,可使用sbatch方式提交任务。
(3) 如果出现以下bug ,说明你使用的队列已经过期了,需要联系相关人员重新申请队列。
salloc: error: Job submit/allocate failed: Invalid account or account/partition combination specified
3. hy-smi :查看DCU利用率
(需要先用ssh 登录到计算节点才能查到)
常见问题
1. 如何用 pip 安装工具包
如果想用pip安装相关的工具包,需要注意安装到对应的环境。我这里需要先 source pytorch_env.sh ,然后直接用 pip install xxx 即可。
我pytorch_env.sh 脚本文件中的内容如下:
source ~/.bashrc
conda activate pytorch_1.10
module switch compiler/dtk/22.04.2
LD_LIBRARY_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/lib:/public/software/apps/DeepLearning/PyTorch_Lib/lmdb-0.9.24-build/lib:/public/software/apps/DeepLearning/PyTorch_Lib/opencv-2.4.13.6-build/lib:/public/software/apps/DeepLearning/PyTorch_Lib/openblas-0.3.7-build/lib:$LD_LIBRARY_PATH
2. pip 安装失败
如果你pip安装失败了,可以考虑三方面原因:
a. 各安装包之间的版本不兼容,可以考虑用pip uninstall 卸载再重新安装相兼容的版本。我曾遇到setuptools 的版本太高(高于60),导致tensorboard安装包安装不上。我将setuptools版本换成56.1.0之后就可以安装成功了。
b. 如果你明明pip install 了相关的安装包,但是运行程序时,却出现找不到module的错误,这个时候你可能就是将安装包安错了环境。比如我使用的是pytorch框架,那么我需要在相应的环境下(pytorch_1.10)安装,而不是(base) 环境下。
c. 如果你用salloc抢占资源,然后又用ssh登录到了相应的计算节点,这时你用pip install 某个安装包失败了。具体报错如下图所示:
解决方法是,可以先logout 计算节点,即退出计算结点,回到环境(pytorch_1.10)下再pip install 就可以了。是个很细节的错误,大家在安装的时候一定注意!!
3. 如何直接杀死进程
如果你的进程中有错误 ,想直接杀死,那么可以用以下命令,它会杀死该用户名下的所有进程
ps -ef | grep 用户名 | awk '{print $2 }'| xargs kill -9
例 : ps -ef | grep acctrm9ew5 | awk '{print $2 }'| xargs kill -9
出现上图片说明进程已杀死,这个时候只需重新打开客户端登录即可。
注:也可以尝试用 下述命令杀死自己用户名下的所有进程!
killall -u 自己的用户名
4. 如何用脚本提交作业?(sbatch)
为了避免作业经常被意外中断,训练了一天的模型突然中断真的好气。。所以我选择用sbatch的方式提交作业。也更推荐大家用这种方式。具体步骤如下:
(1) 打开test.slurm 文件(初次打开是一个新文件)
vim test.slurm
(2) 在test.slurm文件中写入内容
#!/bin/bash
#SBATCH -p wzhdtest
#SBATCH -N 1
#SBATCH --ntasks-per-node=8
#SBATCH --gres=dcu:1
#SBATCH -J ceshi
#SBATCH -o %x.o%j
#SBATCH -e %x.e%j
#添加环境变量
source ~/.bashrc
conda activate pytorch_1.10
module switch compiler/dtk/22.04.2
LD_LIBRARY_PATH=/public/software/apps/DeepLearning/PyTorch_Lib/lib:/public/software/apps/DeepLearning/PyTorch_Lib/lmdb-0.9.24-build/lib:/public/software/apps/DeepLearning/PyTorch_Lib/opencv-2.4.13.6-build/lib:/public/software/apps/DeepLearning/PyTorch_Lib/openblas-0.3.7-build/lib:$LD_LIBRARY_PATH
#运行程序
python3 main.py
我相应文件中的内容如下:
(3) 内容写好后就可以运行了
sbatch test.slurm
(4) 用 squeue 查看作业运行情况
上图中的 R 代表运行, b03r4n14 是计算节点。
(5) 登录计算节点查看DCU使用情况
注:sbatch 时作业能正常运行,但是输出日志文件中没有内容。这个时候需要考虑的是 多加一个参数-u 强制打印。具体如下:
后续遇到问题会继续更新,请多多关注!! 感谢~
版权归原作者 Toady 元气满满 所有, 如有侵权,请联系我们删除。