使用slurm在集群上使用python

Jul 9, 2022 00:00 · 494 words · 1 minute read cluster Author: cenyj

1. Conda 环境初始化(使用普通用户lfpara作为演示)

输入conda init,会自动将conda的初始环境写入~/.bashrc文件,随后source ~/.bashrc进入conda环境(首次登录输入,后续无需输入)。(base表示处于conda环境)

这是图片

如需退出conda环境输入conda deactivate

这是图片

2、Conda 创建python环境(需处于conda环境)

conda create -n test python=3.7(创建名为test的环境,python版本为3.7)

这是图片

所创建的环境位于个人家目录的.conda/envs目录下

这是图片

激活test环境:conda activate test(环境从base变成test)

这是图片

test所独有的bin和lib位于/share/home/lfpara/.conda/envs/test里面(lfpara用户)

这是图片

处于conda环境时可以使用pip安装自身所需要的库

这是图片

退出test环境:conda deactivate

这是图片

3、使用conda环境提交队列脚本

slurm脚本模板为python_job.sh

#!/bin/bash
#SBATCH -N 1
#SBATCH -n 40
#SBATCH -o output
#SBATCH -p sonmi

cd $SLURM_SUBMIT_DIR
export PATH=/share/apps/all/miniconda3/bin:$PATH  > /dev/null
source activate test(修改成需要的环境名)
python t.py

ps: 提交任务时退出conda环境再运行脚本(conda decativate + sbatch script)

这是图片

这是图片