The most important part of License Scheduler is license token distribution. The license distribution policy determines how license tokens are shared among projects or clusters. Whenever there is competition, the configured share assignment determines the portion of license tokens each project or cluster is entitled to.
We refer to both licenses and license tokens because Platform License Scheduler does not control licenses directly. Instead it controls the dispatch of jobs requiring licenses submitted through LSF or taskman by tracking license tokens.
License shares assigned in the distribution policy determine what portion of total licenses a project (in project mode) or cluster (in cluster mode) receives. Each project or cluster able to use a license featurte must have a share of the license feature in the service domain.
The formula for converting a number of shares to a number of licenses for any given license feature is:
(shares assigned to project or cluster)______________________________ x (total number of licenses)(sum of all shares assigned)
The number of shares assigned to a license project or cluster is only meaningful when you compare it to the number assigned to other projects or clusters, or to the total number of shares.
When there are no jobs in the system, each project or cluster is assigned license tokens based on share assignments.
A portion of the total licenses is allocated to the cluster based on the configured share. The amount is static, and does not depend on the workload in the system.
Shares of the total licenses are assigned to each cluster, along with a buffer size. The configured shares set the number of licenses each cluster receives initially, but this is adjusted regularly based on demand from the cluster.
License distribution changes whenever a cluster requests an allocation update, by default every 15 seconds. In each update the allocation can increase by as much as the buffer size. There is no restriction on decreasing cluster allocation.
When dynamic license distribution is used in cluster mode, minimum and maximum allocation values can be configured for each cluster. The minimum allocation is like the number of non-shared licenses for project mode, as this number of tokens is reserved for the exclusive use of the cluster.
If the minimum value configured exceeds the share assignment for the cluster, only the assigned share is reserved for the cluster.
Cluster shares take precedence over minimum allocations configured. If the minimum allocation exceeds the cluster's share of the total tokens, a cluster's allocation as given by bld may be less than the configured minimum allocation.
Guaranteed shares of licenses are assigned to projects within a cluster using LSF guarantee-type SLAs. Optionally, sharing of guaranteed licenses not in use can be configured.
Guarantees are like ownership for cluster mode, and can be used with both static and dynamic distribution policies.
Configure shares for all license features in cluster mode. Static license distribution is the basic license distribution policy, and is built on by adding additional configuration.
Shares of the total licenses are assigned to each license project.
Unused licenses are shared wherever there is demand, however, when demand exceeds the number of licenses, share assignments are followed. Jobs are not preempted to redistribute licenses; instead licenses are redistributed when jobs finish running.
Shares of the total licenses are assigned to each license project. Owned shares of licenses are also assigned.
Unused licenses are shared wherever there is demand, however, when demand exceeds the number of licenses the owned share is reclaimed using premption.
Preemption occurs only while the specified number of owned licenses are not yet in use, and no free licenses are available. Once all owned licenses are being used, License Scheduler waits for licenses to become free (instead of using preemption) and then distributes additional tokens until the share is reached.
Jobs that are preempted by Platform License Scheduler are automatically resumed once licenses become available.
By default, LSF releases the job slot of a suspended job when License Scheduler preempts the license from the job.
Active ownership allows ownership to automatically adjust based on project activity. Ownership is expressed as a percent of the total ownership for active projects. The actual ownership for each project decreases as more projects become active. Set percentage ownership values to total more than 100% to benefit from active ownership.
Some licenses are designated as non-shared, and are reserved for exclusive use instead of being shared when not in use.
The number of non-shared licenses is contained by the number of owned licenses, but this number is not included in share calculations for the project. To designate a certain number of licenses as non-shared, add the non-shared number to both the owned and the non-shared values.
Configure fairshare for all license features in project mode. Fairshare is the basic license distribution policy, and is built on by adding additional configuration.
The basic fairshare configuration may meet your needs without configuring additional distribution policies if: