From 3dcc7d989970d0c2f71c6b5401dc619fea29d522 Mon Sep 17 00:00:00 2001 From: iomgaa Date: Fri, 17 Jul 2026 06:13:28 -0400 Subject: [PATCH] fix: use SLURM_SUBMIT_DIR to locate repo root under sbatch --- scripts/train_videomme_slurm.sh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/train_videomme_slurm.sh b/scripts/train_videomme_slurm.sh index 0a773b9..fe48d24 100755 --- a/scripts/train_videomme_slurm.sh +++ b/scripts/train_videomme_slurm.sh @@ -25,7 +25,14 @@ set -euo pipefail -cd "$(dirname "$0")/.." +# sbatch 会把脚本拷贝到 Slurm spool 目录执行,$0 不指向仓库路径——须用 +# SLURM_SUBMIT_DIR(提交命令时所在目录,即仓库根)定位;本地直跑时回退 dirname。 +cd "${SLURM_SUBMIT_DIR:-$(dirname "$0")/..}" +echo "== 工作目录: $(pwd) ==" +[[ -f "config/train_videomme.yaml" ]] || { + echo "错误: 当前目录不是仓库根(找不到 config/train_videomme.yaml)。请在仓库根目录提交 gpu-sbatch。" >&2 + exit 1 +} echo "== Slurm Job: ${SLURM_JOB_ID:-unknown} | CUDA_VISIBLE_DEVICES=${CUDA_VISIBLE_DEVICES:-unset} ==" nvidia-smi || true