From 10361be07528896b9744dfb3a919d6b5fe17ac08 Mon Sep 17 00:00:00 2001 From: ahmedk <karim.ahmed@xfel.eu> Date: Tue, 30 Jul 2024 09:52:44 +0200 Subject: [PATCH] feat(xfel-calibrate): expose mincpus argument as --slurm-mincpus --- src/xfel_calibrate/calibrate.py | 13 ++++++++++++- src/xfel_calibrate/nb_args.py | 4 ++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/xfel_calibrate/calibrate.py b/src/xfel_calibrate/calibrate.py index fa14605bf..103258b3f 100755 --- a/src/xfel_calibrate/calibrate.py +++ b/src/xfel_calibrate/calibrate.py @@ -263,11 +263,18 @@ def run_finalize( class SlurmOptions: def __init__( - self, job_name=None, nice=None, mem=None, partition=None, reservation=None, + self, + job_name=None, + nice=None, + mem=None, + mincpus=None, + partition=None, + reservation=None, ): self.job_name = job_name or 'xfel_calibrate' self.nice = nice self.mem = mem + self.mincpus = mincpus self.partition = partition self.reservation = reservation @@ -302,6 +309,9 @@ class SlurmOptions: if self.mem: launcher_slurm.append(f"--mem={self.mem}G") + if self.mincpus: + launcher_slurm.append(f"--mincpus={self.mincpus}") + deps = [] if after_ok: deps.append("afterok:" + ":".join(str(j) for j in after_ok)) @@ -833,6 +843,7 @@ def run(argv=None): job_name=args.get('slurm_name', 'xfel_calibrate'), nice=args['slurm_scheduling'], mem=args['slurm_mem'], + mincpus=args['slurm_mincpus'], reservation=args['reservation'], partition=args['slurm_partition'], )) diff --git a/src/xfel_calibrate/nb_args.py b/src/xfel_calibrate/nb_args.py index 93c6eba71..45833dccf 100644 --- a/src/xfel_calibrate/nb_args.py +++ b/src/xfel_calibrate/nb_args.py @@ -79,6 +79,10 @@ def make_initial_parser(**kwargs): parser.add_argument('--vector-figs', action="store_true", default=False, help="Use vector graphics for figures in the report.") + parser.add_argument('--slurm-mincpus', type=int, default=1, + help='Requested minimum number of ' + 'logical cpus/processors per node') + parser.add_argument('--slurm-mem', type=int, default=500, help="Requested node RAM in GB") -- GitLab