LSF Version 7.3 - Using Platform LSF HPC
dcpus scpus
Edit lsf.cluster.
cluster_name
to map the resources to hosts. For
example:
Begin ResourceMap
RESOURCENAME LOCATION
dcpus (4@[hosta]) # total cpus - cpus in static cpusets
scpus (8@[hostc]) # static cpusets
End ResourceMap
❖
For dynamic cpuset resources, the value of the resource should be the number
of free CPUs on the host; that is, the number of CPUs outside of any static
cpusets on the host.
❖
For static cpuset resources, the number of the resource should be the number
of CPUs in the static cpuset.
Edit lsb.params and configure your cpuset resources as preemptable. For
example:
Begin Parameters
...
PREEMPTABLE_RESOURCES = scpus dcpus
End Parameters
Edit lsb.hosts and set MXJ greater than or equal to the total number of CPUs
in static and dynamic cpusets you have configured resources for.
Use the following commands to verify your configuration:
bhosts -s
RESOURCE TOTAL RESERVED LOCATION
dcpus 4.0 0.0 hosta
scpus 8.0 0.0 hosta
lshosts -s
RESOURCE VALUE LOCATION
dcpus 4 hosta
scpus 8 hosta
bhosts
HOST_NAME STATUS JL/U MAX NJOBS RUN SSUSP USUSP RSV
hosta ok - - 1 1 0 0 0
To use preemption on systems running IRIX or TRIX versions earlier than 6.5.24, use
cpusetscript as the job suspend action in lsb.queues:
Begin Queue
...
JOB_CONTROLS = SUSPEND[cpusetscript]
...
End Queue
To enable checkpointing before the job is migrated by the cpusetscript, specify the
CHKPNT=chkpnt_dir parameter in the configuration of the preemptable queue.
You must use -R "rusage" in job submission. This allows preemption, and also lets
you control number of jobs running on static and dynamic cpusets or on each static
cpuset.