Platform LSF Administration Guide Version 6.2
Understanding Fairshare Scheduling
Administering Platform LSF
276
Understanding Fairshare Scheduling
By default, LSF considers jobs for dispatch in the same order as they appear in the queue
(which is not necessarily the order in which they are submitted to the queue). This is
called first-come, first-served (FCFS) scheduling.
Fairshare scheduling divides the processing power of the LSF cluster among users and
queues to provide fair access to resources. so that no user or queue can monopolize the
resources of the cluster and no queue will be starved
If your cluster has many users competing for limited resources, the FCFS policy might
not be enough. For example, one user could submit many long jobs at once and
monopolize the cluster’s resources for a long time, while other users submit urgent jobs
that must wait in queues until all the first user’s jobs are all done. To prevent this, use
fairshare scheduling to control how resources should be shared by competing users.
Fairshare is not necessarily equal share: you can assign a higher priority to the most
important users. If there are two users competing for resources, you can:
◆
Give all the resources to the most important user
◆
Share the resources so the most important user gets the most resources
◆
Share the resources so that all users have equal importance
Queue-level vs. host partition fairshare
You can configure fairshare at either the queue level or the host level. However, these
types of fairshare scheduling are mutually exclusive. You cannot configure queue-level
fairshare and host partition fairshare in the same cluster.
If you want a user’s priority in one queue to depend on their activity in another queue,
you must use cross-queue fairshare or host-level fairshare.
Fairshare policies
A fairshare policy defines the order in which LSF attempts to place jobs that are in a
queue or a host partition. You can have multiple fairshare policies in a cluster, one for
every different queue or host partition. You can also configure some queues or host
partitions with fairshare scheduling, and leave the rest using FCFS scheduling.
How fairshare scheduling works
Each fairshare policy assigns a fixed number of shares to each user or group. These
shares represent a fraction of the resources that are available in the cluster. The most
important users or groups are the ones with the most shares. Users who have no shares
cannot run jobs in the queue or host partition.
A user’s dynamic priority depends on their share assignment, the dynamic priority
formula, and the resources their jobs have already consumed.
The order of jobs in the queue is secondary. The most important thing is the dynamic
priority of the user who submitted the job. When fairshare scheduling is used, LSF tries
to place the first job in the queue that belongs to the user with the highest dynamic
priority.