[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]

System Management Guide: Operating System and Devices

Starting WLM

WLM is an optional service and must be started manually or automatically from /etc/inittab. The wlmcntrl command allows you to start and stop WLM.

All processes existing in the system before WLM is started are classified according to the newly loaded assignment rules, and are monitored by WLM.

Monitoring and Regulating Resource Allocation

WLM monitors and regulates the resource consumption at the class level. This means that WLM deals with the sum of the resources used by every process in the class.

Optionally, WLM can be started in a mode where it classifies new and existing processes and monitors the resource usage of the various classes, without attempting to regulate this usage. This mode is called the passive mode. The mode where WLM is fully enabled and does monitoring and regulation of resource utilization is called the active mode. The passive mode can be used when configuring WLM on a new system to verify the classification and assignment rules, and to establish a base line of resource utilization for the various classes when WLM does not regulate the CPU and memory allocation. This should give a basis for system administrators to decide how to apply the resource shares and resource limits (if needed) to favor critical applications and restrict less important work in order to meet their business goals.

In active mode, WLM attempts to keep active classes close to their targets. Since there are few constraints on the values of the various limits (as mentioned in Managing Resources with WLM in AIX 5L Version 5.1 System Management Concepts: Operating System and Devices), the sum of any of the limits across all classes could far exceed 100%. In this case, if all of the classes are active, the limit cannot be reached by all classes. WLM regulates the CPU consumption by adjusting the scheduling priorities of the threads in the system according to how the class they belong to is performing, relative to its limits and target. This approach guarantees a CPU consumption averaged on a certain period of time, not the CPU consumption on very short intervals (for example, 10 ms ticks).

For example, if class A is the only one active, with a CPU minimum of 0% and a CPU target of 60 shares, then it gets 100% of the CPU. If class B, with a CPU minimum limit of 0% and a CPU target of 40 shares, becomes active, then class A's CPU utilization progressively decreases to 60% and class B's CPU utilization increases from 0 to 40%. The system stabilizes at 60% and 40% CPU utilization, respectively, in a matter of seconds.

This example supposes that there is no memory contention between the classes. Under regular working conditions, the limits you set for CPU and memory are interdependent. For example, a class may be unable to reach its target or even its minimum CPU allocation if the maximum limit on its memory usage is too low compared to its working set. Processes in the class wait to begin.

To help refine the class definition and class limits for a given set of applications, WLM provides the wlmstat reporting tool, which shows the amount of resource currently being used by each class. A graphical display tool, wlmmon, is also provided for system monitoring.

[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]