Cross-queue user-based fair share
User-based fair share policies configured at the queue level handle resource contention across multiple queues.
Apply the same fair share policy to several queues
With cross-queue fair share, the same user-based fair share policy can apply to several queues can at the same time. You define the fair share policy in a parent_queue and list child_queues to which the same fair share policy applies; child queues inherit the same fair share policy as your parent queue. For job scheduling purposes, this is equivalent to having one queue with one fair share tree.
In this way, if a user submits jobs to different queues, user priority is calculated by taking into account all the jobs the user has submitted across the defined queues.
To submit jobs to a fair share queue, users must be allowed to use the queue (USERS in lsb.queues) and must have a share assignment (FAIRSHARE in lsb.queues). Even cluster and queue administrators cannot submit jobs to a fair share queue if they do not have a share assignment.
User and queue priority
By default, a user has the same priority across the parent and child queues. If the same user submits several jobs to these queues, user priority is calculated by taking into account all the jobs the user has submitted across the parent-child set.
If DISPATCH_ORDER=QUEUE is set in the parent queue, jobs are dispatched according to queue priorities first, then user priority. This avoids having users with higher fair share priority getting jobs dispatched from low-priority queues.
Jobs from users with lower fair share priorities who have pending jobs in higher priority queues are dispatched before jobs in lower priority queues. Jobs in queues having the same priority are dispatched according to user priority.
Queues that are not part of the ordered cross-queue fair share can have any priority. Their priority can fall within the priority range of cross-queue fair share queues and they can be inserted between two queues using the same fair share tree.