pyslurm:Slurm的python接口
目录
2018 年版本的 slurm-client 使用 squeue -o %all
获取 slurm 中的作业信息,基本可以获取所需要的信息,但无法获取作业的标准输出和标准错误输出文件路径。
squeue 的 -O
选项可以显示更多的信息,但必须指定每个栏目的宽度,不适合业务环境中路径长度变化较多的情况。
今年尝试使用 slurm 的 python 接口 pyslurm 解决这个问题。
安装
pyslurm 需要 cython 包和 slurm 库,使用 pip 安装 cython,使用源码安装 pyslurm。 安装 pyslurm 时,可以指定 slurm 库的位置。
python setup.py build \
--slurm-lib=PATH_TO_SLURM_LIB \
--slurm-inc=PATH_TO_SLURM_INC
使用
示例代码:
import pyslurm
job_object = pyslurm.job()
job_dict = job_object.get()
第二行返回一个 pyslurm.Job
对象,可以使用 get()
获取所有作业的信息,返回字典格式。
使用 std_out
就可以获取标准输出文件路径。