{section: Group Quota Design} ================= {subsection: Motivating Scenarios} ??? What's some good use cases here What didn't the old code do that the new code can? Some questions we'd like customer use cases to address: *: What is the semantic of accounting group quota? *:: That is: what does a group quota regulate/limit? *:: What is the 'unit' associated with a quota? *:: http://erikerlandson.github.com/blog/2012/11/15/rethinking-the-semantics-of-group-quotas-and-slot-weights-claim-capacity-model/ *: What does it mean for groups to be in a hierarchy? *:: How does a parent's quota relate to child quotas? *:: How do 'sibling' groups relate to each other, their parent, and their children (if any)? {subsection: High Level Design and Definitions} The HGQ design is intended to allow administrator to restrict the aggregrate number of slots running jobs submitted by groups of users. These sets of users are organized into hierarchical groups, with the "none" group being the name of the root. The admin is expected to assign a quota to every leaf and interior node in the tree, except for the root. The assigned quotas can be absolute numbers or a floating point number from 0 to 1, which represents a percentage of the immediate parent. If absolute, it represents a weighted number of slots, where the each slot is multiplied by a configurable weight, which defaults to number of cores. All groups named must be predeclared in the config file. Note the quota is independent of user priority. {subsection: Definintions} Can we get crisp definitions of each of the fields in the GroupEntry structure? Here is some annotation from the meeting on fields that didn't already have in-code doc: {code} // these are set from configuration string name; double config_quota; // Could be static (>=1) or dynamic (0