Sun N1 Grid Engine 6.1 Administration Guide

Configuring Queues

Queues are containers for different categories of jobs. Queues provide the corresponding resources for concurrent execution of multiple jobs that belong to the same category.

In N1 Grid Engine 6, a queue can be associated with one host or with multiple hosts. Because queues can extend across multiple hosts, they are called cluster queues. Cluster queues enable you to manage a cluster of execution hosts by means of a single cluster queue configuration.

Each host that is associated with a cluster queue receives an instance of that cluster queue, which resides on that host. This guide refers to these instances as queue instances. Within any cluster queue, you can configure each queue instance separately. By configuring individual queue instances, you can manage a heterogeneous cluster of execution hosts by means of a single cluster queue configuration.

When you modify a cluster queue, all of its queue instances are modified simultaneously. Within a single cluster queue, you can specify differences in the configuration of queue instances. Consequently, a typical setup might have only a few cluster queues, and the queue instances controlled by those cluster queues remain largely in the background.


Note –

The distinction between cluster queues and queue instances is important. For example, jobs always run in queue instances, not in cluster queues.


When you configure a cluster queue, you can associate any combination of the following host objects with the cluster queue:


Note –

To enable a queue to operate correctly in a parallel environment, you must associate the queue with the PE. This association enables more control of the resources and lets you assign specific queues to handle the parallel workload.

Use the queue_conf(5) attribute pe_list to identify the suited PEs. Then, to link the PE and queues, use either the QMON utility or the following form of the qconf command:


# qconf -mq <queue_name>

A host group is a group of hosts that can be treated collectively as identical. Host groups enable you to manage multiple hosts by means of a single host group configuration. For more information about host groups, see Configuring Host Groups With QMON.

When you associate individual hosts with a cluster queue, the name of the resulting queue instance on each host combines the cluster queue name with the host name. The cluster queue name and the host name are separated by an @ sign. For example, if you associate the host myexechost with the cluster queue myqueue, the name of the queue instance on myexechost is myqueue@myexechost.

When you associate a host group with a cluster queue, you create what is known as a queue domain. Queue domains enable you to manage groups of queue instances that are part of the same cluster queue and whose assigned hosts are part of the same host group. A queue domain name combines a cluster queue name with a host group name, separated by an @ sign. For example, if you associate the host group myhostgroup with the cluster queue myqueue, the name of the queue domain is myqueue@@myhostgroup.


Note –

Queue domain names always include two @ signs, because all host group names begin with an @ sign..


Jobs do not wait in queue instances. Jobs start running immediately as soon as they are dispatched. The scheduler's list of pending jobs is the only waiting area for jobs.

Configuring queues registers the queue attributes with sge_qmaster. As soon as queues are configured, they are instantly visibly to the whole cluster and to all users on all hosts belonging to the grid engine system.

For further details, see the queue_conf(5) man page.

Configuring Queues With QMON

On the QMON Main Control window, click the Queue Control button. The Cluster Queues dialog box appears.

Dialog box titled Cluster Queues. Shows the Cluster
Queues tab with a list of defined cluster queues. Shows buttons you
can use to manipulate queues.

The Cluster Queues dialog box and its facilities for monitoring and manipulating the status of cluster queues and queue instances are described in Monitoring and Controlling Queues With QMON in Sun N1 Grid Engine 6.1 User’s Guide.

To add a new cluster queue, click Add.

To modify an existing cluster queue, select it from the Cluster Queue list, and then click Modify.

The Clone button enables you to import all parameters of an existing cluster queue. You select the queue you want to clone from a list of existing queues.

When you click Add, the Queue Configuration – Add dialog box appears. When you click Modify, the Modify queue-name dialog box appears. When the Queue Configuration dialog box appears for the first time, it displays the General Configuration tab.

Figure 2–1 Queue Configuration– General Configuration Tab

Dialog box titled Modify <queue-name>. Shows
the General Configuration tab with parameters you can set.

If you are modifying an existing queue, the name of the queue is displayed in the Queue Name field. The hosts where the queue instances reside are displayed in the Hostlist field.

If you are adding a new cluster queue, you must specify a queue name and the names of the hosts on which the queue instances are to reside.

In the Hostlist field, you can specify the names of individual hosts. You can also specify the names of previously defined host groups. Queue instances of this cluster queue will reside on all individual hosts and on all members of the host groups you specify, including all members of any host subgroups. For more information about host groups, see Configuring Host Groups With QMON.

The following 11 tabs for specifying parameter sets are available to define a queue:

To set default parameters for the cluster queue, select @/ in the Attributes for Host/Hostgroup list, and then click the tab containing the parameters that you want to set.

Default parameters are set for all queue instances on all hosts listed under Hostlist. You can override the default parameter values on a host or a host group that you specify. To set override parameters for a host or a host group, first select the name from the Attributes for Host/Hostgroup list. Then click the tab containing the parameters that you want to set. The values of the parameters that you set override the cluster queue's default parameters on the selected host or host group.

To set a host-specific parameter, you must first enable the parameter for configuration. Click the lock icon at the left of the parameter you want to set, and then change the parameter's value.

The Refresh button loads the settings of other objects that were modified while the Queue Configuration dialog box was open.

Click OK to register all queue configuration changes with sge_qmaster and close the dialog box. Click Cancel to close the dialog box without saving your changes.

Configuring General Parameters

To configure general parameters, click the General Configuration tab. The General Configuration tab is shown in Figure 2–1.

You can specify the following parameters:

See the queue_conf(5) man page for detailed information about these parameters.

Configuring Execution Method Parameters

To configure execution method parameters, click the Execution Method tab. The Execution Method tab is shown in the following figure.

Dialog box titled Modify <queue-name>. Shows
the Execution Method tab with parameters you can set. Shows Ok, Cancel,
Refresh, and Help buttons.

You can specify the following parameters:

See the queue_conf(5) man page for detailed information about these parameters.

Configuring the Checkpointing Parameters

To configure the checkpointing parameters, click the Checkpointing tab. The Checkpointing tab is shown in the following figure.

Dialog box titled Modify <queue-name>. Shows
the Checkpointing tab with parameters you can set. Shows Ok, Cancel,
Refresh, and Help buttons.

You can specify the following parameters:

To reference a checkpointing environment from the queue, select the name of a checkpointing environment from the Available list, and then click the right arrow to add it to the Referenced list.

To remove a checkpointing environment from the Referenced list, select it, and then click the left arrow.

To add or modify checkpointing environments, click the button below the red arrows to open the Checkpointing Configuration dialog box. For more information, see Configuring Checkpointing Environments With QMON.

See the queue_conf(5) man page for detailed information about these parameters.

Configuring Parallel Environments

To configure parallel environments, click the Parallel Environment tab. The Parallel Environment tab is shown in the following figure.

Dialog box titled Modify queue-name. Shows the
Parallel Environment tab with parameters you can set. Shows Ok, Cancel,
Refresh, Help.

You can specify the following parameter:

To reference a parallel environment from the queue, select the name of a parallel environment from the Available PEs list, and then click the right arrow to add it to the Referenced PEs list.

To remove a checkpointing environment from the Referenced PEs list, select it, and then click the left arrow.

To add or modify parallel environments, click the button below the red arrows to open the Parallel Environment Configuration dialog box. For more information, see Configuring Parallel Environments With QMON.

See the queue_conf(5) man page for detailed information about this parameter.

Configuring Load and Suspend Thresholds

To configure load and suspend thresholds, click the Load/Suspend Thresholds tab. The Load/Suspend Thresholds tab is shown in the following figure.

Dialog box titled Modify <queue-name>. Shows
the Load/Suspend Thresholds tab with parameters you can set.

You can specify the following parameters:

See the queue_conf(5) man page for detailed information about these parameters.

Configuring Limits

To configure limits parameters, click the Limits tab. The Limits tab is shown in the following figure.

Dialog box titled Modify <queue-name>. Shows
the Limits tab with parameters you can set. Shows Ok, Cancel, Refresh,
and Help buttons.

You can specify the following parameters:

To change a value of a limit, click the button at the right of the field whose value you want to change. A dialog box appears where you can type either Memory or Time limit values.

Dialog box titled Memory. Shows list of memory
values you can select. Shows Ok, Cancel, and Help buttons.Dialog box titled Time. Shows Day, Hour, Minute,
and Second fields. Shows Ok, Cancel, and Help buttons.

See the queue_conf(5) and the setrlimit(2) man pages for detailed information about limit parameters and their interpretation for different operating system architectures.

Configuring Complex Resource Attributes

To configure resource attributes, click the Complex tab. The Complex tab is shown in the following figure.

Dialog box titled Modify <queue-name>. Shows
Complex tab with parameters you can set. Shows Ok, Cancel, Refresh,
and Help buttons.

You can specify the following parameters:

See the queue_conf(5) page for detailed information about these attributes.

Use the Complex Configuration dialog box to check or modify the current complex configuration before you attach user-defined resource attributes to a queue or before you detach them from a queue. To access the Complex Configuration dialog box, click the Complex Configuration button on the QMON Main Control window. See Figure 3–1 for an example.

Configuring Subordinate Queues

To configure subordinate queues, click the Subordinates tab. The Subordinates tab is shown in the following figure.

Dialog box titled Modify <queue-name>. Shows
Subordinates tab with parameters you can set. Shows Ok, Cancel, Refresh,
and Help buttons.

Use the subordinate queue facility to implement high priority and low priority queues as well as standalone queues.

You can specify the following parameters:

See the queue_conf(5) man page for detailed information about these parameters.

Configuring User Access Parameters

To configure user access parameters, click the User Access tab. The User Access tab is shown in the following figure.

Dialog box titled Modify <queue-name>. Shows
User Access tab with parameters you can set. Shows Ok, Cancel, Refresh,
and Help buttons.

You can specify the following parameters:

To add or modify user access lists, click the button between the Available Access Lists and the Allow Access and Deny Access lists to open the User Configuration dialog box. For more information, see Configuring User Access Lists With QMON.

See the queue_conf(5) man page for detailed information about these parameters.

Configuring Project Access Parameters

To configure project access parameters, click the Project Access tab. The Project Access tab is shown in the following figure.

Dialog box titled Modify <queue-name>. Shows
Project Access tab with parameters you can set. Shows Ok, Cancel,
Refresh, and Help buttons.

You can specify the following parameters:

To add or modify project access, click the button between the Available Projects list and the Allow Project Access and Deny Project Access lists to open the Project Configuration dialog box. For more information, see Defining Projects With QMON.

See the queue_conf(5) man page for detailed information about these parameters.

Configuring Owners Parameters

To configure owners parameters, click the Owners tab. The Owners tab is shown in the following figure.

Dialog box titled Modify <queue-name>. Shows
Owners tab with parameters you can set. Shows Ok, Cancel, Refresh,
and Help buttons.

You can specify the following parameters:

See the queue_conf(5) man page for detailed information about these parameters.

Configuring Queues From the Command Line

To configure queues from the command line, type the following command with the appropriate options:


# qconf options

The qconf command has the following options:

The qconf command provides the following set of options that you can use to change specific queue attributes:

-aattr – Add attributes

-Aattr – Add attributes from a file

-dattr – Delete attributes

-Dattr – Delete attributes listed in a file

-mattr – Modify attributes

-Mattr – Modify attributes from a file

-rattr – Replace attributes

-Rattr – Replace attributes from a file

-sobjl – Show list of configuration objects

For a description of how to use these options and for some examples of their use, see Using Files to Modify Queues, Hosts, and Environments. For detailed information about these options, see the qconf(1) man page.