User's Manual

Table Of Contents
Hierarchical PRM groups
In addition to the flat divisions of resources presented so far, you can nest FSS PRM groups inside
one another—forming a hierarchy of groups similar to a directory structure. Hierarchies allow you
to divide groups and allocate resources more intuitively than you can with flat allocations. Note
that PSET PRM groups cannot be part of a hierarchy.
When forming a hierarchy, any group that contains other groups is known as a parent group.
Naturally, the groups it contains are known as child groups. All the child groups of the same parent
group are called sibling groups. Any group that does not have child groups is called a leaf group.
There is also an implied parent group of all groups where the implied parent has 100% of the
resource to distribute.
Figure 5 (page 20) illustrates a configuration with hierarchical groups, indicating the parent, child,
sibling, and leaf PRM groups.
Figure 5 Parent, child, sibling, and leaf PRM groups
In Figure 2-1, parent groups are the Development and Development/Compilers groups.
There is also an implied parent group to the Finance, Development, and OTHERS groups. The
Development group has the children Development/Compilers, Development/Debuggers,
and Development/Profilers. The Compilers group is broken down further with two children
of its own: Development/Compilers/C and Development/Compilers/Fortran. These
two groups are also known as sibling groups. Leaf groups are groups that have no children. In
the illustration above, leaf groups include the Finance, Development/Debuggers, and OTHERS
groups, among others.
You specify resource shares for each group in a hierarchy. If a group has child groups, the parent
group’s resource shares are distributed to the children based on the shares they are assigned. If
a group has no children, it uses the shares. More explicitly, the percentage that a group’s shares
equate to is determined as follows:
1. Start at the top level in the hierarchy. Consider these groups as sibling groups with an implied
parent. This implied parent has 100% of the CPU resource to distribute. (Shares work the
same way for CPU and private memory resources.)
2. Add all the CPU shares of the first level of sibling groups together into a variable, TOTAL.
3. Each sibling group receives a percentage of CPU resources equal to its number of shares
divided by TOTAL.
20 Understanding how PRM manages resources