additional capabilities at the job level and queue level by allowing the inclusion of several SLURM options in the LSF command line. Refer to Section 7.4.2.

7.4.2 LSF-SLURM External Scheduler

An important option that can be included in submitting parallel jobs with LSF is the external scheduler option: The external scheduler option provides application—specific external scheduling options for jobs capabilities and enables inclusion of several SLURM options in the LSF command line. For example, this option could be used to submit a job to run one task per node when you have a resource-intensive job which needs to have sole access to the full resources of a node. Or, if your job needed particular resources found only on a specific set of nodes, this option could be used to submit a job to those specific nodes. There are several options available for use with the external scheduler. Refer to the list in this section.

The format for the external scheduler is:

-ext"SLURM[slurm-arguments]"

slurm-argumentscan consist of one or more of the following srun options, separated by semicolons:

SLURM Arguments

Function

nodes=min[-max]

Minimum and maximum number of nodes allocated to job.

 

The job allocation will at least contain the minimum number

 

of nodes.

mincpus=<ncpus>

Specify minimum number of CPUs per node. Default value is 1.

mem=<value>

Specify a minimum amount of real memory of each node.

tmp=<value>

Specify a minimum amount of temporary disk space of each

 

node.

constraint=<value>

Specify a list of constraints. The list may include multiple

 

features separated by “&” or “”. “&” represents AND-ed,

 

represents OR-ed.

nodelist=<list of nodes>

Request a specific list of nodes. The job will at least contain

 

these nodes. The list may be specified as a comma-separated

 

list of nodes, or a range of nodes.

exclude=<list of nodes>

Requests that a specific list of hosts not be included in

 

resource allocated to this job. The list may be specified as a

 

comma-separated list of nodes, or a range of nodes.

contiguous=yes

Request a mandatory contiguous range of nodes.

 

 

When this option is added to an LSF command line, it looks like the following:

bsub -nnum-procs -ext"SLURM[slurm-arguments]"[bsub-options] [srun [srun-options]]jobname [job-options]

Refer to the LSF bsub command manpage for additional information about using the external scheduler (-ext) option. See the srun manpage for more details about the above options and their arguments.

Consider an HP XC system configuration where lsfhost.localdomain is the LSF execution host and nodes n[1-10]are compute nodes in the lsf partition. All nodes contain two processors, providing 20 processors for use by LSF jobs.

Example 7-2shows one way to submit a parallel job to run on a specific node or nodes.

Using LSF 7-11