2 Understanding how PRM manages resources

This chapter explains how PRM performs resource management. The following topics are covered:

“How PRM controls resources” (page 17)“How PRM manages CPU resources” (page 22)“How PRM manages real memory resources” (page 26)“How resource allocations interact” (page 31)“How PRM manages applications” (page 31)

NOTE:

PRM does not support disk bandwidth control on VxFS. The reason for this limitation is that VxFS does not support the implementation of I/O disk bandwidth that PRM relies on. When HP moved to VERITAS File System 4.1, the daemon invalidated this feature for all the current HP-UX versions.

If PRM is unable to start or run properly due to CPU or memory resources not being available, it cannot manage your system’s resources.

How PRM controls resources

PRM places limits on resource use based on values specified in a configuration file. These values always indicate a minimum amount and in some cases can indicate a maximum amount of a resource.

NOTE: Do not use PRM with gang scheduling, which is the concurrent scheduling of multiple threads from a single process as a group (gang).

PRM groups

PRM groups are integral to how PRM works. These groups are assigned per process and are independent of any other groups, such as user groups that are defined in /etc/group. You assign applications and users to PRM groups. PRM then manages each group’s CPU and real memory resources (private and shared) according to the current configuration. If multiple users or applications within a PRM group are competing for resources, standard HP-UX resource management determines the resource allocation.

There are two types of PRM groups:

FSS PRM groups are the traditional and most commonly used PRM group. These groups have CPU and private memory resources allocated to them using the shares model. (Shared memory is specified in megabytes.) FSS PRM groups use the Fair Share Scheduler in the HP-UX kernel within the system’s default processor set (PSET).

PSET PRM groups are the second type of PRM group. In PSET PRM groups, the CPU entitlement is specified by assigning them a subset of the system’s cores—instead of using the shares model. (A core is the actual data-processing engine within a processor. A single processor might have multiple cores. A core might support multiple execution threads, as explained in the section “Hyper-Threading” (page 25) ) The private memory allocation is still specified in shares and shared memory is still in megabytes. Processes in a PSET PRM group have equal access to CPU cycles through the HP-UX time-share scheduler.

Because resource management is performed on a group level, individual users or applications may not get the resources required in a group consisting of many users or applications. In such cases, reduce the number of users and applications in the group or create a group specifically for the resource-intensive user or application.

How PRM controls resources 17