SLURM 脚本失败,尽管其中的命令有效

问题描述 投票:0回答:2

我目前正在尝试运行我的第一个 SLURM 脚本,但它在 sbatch 和 srun 中立即失败。 我一个接一个地测试了其中的 python 命令,它们都可以独立工作,这让我相信罪魁祸首在于以下几行之一:

#!/bin/bash

#SBATCH --job-name=test_today
#SBATCH -o $HOME/user/%x_%j.txt
#SBATCH -e $HOME/user/%x_%j_error.txt
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1

下面只有已经测试过的Python命令,没有其他。

我感谢任何建议!

亲切的问候

小附录:既没有创建错误文件,也没有创建输出文件,很抱歉没有早点提到这一点!

slurm hpc
2个回答
1
投票

您不能在 Slurm 指令中使用 Bash 变量。在行中

#SBATCH -o $HOME/user/%x_%j.txt
#SBATCH -e $HOME/user/%x_%j_error.txt

$HOME
变量未被解释。

因此,输出和错误文件的创建失败,Slurm 没有文件可写入任何错误消息。因此,您观察到的行为。

$HOME
部分替换为该变量的实际内容,并在提交作业之前确保要写入文件的目录存在。


0
投票

我解决了这个问题,我的脚本是在 HPC 的另一个节点上执行的,由于某种原因,该节点无法访问运行我的脚本所需的文件。

非常感谢大家的回答和评论!

© www.soinside.com 2019 - 2024. All rights reserved.