Configure FairShare via the policy.tcl File
The FairShare Groups policy configuration described in this section have been deprecated. It is strongly advised to not use the described in this section. The features described in this section are currently available, but may soon become unavailable and/or unsupported.
Refer to vovfsgroup for the current implementation.
To create new groups, define them in the policy.tcl file in the
PROJECT.swd directory using vtk_group_set.
This procedure is only valid in the policy.tcl
file.
# Example of definition of some groups in the policy.tcl file.
# Reminder: this is considered obsolete. Use FSGROUP instead.
vtk_group_set /time/med/sanjose -weight 200
vtk_group_set /time/med/sanjose/library -weight 40
vtk_group_set /time/med/sanjose/systems -weight 60
vtk_group_set /time/med/sanjose/systems/qa -users { john mary }
vtk_group_set /time/med/sanjose/systems/dev -users { bob suresh }
vtk_group_set /time/med/sanjose/systems/prot -unixgroup acxx
If a group is defined without a leading /, the group becomes part of the /time group by default.
Set Up FairShare
- The policy.tcl file defines the FairShare weight for each fsgroup. The script uses the
following Tcl procedures:
vtk_fairshare_set -window <timeSpec>
Sets the value of the keyref window for the top group.
vtk_group_set <group_name> [-weight w] [-users userlist] [-useasdefault] [-max N] [-map RESEXPRESSION] [-owner USER]
The default weight for a group is 100. The default user list is empty.
-
Example:
vtk_fairshare_set -window 4h vtk_group_set /queue/alpha -weight 500 -users {mary frank} vtk_group_set /queue/gamma -weight 800 -users {frank john alan} vtk_group_set /queue/gamma -weight 800 -unixgroup acx
- Each fsgroup with queued jobs is assigned a target share proportional to the FairShare weight.
- The fsgroups are ranked based on how far they are from the target share taking
into account:
- The number of jobs currently running for each fsgroup;
- The total run-time logged by each fsgroup over the FairShare window.
- The farther a fsgroup is from the target, the lower its rank and the earlier their jobs are checked for scheduling.
- As soon as a slot becomes available, the scheduler searches for the next job to dispatch starting from the user with lowest rank, and then increasing the rank until a job to dispatch is found.