Platform LSF Administration Guide Version 6.2
What’s New in Platform LSF Version 6.1
Administering Platform LSF
26
◆
Slot-based parallel job scheduling—by default, you cannot specify more slots than
the system's eligible number of processors. Since you can define more than one slot
for each CPU, slot-based job scheduling allows you to submit parallel jobs based on
the number of available slots rather than processors.
For example,
hostA has 2 processors, but has 4 slots defined:
% lshosts
HOST_NAME type model cpuf ncpus maxmem maxswp server RESOURCES
hostA SOL64 Ultra5F 18.6 2 128M 594M Yes ()
However, you cannot submit a parallel job that requests more than 2 processors
% bsub -n 4 myjob
Too many processors requested. Job not submitted.
But you can submit two jobs requesting two slots each and both of them can run at
the same time.
When PARALLEL_SCHED_BY_SLOT=Y is defined in
lsb.params, parallel
jobs can request the number of slots they require.
◆
Resource reservation “OR” support in the rusage string—use the OR operator
(
||) in resource requirement strings to specify multiple resource reservations and
evaluate reservations in the specified order until one is satisfied. This is useful when
a job can run with more than one
rusage string and you want LSF to select the
most appropriate resource reservation to meet the requirements for the job.
For example, you are running an application version 1.5 as a resource called
app_lic_v15 and the same application version 2.0.1 as a resource called
app_lic_v201. The license key for version 2.0.1 is backward compatible with
version 1.5, but the license key for version 1.5 will not work with 2.0.1.
Job-level resource requirement specifications that use the || operator take
precedence over any queue-level resource requirement specifications.
If you can only run your job using one version of the application, submit the job
without specifying an alternate resource. To submit a job that will only use
app_lic_v201:
% bsub -R "rusage[app_lic_v201=1]" myjob
If you can run your job using either version of the application, try to reserve version
2.0.1 of the application. If it is not available, you can use version 1.5. To submit a
job that will try
app_lic_v201 before trying app_lic_v15:
% bsub -R "rusage[app_lic_v201=1||app_lic_v15=1]" myjob
If different versions of an application require different system resources, you can
specify other resources in your rusage strings. To submit a job that will use 20 MB
of memory for
app_lic_v15 or 20 MB of memory and 50 MB of swap space for
app_lic_v201:
% bsub -R "rusage[mem=20:app_lic_v15=1||mem=20:swp=50:app_lic_v201=1]" myjob