Workload Manager API

Applications can use the WLM APIs, a set of routines in the /usr/lib/libwlm.a library, to perform all the tasks that a WLM administrator can perform using the WLM command-line interface.

These include:

  • Create, modify, or delete classes
  • Change class attributes or resource shares and limits
  • Removing classes
  • Manually assign processes to classes
  • Retrieving WLM statistics

The API allows applications to set an application-defined classification attribute called a tag. Setting this tag using a set of values provided by the system administrator (through the application user documentation) allows discrimination between several instances of the same application. The different classes can therefore be classified with different resource entitlements.

In addition, the wlm_set_tag routine allows an application to set up an application tag and specify whether this tag should be inherited by child processes at fork or exec. Threads can also be assigned application tags with the wlm_set_thread tag. A thread's application tag can be inherited across the fork, exec or pthread_create subroutines. The library provides support for multi-threaded 32-bit or 64-bit applications.