Platform LSF Administration Guide Version 6.2

Allowing Jobs to Use Reserved Job Slots
Administering Platform LSF
450
Using backfill on memory
If BACKFILL is configured in a queue, and a run limit is specified with -W on bsub or
with RUNLIMIT in the queue, backfill jobs can use the accumulated memory reserved
by the other jobs, as long as the backfill job can finish before the predicted start time of
the jobs with the reservation.
Unlike slot reservation, which only applies to parallel jobs, backfill on memory applies
to sequential and parallel jobs.
The following queue enables both memory reservation and backfill on memory in the
same queue:
Begin Queue
QUEUE_NAME = reservation_backfill
DESCRIPTION = For resource reservation and backfill
PRIORITY = 40
RESOURCE_RESERVE = MAX_RESERVE_TIME[20]
BACKFILL = Y
End Queue
Examples of memory reservation and backfill on memory
lsb.queues
The following queues are defined in lsb.queues:
Begin Queue
QUEUE_NAME = reservation
DESCRIPTION = For resource reservation
PRIORITY=40
RESOURCE_RESERVE = MAX_RESERVE_TIME[20]
End Queue
Begin Queue
QUEUE_NAME = backfill
DESCRIPTION = For backfill scheduling
PRIORITY = 30
BACKFILL = y
End Queue
lsb.params
Per-slot memory reservation is enabled by RESOURCE_RESERVE_PER_SLOT=y in
lsb.params.
Assumptions
Assume one host in the cluster with 10 CPUs and 1 GB of free memory currently
available.
Sequential jobs
Each of the following sequential jobs requires 400 MB of memory. The first three jobs
will run for 300 minutes.
Job 1:
%
bsub -W 300 -R "rusage[mem=400]" -q reservation myjob1
The job will start running, using 400M of memory and one job slot.
Job 2:
Submitting a second job with same requirements will get the same result.
Job 3: