如何从作业 ID 获取传递给 SLURM 作业的命令行参数?

How can I get command-line arguments passed to a SLURM job from its job ID?

假设我是 运行 一个带有命令行参数的 SLURM 作业,比方说 srun sleep 1000squeuescontrol show job ID 显示执行的命令 sleep,但不显示其参数 1000.

我的问题是,如何从作业 ID 获取传递给 SLURM 作业命令(本例中的1000)的参数?

我正在使用 slurm 17.02.3。

由于您的命令的参数在 sinfo 信息中不可用,您可以尝试使用以下过程检索该数据:

  1. 将命令名称及其参数导出到环境变量:

    export JOBNAME="sleep 1000"

  2. 启动定义作业名称和可执行文件的作业:

    srun -J"$JOBNAME" $JOBNAME &

  3. sinfo 和 select 适当的数据中检索该工作的信息,在您的情况下:

    scontrol show jobid=your_job_id | grep JobName | cut -f3 -d" "