Using and Administering

Step 4: Specify Group Stanzas

LoadLeveler groups are another way of granting control to the system administrator. Although a LoadLeveler group is independent from a UNIX group, you can configure a LoadLeveler group to have the same users as a UNIX group by using the include_users keyword, which is explained in this section.

The information specified in a group stanza defines the characteristics of that group. Group stanzas are optional and take the following format:

Figure 28. Format of a Group Stanza

label: type = group
admin = list
exclude_users = list
include_users = list
maxidle = number
maxjobs = number
maxqueued = number
max_node = number
max_processors = number
priority = number
total_tasks = number

You can specify the following keywords in a group stanza:

admin = list
where list is a blank-delimited list of administrators for this group. These administrators can hold, release, and cancel jobs submitted by users in the group.

exclude_users =list
where list is a blank-delimited list of users that do not belong to the group. Do not specify both a list of included users and a list of excluded users. Only one of these may be used for any group. The default is that no users will be excluded.

include_users =list
where list is a blank-delimited list of users that belong to the group. If provided, this list limits users of that group to those on the list. Do not specify both a list of included users and a list of excluded users. Only one of these can be used for any group. The default is that all users are included.

maxidle = number
where number is the maximum number of idle jobs this group can have in queue. That is, number is the maximum number of jobs which the negotiator will consider for dispatch for this group. Jobs above this maximum are placed in the NotQueued state. This prevents groups from flooding the job queue. If the group stanza does not specify maxidle or if there is no group stanza at all, the maximum number of jobs that can be simultaneously in queue for the group is defined in the default stanza. The default is -1, which means that no limit is placed on the number of jobs that can be simultaneously idle for the group.

For more information, see Controlling the Mix of Idle and Running Jobs.

maxjobs = number
where number is a maximum number of jobs this group can run at any time. If the group stanza does not specify the maxjobs or if there is no group stanza at all, the maximum number of jobs that can be simultaneously run the group is defined in the default stanza. The default is -1, which means that no limit is placed on the number of jobs that can be simultaneously run for the group. Regardless of the limit set to running jobs, there is no limit to the number of jobs that a group can submit.

For more information, see Controlling the Mix of Idle and Running Jobs.

maxqueued = number
where number is the maximum number of jobs allowed in the queue for this group. This prevents groups from flooding the job queue. Jobs above this maximum are placed in the NotQueued state. If no maxqueued is specified in the group stanza, or if there is no group stanza, the maximum number of jobs that can simultaneously be in the queue is defined in the default stanza. The default is -1, which means that no limit is placed on the number of jobs that can simultaneously be in the job queue for that group. Regardless of the limit set to the number of jobs queued, there is no limit to the number of jobs a group can submit.

For more information, see Controlling the Mix of Idle and Running Jobs.

max_node = number
where number specifies the maximum number of nodes a user can request for a parallel job in a job command file using the node keyword. The default is -1, which means there is no limit. The max_node keyword will not affect the use of the min_processors and max_processors keywords in the job command file.

max_processors = number
where number specifies the maximum number of processors a user can request for a parallel job in a job command file using the min_processors and max_processors keywords. The default is -1, which means there is no limit.

priority = number
where number is an integer that specifies the job priority for jobs associated with this group. The higher priority numbers result in a better job dispatch order. If the group stanza does not specify a priority or if there is no priority at all, the priority is defined in the default group stanza. The default priority is 0. The number specified for priority is referenced as GroupSysprio in the configuration file. GroupSysprio can be used in the assignment of job priorities. If the variable GroupSysprio does not appear in the SYSPRIO expression in the configuration file, the priority numbers for group specified in the administration file have no effect. See Step 6: Prioritize the Queue Maintained by the Negotiator for more information about the GroupSysprio keyword.

total_tasks = number
where number specifies the maximum number of tasks a user specifying this group can request for a parallel job in a job command file using the total_tasks keyword. The default is -1, which means there is no limit.

Examples of Group Stanzas

Example 1

In this example, the group name is department_a. The jobs issued by users belonging to this group will have a priority of 80. There are three members in this group.

# Define group stanzas
department_a:  type = group
priority = 80
include_users = susann holly fran

Example 2

In this example, the group called great_lakes has five members and these user's jobs have a priority of 100:

# Define group stanzas
great_lakes:  type = group
priority = 100
include_users = huron ontario michigan erie superior


[ Top of Page | Previous Page | Next Page | Table of Contents | Index ]