如何以编程方式检查 SLURM 环境变量?

Ist*_*har 5 bash shell-script environment-variables slurm

如何以编程方式访问 SLURM 环境变量,例如MaxArraySizeMaxJobCount?我想将我的作业数组划分为允许的最大大小的块。可以使用 SLURM 的任何命令查询此信息吗?到目前为止,我还没有在网上找到这方面的相关信息。slurm.conf在每台机器上查找并从中提取相关行并不是一个非常可靠的解决方案。

Kus*_*nda 9

$ scontrol show config | grep -E 'MaxArraySize|MaxJobCount'
MaxArraySize            = 1001
MaxJobCount             = 1000000
Run Code Online (Sandbox Code Playgroud)

这足以满足您想要做的事情吗?

仅获取例如 MaxArraySize的

$ scontrol show config | sed -n '/^MaxArraySize/s/.*= *//p'
Run Code Online (Sandbox Code Playgroud)

作为外壳函数:

slurm_conf_value () {
    scontrol show config | sed -n "/^$1/s/.*= *//p"
}

MaxArraySize="$(slurm_conf_value 'MaxArraySize')"
Run Code Online (Sandbox Code Playgroud)

这些不是 Unix 意义上的环境变量,而是 Slurm 中的配置设置。不过,它们是用于配置“Slurm 环境”的变量。