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 14<br />

Fairshare Scheduling<br />

Accumulated slots<br />

in use<br />

As queues run the jobs allocated to them, <strong>LSF</strong> accumulates the slots each queue<br />

has used and decays this value over time, so that each queue is not allocated<br />

more slots than it deserves, and other queues in the pool have a chance to run<br />

their share of jobs.<br />

Interaction with other scheduling policies<br />

Examples<br />

◆<br />

◆<br />

◆<br />

Queues participating in a queue-based fairshare pool cannot be<br />

preemptive or preemptable.<br />

You should not configure slot reservation (SLOT_RESERVE) in queues that<br />

use queue-based fairshare.<br />

Cross-queue fairshare (FAIRSHARE_QUEUES) can undo the dispatching<br />

decisions of queue-based fairshare. Cross-queue fairshare queues should<br />

not be part of a queue-based fairshare pool.<br />

◆ Three queues using two hosts each with maximum job slot limit of 6 for a<br />

total of 12 slots to be allocated:<br />

❖ queue1 shares 50% of slots to be allocated = 2 * 6 * 0.5 = 6 slots<br />

❖ queue2 shares 30% of slots to be allocated = 2 * 6 * 0.3 = 3.6 -> 4 slots<br />

❖ queue3 shares 20% of slots to be allocated = 2 * 6 * 0.2 = 2.4 -> 3 slots;<br />

however, since the total cannot be more than 12, queue3 is actually<br />

allocated only 2 slots.<br />

◆ Four queues using two hosts each with maximum job slot limit of 6 for a<br />

total of 12 slots; queue4 does not belong to any pool.<br />

❖ queue1 shares 50% of slots to be allocated = 2 * 6 * 0.5 = 6<br />

❖ queue2 shares 30% of slots to be allocated = 2 * 6 * 0.3 = 3.6 -> 4<br />

❖ queue3 shares 20% of slots to be allocated = 2 * 6 * 0.2 = 2.4 -> 2<br />

❖ queue4 shares no slots with other queues<br />

queue4 causes the total number of slots to be less than the total free and<br />

in use by the queue1, queue2, and queue3 that do belong to the pool. It<br />

is possible that the pool may get all its shares used up by queue4, and jobs<br />

from the pool will remain pending.<br />

◆ queue1, queue2, and queue3 belong to one pool, queue6, queue7, and<br />

queue8 belong to another pool, and queue4 and queue5 do not belong to<br />

any pool. <strong>LSF</strong> orders the queues in the two pools from higher priority<br />

queue to lower priority queue (queue1 is highest and queue8 is lowest):<br />

queue1 -> queue2 -> queue3 -> queue6 -> queue7 -> queue8<br />

If the queue belongs to a pool, jobs are dispatched from the highest priority<br />

queue first. Queues that do not belong to any pool (queue4 and queue5)<br />

are merged into this ordered list according to their priority, but <strong>LSF</strong><br />

dispatches as many jobs from the non-pool queues as it can:<br />

queue1 -> queue2 -> queue3 -> queue4 -> queue5 -> queue6 -> queue7 -> queue8<br />

<strong>Administering</strong> <strong>Platform</strong> <strong>LSF</strong> 219

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

Saved successfully!

Ooh no, something went wrong!