25.06.2015 Views

Administering Platform LSF - SAS

Administering Platform LSF - SAS

Administering Platform LSF - SAS

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 17<br />

Reserving Resources<br />

Using memory reservation for pending jobs<br />

Use the rusage string in the -R option to bsub or the RES_REQ parameter in<br />

lsb.queues to specify the amount of memory required for the job. Submit the<br />

job to a queue with RESOURCE_RESERVE configured.<br />

See “Examples” on page 274 for examples of jobs that use memory reservation.<br />

How memory reservation for pending jobs works<br />

Amount of<br />

memory reserved<br />

The amount of memory reserved is based on the currently available memory<br />

when the job is pending. For example, if LIM reports that a host has 300 MB<br />

of memory available, the job submitted by the following command:<br />

% bsub -R "rusage[mem=400]" -q reservation my_job<br />

will be pending and reserve the 300 MB of available memory. As other jobs<br />

finish, the memory that becomes available is added to the reserved memory<br />

until 400 MB accumulates, and the job starts.<br />

No memory is reserved if no job slots are available for the job because the job<br />

could not run anyway, so reserving memory would waste the resource.<br />

Only memory is accumulated while the job is pending; other resources<br />

specified on the rusage string are only reserved when the job is running.<br />

Duration and decay have no effect on memory reservation while the job is<br />

pending.<br />

How long memory is reserved (MAX_RESERVE_TIME)<br />

Reserved memory expires at the end of the time period represented by the<br />

number of dispatch cycles specified by the value of MAX_RESERVE_TIME set<br />

on the RESOURCE_RESERVE parameter. If a job has not accumulated enough<br />

memory to start by the time MAX_RESERVE_TIME expires, it releases all its<br />

reserved memory so that other pending jobs can run. After the reservation time<br />

expires, the job cannot reserve slots or memory for one scheduling session, so<br />

other jobs have a chance to be dispatched. After one scheduling session, the<br />

job can reserve available resources again for another period specified by<br />

MAX_RESERVE_TIME.<br />

<strong>Administering</strong> <strong>Platform</strong> <strong>LSF</strong> 273

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!