Sdf#

class lsst.ctrl.bps.parsl.sites.slac.Sdf(*args, **kwargs)#

Bases: Slurm

Slurm-based configuration for running jobs on SLAC’s Shared Data Facility cluster using the rubin partition.

The following BPS configuration parameters are recognised, overriding the defaults:

  • nodes (int): number of nodes for each Slurm job.

  • cores_per_node (int): number of cores per node for each Slurm job.

  • walltime (str): time limit for each Slurm job.

  • mem_per_node (int): memory per node (GB) for each Slurm job.

  • max_blocks (int): maximum number of blocks (Slurm jobs) to use.

  • singleton (bool): allow only one job to run at a time; by default True.

Methods Summary

get_executors()

Get a list of executors to be used in processing.

select_executor(job)

Get the label of the executor to use to execute a job.

Methods Documentation

get_executors() list[ParslExecutor]#

Get a list of executors to be used in processing.

Each executor should have a unique label.

We have one Slurm job running at a time (singleton) while another saves a spot in line (max_blocks=2). We hope that this allow us to run almost continually until the workflow is done.

select_executor(job: ParslJob) str#

Get the label of the executor to use to execute a job.

Parameters#

jobParslJob

Job to be executed.

Returns#

labelstr

Label of executor to use to execute job.