Skip to content

Commit 7cbd4b8

Browse files
authored
Set -N=1/--nodes=1 for SLURM workers (#680)
The SLURM worker hardcodes --ntasks=1/-n=1, but on the SLURM cluster that I have experience with (SDSC Expanse), you also have to set -N=1/--nodes=1.
1 parent d43307e commit 7cbd4b8

2 files changed

Lines changed: 6 additions & 1 deletion

File tree

dask_jobqueue/slurm.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,9 +81,10 @@ def __init__(
8181
if account is not None:
8282
header_lines.append("#SBATCH -A %s" % account)
8383

84-
# Init resources, always 1 task,
84+
# Init resources, always 1 task, 1 node,
8585
# and then number of cpu is processes * threads if not set
8686
header_lines.append("#SBATCH -n 1")
87+
header_lines.append("#SBATCH -N 1")
8788
header_lines.append(
8889
"#SBATCH --cpus-per-task=%d" % (job_cpu or self.worker_cores)
8990
)

dask_jobqueue/tests/test_slurm.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ def test_header():
3535
assert "#SBATCH" in cluster.job_header
3636
assert "#SBATCH -J dask-worker" in cluster.job_header
3737
assert "#SBATCH -n 1" in cluster.job_header
38+
assert "#SBATCH -N 1" in cluster.job_header
3839
assert "#SBATCH --cpus-per-task=8" in cluster.job_header
3940
assert "#SBATCH --mem=27G" in cluster.job_header
4041
assert "#SBATCH -t 00:02:00" in cluster.job_header
@@ -61,6 +62,7 @@ def test_header():
6162
assert "#SBATCH" in cluster.job_header
6263
assert "#SBATCH -J " in cluster.job_header
6364
assert "#SBATCH -n 1" in cluster.job_header
65+
assert "#SBATCH -N 1" in cluster.job_header
6466
assert "#SBATCH -t " in cluster.job_header
6567
assert "#SBATCH -p" not in cluster.job_header
6668
# assert "#SBATCH -A" not in cluster.job_header
@@ -76,6 +78,7 @@ def test_job_script():
7678
formatted_bytes = format_bytes(parse_bytes("7GB")).replace(" ", "")
7779
assert f"--memory-limit {formatted_bytes}" in job_script
7880
assert "#SBATCH -n 1" in job_script
81+
assert "#SBATCH -N 1" in cluster.job_header
7982
assert "#SBATCH --cpus-per-task=8" in job_script
8083
assert "#SBATCH --mem=27G" in job_script
8184
assert "#SBATCH -t 00:02:00" in job_script
@@ -111,6 +114,7 @@ def test_job_script():
111114
assert "#SBATCH" in job_script
112115
assert "#SBATCH -J dask-worker" in job_script
113116
assert "#SBATCH -n 1" in job_script
117+
assert "#SBATCH -N 1" in cluster.job_header
114118
assert "#SBATCH --cpus-per-task=8" in job_script
115119
assert "#SBATCH --mem=27G" in job_script
116120
assert "#SBATCH -t 00:02:00" in job_script

0 commit comments

Comments
 (0)