LSF Version 7.3 - Administering Platform LSF
Usage String
290 Administering Platform LSF
The resulting requirement for the job is
rusage[mem=100:lic=1]
where mem=100 specified by the job overrides mem=200 specified by the queue.
However,
lic=1 from queue is kept, since job does not specify it.
For the following queue-level RES_REQ (decay and duration defined):
RES_REQ = rusage[mem=200:duration=20:decay=1] ...
and job submission (no decay or duration):
bsub -R "rusage[mem=100]" ...
The resulting requirement for the job is:
rusage[mem=100:duration=20:decay=1]
Queue-level duration and decay are merged with the job-level specification, and
mem=100 for the job overrides mem=200 specified by the queue. However,
duration=20 and decay=1 from queue are kept, since job does not specify them.
rusage in application profiles
See Chapter 21, “Working with Application Profiles” for information about how
resource requirements in application profiles are resolved with queue-level and
job-level resource requirements.
Specifying multiple -R options
bsub accepts multiple -R options for the rusage section. You can specify multiple
resource requirement strings instead of using the && operator. For example:
bsub -R "rusage[mem=100]" -R "rusage[tmp=50:duration=60]"
LSF merges the multiple -R options into one string and dispatches the job if all of
the resource requirements can be met. By allowing multiple resource requirement
strings and automatically merging them into one string, LSF simplifies the use of
multiple layers of wrapper scripts.
Comma-separated multiple resource requirements within one rusage string is
supported. For example:
bsub -R "rusage[mem=20, license=1:duration=2]"
-R "rusage[app_lic_v201=1||app_lic_v15=1]" myjob
A given load index cannot appear more than once in the resource usage string.
Examples ◆ The following job requests 20 MB memory for the duration of the job, and 1
license to be reserved for 2 minutes:
bsub -R "rusage[mem=20, license=1:duration=2]" myjob
◆ A queue with the same resource requirements could specify:
RES_REQ = rusage[mem=20, license=1:duration=2]
◆ The following job requests 20 MB of memory and 50 MB of swap space for 1
hour, and 1 license to be reserved for 2 minutes:
bsub -R "rusage[mem=20:swp=50:duration=1h, license=1:duration=2]" myjob
◆ The following job requests 50 MB of swap space, linearly decreasing the
amount reserved over a duration of 2 hours, and requests 1 license to be
reserved for 2 minutes:
bsub -R "rusage[swp=20:duration=2h:decay=1, license=1:duration=2]" myjob